DITA

FrameMaker2019

  • 5th 10月 2018
  • DITA

FrameMaker2019がリリースされましたね。
https://www.adobe.com/jp/products/framemaker/features.html

今までも64bit環境で動作していましたが、内部的な処理をすべて64bit対応したことで
かなりスピードアップしているようです。参照画像などによりパフォーマンスは
異なると思いますが、1000ページ単位のデータでも2,3分でPDFに変換できるとのこと。
「PDFやResponsive HTML5のパブリッシュ速度が最大65%向上します。」
要チェックですね。

MA-CREATE 佐藤

DITAデータを Congility – IdXMLを利用したInDesign自動組版

  • 5th 7月 2018
  • DITA

Congility社のIdXMLを利用したInDesign自動組版を手がけました。
DITAはOxygenを利用して生成されます。

このDITAデータを入力データとしてIdXMLで変換を掛けます。
IdXML(http://congility.com/idxml/)ではかなり幅広い設定があり、
InDesignへの入力データとして適切な形へと変換してくれます。

今回はIdXMLを一部カスタマイズしましたが、なるだけカスタマイズしないで
IdXMLの仕様に細々合わせていくことで、余計な工数を削減し
シンプルなXMLファイルへと変換できると感じます。

今回は、IdXMLの処理直前にXSLT変換、処理後にもXSLT変換させて
InDesignのプラグインへと連携させました。

ditamap内データのエレメントデータについて

  • 3rd 3月 2016
  • DITA

FrameMakerを利用したDITA案件が増えてきている。
1点今後のためにメモ。

ditamap内に定義される各種データに、2バイト文字が利用されることがある。
メタ情報の設定場所なので多々でてくる。

ditamapのデータは他のFMデータと同じようにしてテキストデータを取得できるのだが
ditamapデータはFMに投げ込まれた時にテンプレートとEDDが紐付いていることを
忘れてはならない。

ある要素の内容についてF_ApiGetTextなどを利用して取得するのだが
ditamap用のテンプレートで各要素に設定されているフォントが
2バイト文字に対応していない場合、プログラム側でどうやって
処理しようとしても必ず文字化けとなってしまい正しい値を取得できない・・・。
また、取得できたとしてもEDD側で要素に対してPrefixが設定されている場合
予定なテキストデータまでくっついて取得できてしまう。

ditamapに定義されているデータを表紙などに利用しようとする場合に
ditamapにはテンプレートとEDDが強く関連していることを念頭に
おいておかなければならない。
単なる各種ditaデータへのパスが定義されているMAPデータではないということ

FDK Reference … dita

  • 10th 2月 2016
  • DITA

FrameMaker12 以降 ditaという点ではかなり頑張ってきたFrameMaker
カスタマイズ用にFDKも公開されており活用させていただいています。

が…マニュアルが英語なのは仕方がないと思っていますが
dita関連のメソッドやプロパティなど利用できるのであれば
FDK Referenceにはしっかりと記述して欲しいものです。

いくつかのプロパティやメソッドはReferenceには書かれていないものの
実際にはAPIが用意されていました…。

Adobeさんにはドキュメント類のアップデートもお願いしたいと思います。

FrameMaker DITA 表の列幅

  • 2nd 2月 2016
  • DITA

FrameMakerで用意されているDITA用構造化アプリケーションだが、
FMファイル上で指定した表幅をそのまま維持したい場合、つまり
表列幅の実サイズをdita、XMLに書き出したい場合は
デフォルトで用意されている構造化アプリケーションのRWルールを
書き換える必要がある。

Rwルールファイルの最後の方に以下の一文があるので
これをコメントアウトする。

writer use proportional width;

これをコメントアウトすることで
tgroup要素直下のcolspec要素のcolwidth属性の属性値に
実サイズがインチで出力される。

※ インチ以外の出力は無理…。

デフォルトの場合は表幅に対する比率がcolwidth属性に指定されることになっている。
pgwide属性を利用することが想定されているということ。

2016.02.02 追記

dita側でcolspec要素を設定して各列の幅を指定するも、テンプレートに充てて構造化データとしてレイアウトされると
colspec要素が邪魔となって表のレイアウトが崩れてしまう…。RWルールでcolspecをdropするとエラーも崩れもなく
表レイアウトされるが、幅の指定がpgwide頼みとなってしまい列幅が均等になってしまう…。解決先を模索中…。

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

FrameMaker12 目次項目に文字書式が適用されているとリンクしない

  • 3rd 2月 2015
  • DITA

DITAデータを統合文書としてFM文書へとコンバートしFrameMakerの目次作成機能を利用して目次を作成している。

目次項目のレイアウトはFrameMakerのリファレンスページに設定した内容に基づいて出力される。
目次項目のページ番号が表示される部分にのみ文字書式を設定してある場合、PDFを生成した際に
文字書式が設定されている部分にはリンクが設定されない。

今回の場合はページ番号部に設定したいてため、目次内容(目次テキスト部)にはリンクが設定
されているものの、ページ番号部分にはリンクが設定されないという状況が生じた。

重篤な問題のため早期解決をお願いしたい所…。

WS000158

※ 上記の図でおわかりになるとおり、枠線がない部分はクリックしてもリンクが効かないという状況

DITAで運用した際に、目次項目テキストにkeywordなどのタグが設定される可能性がある。
FrameMakerの標準仕様ではDITAのkeywordタグには自動的に文字書式が設定される。
この場合も文字書式が設定されるためPDFではリンクが設定されない。

ditamapからFrameMaker統合文書作成時の注意

  • 21st 1月 2015
  • DITA

FrameMakerにてDITAを運用する中で、ditamapファイルから統合文書を作成する場合がある。

この場合、FrameMakerではcompositeつまり統合文書等の構造化アプリケーションに設定された
テンプレートが利用される仕組みになっている。

このditamapから統合文書変換時にテンプレートは正しく適用されるが、
RWルールは適用されない。また統合文書用のテンプレートがconceptや
topic,taskなどが利用していたテンプレートとカラー定義やコンディショナルの
設定が異なる場合にすべてエラーとして認識しブックエラーが多数出力される。

ある程度の大きさのditamapを統合文書に変換する際にはエラーの出現により
数十分間作業ができなくなることがあるので注意が必要。
また、ditamapを統合文書に変換する際にはすべての構造化アプリケーションの
適用がされるよう改善されることを望みたい。(主にRWルールの適用)

DITA-FrameMaker統合文書

  • 9th 1月 2015
  • DITA

ditaデータにおいて以下のような構造を持つ部分があるとする。
(DITAスキーマ的にはなんら問題はない記述)

 <fig>
   ∟<title>fig 1.1 title text</title>
   ∟<image />

 
このような構造を持つditaをFrameMaker統合文書として
保存するとなぜか以下のように構造変換されてしまう。

 <fig>
   ∟<image />
   ∟<fm-figtitle>fig 1.1 title text</fm-figtitle>

 
このように統合文書ではFMの各種機能を利用できるようにするために
FM側で勝手に構造変換してしまう部分がある。
相互参照やIndexなどFMマーカなどを利用して実現する部分で
このような仕様が存在するようである。
HELPや資料に書いてあることとないことがあるために非常に困ってしまう。
(EDDやその他の設定ファイルにも変換定義がされていない)

fig直下title要素は利用しないこととして、image要素の後ろに
desc要素で画像の説明書きをするように元となるditaデータを調整したいと思う。

ここから、2015/1/9 追記です。

上記の件ですが、以下のようにすれば勝ってにtitle要素がfm-figtitle要素に変換されることなく
統合文書を作成できました。


 <fig>
   ∟<title>fig 1.1 title text</title>
   ∟<desc>fig 1.1 desc text</desc>
   ∟<image />

title要素とimage要素の間にdesc要素を挿入すると、このままの構造で
統合文書が生成されました。

DITAToo – Review no.4 [データ投入]

  • 11th 12月 2014
  • DITA

map,ditaをアップロードするにはいくつかの方法がある。

手動でアップロード

Repository内のアップロードしたいフォルダを選択して、
DitaTooAuthorのメニュー [File] – [Upload]から[Files…]か[Projects…]をクリックし、
アップロードしたいデータを選択しアップロードする方法。

WS000109

FrameMakerと連携

FrameMakerの標準メニューにある[CMS] – [接続マネージャ] をクリックし必要な情報を設定する。
正しい設定がされるとレポジトリポッドが表示される。

WS000107

WS000108

いずれかの方法でフォルダにアップロードできたら
DitaTooAuthor,FrameMakerから文書をmapに関連づける。
下記の画面参照

WS000112

アップロードされたデータは、DitaTooAutohr上でも配置を編集できる。
勿論、FrameMaker上でmapを編集することも可能

WS000113

Windows上のDitaToo WorkSpace

このようにしてアップされた各データはDitaTooインストール時に設定したWorkSpace上にファイルとして配置されている。
repositoryの階層情報がすべてそのままWorkSpaceフォルダに展開されている。

※ 今日はここまで

次回はアップされたmapとditaデータの関連付けと、履歴管理について考察してみる。