other development

OfficeLSTools – Officeアドイン開発 [専用ボタンの定義]

前回は専用タブの定義を行いましたので、今回は専用ボタンの定義を行いたいと思います。

ボタンの追加ですね。
OfficeLSToolsにあるスライド挿入の表紙スライド、章スライド、ページスライドのボタンを配置してみたいと思います。
ページスライドのボタンはプルダウンなので、プルダウン表示については追って確認してみたいと思います。

タブが設定できましたので、まずタブ内にグループを設定します。
今回はOfficeLSToolsでいうところの「スライドを挿入」のグループを設定します。

CustomTab要素の下にGroup要素を指定しLabel要素を定義すれば良いようです。

<CustomTab id=”OfficeLSTools”>
 <Group id=”Contoso.Group1″>
  <Label resid=”Contoso.Group1Label” />

設定する文字列はResources要素側で対応するresidとして用意しておけばOKです。

<bt:String id=”Contoso.Group1Label” DefaultValue=”スライドを挿入” />

これでグループが設定できました。次にグループ内にボタンを配置します。
ボタンのアイコンにはPNG画像を利用できるようです。
16、32、80のサイズを用意しておくことが必須となっているようです。
ボタン表示には
上記で作成したGroup要素の子要素としてLabel要素の次にControl要素を定義します。

<Control xsi:type=”Button” id=”Contoso.TaskpaneButton1″>
 <Label resid=”Contoso.TaskpaneButton1.Label” />
 <Supertip>
  <Title resid=”Contoso.TaskpaneButton1.Label” />
  <Description resid=”Contoso.TaskpaneButton.Tooltip” />
 </Supertip>
 <Icon>
<bt:Image size=”16″ resid=”Contoso.cover16″ />
<bt:Image size=”32″ resid=”Contoso.cover32″ />
<bt:Image size=”80″ resid=”Contoso.cover80″ />
 </Icon>
 <Action xsi:type=”ExecuteFunction”>
  <FunctionName>ButtonId1</FunctionName>
 </Action>
</Control>

こんな感じですね。他にもボタンを同じようにControl要素を追記して定義します。
また画像を所定の場所に配置しておく必要もありますね。

Control要素のxsi:type属性にはButtonとMenuが設定できるようです。
Supertip要素はヒント情報
Action要素はクリックされたときに実行される内容になるようです。

こんな感じでボタンが配置できました。

OfficeLSTools – Officeアドイン開発 [専用タブの定義]

弊社で開発したOfficeLSToolsはVSTOを利用したアドインのため、MacやWEB版でも利用可能なOfficeアドインを開発していきたいと考えています。
Officeアドインプラットフォーム(https://docs.microsoft.com/ja-jp/office/dev/add-ins/overview/office-add-ins)を利用して少しずつブログにて情報を展開してみたいと思います。

まずは環境構築です。
https://docs.microsoft.com/ja-jp/office/dev/add-ins/tutorials/powerpoint-tutorial
こちらのページにあるようにVisualStdioを利用してプロジェクトを追加→ビルドまで進めます。

サンプルデータではアドインの表示がホームタブに表示されるようになっているので
HelloWorldプロジェクトのHelloWorld.xmlのOfficeTabをCustomTabに変更しIDを採番し
CustomTabの子要素であるGroup要素の後ろにLabel要素を設定すれば任意のタブ名を
設定できるようです。

<label resid=”Contoso.TabLabel”></label>

こんな感じでLabel要素を定義し
Resources要素内で

<bt:string id=”Contoso.TabLabel” DefaultValue=”OfficeLSTools”></bt:string>

などと定義しておけば任意のタブ名に変更できるようです。
ここではOfficeLSToolsをタブ名にしています。

Officeアドインタブ

これから少しずつ対応していきたいと思います。
どこまで移植できるか…。

OfficeLSTools(PowerPoint/Excelアドイン開発 VSTO)

PowerPoint/Excelのアドイン開発、サービス展開を検討中です。

用意されたテンプレートや設定ファイルがあれば、誰でも一定品質のドキュメントを仕上げることができます。
詳しくはOfficeLSTools紹介ページをご覧ください。紹介ドキュメントや動画などで動作イメージができます。

PowerPointアドインではあらかじめ定義されたページを読み込ませて、部分的なテキストを差し替えるだけで目的の資料を作成できます。また読み込ませたオブジェクトをあらかじめ定義しておきボタン1つで読み込ませることができます。その他企業カラーに合わせた編集がしやすいように支援機能が用意されています。

Excelアドインでも企業カラーに合わせた表レイアウト、グラフレイアウトを実現できます。
他にも便利な機能がありますので一度お試しいただければと思います。

OfficeLSTools

よろしくお願いいたします。

MA-CREATE 佐藤

自然言語処理 janome, word2vec

コンテンツ管理システムにおいて、各種データにメタ情報を設定するのは非常に手のかかることです。
大量のデータを非構造から、構造化データに変換したことによって、大きなメリットがありますが
構造化された各トピックデータに対して適切なメタ情報を設定することはなかなか大変なものです。

janome, mecabといった形態素解析モジュールを利用して文章を解析し、各データにどのような
メタデータを設定するかの候補を自動的に設定する(候補としてあげる)ことができます。

また形態素解析の結果データを管理しておけば、word2vecといったモジュールを利用して
このいわば辞書データを利用し文章や単語の類似語や文章を要約するよな情報を抽出することができます。
単語や文章の類似度なども評価することができます。

蓄積されている大量のデータを利用し、的確な情報管理のために有用なツールとなります。

ご興味のある方はお気軽にご連絡下さい。

Confluenceプラグイン開発

コンテンツコラボレーションツールとして有名なConfluenceのプラグイン開発を経験しました。
非常に拡張性のあるツールなので、スモールスタートから必要に応じたカスタマイズをすることが
可能ですね。
大企業からベンチャー企業に導入されているという意味での安心感と安定感があります。
今後も機会があれば開発をすすめていきたい。

株式会社MA-CREATE 佐藤

Oxygen XML WebApp

  • 21st 1月 2016
  • DITA

ブラウザベースのXML編集に関してはCKEditorやJQueryを利用したモジュールで構築していることが殆どでしたが
oXygen XML WebAppを利用したシステム構築を検討中です。

demo はこちらです。
https://www.oxygenxml.com/webapp-demo-aws/app/oxygen.html

SDKも公開されているので、細かい部分を調整してかなり便利で安定したEditorに仕上げられそうです。
編集中のツリー表示ができればさらに良いのでこのあたりはJQueryを利用してモジュールを組み込みたいですね。

oxygen