Index > 構造化FrameMaker グラフィックを取り扱う方法
Thu, January 29, 2009

構造化FrameMaker グラフィックを取り扱う方法

構造化FrameMakerでグラフィック(イメージ)を扱う方法。難しくはないがひどく手順が面倒ではある。

設定手順

既存のアプリケーションでイメージを扱えるようにするための手順・・・

  1. イメージを扱うエレメント名を決める → ここではHTMLにならって img とする
  2. EDDの編集
  3. EDDからDTDの書き出し
    • 書き出したDTDはアプリケーションで定義しているDTDファイルに上書き
  4. EDDをテンプレート(template.fm)に読み込み
  5. アプリケーション定義の追加
  6. XML文書(インスタンス)の読み込み

EDDの編集1) img エレメントを新規追加

EDD文書

EDD(StructureView)

EDDの編集2) img エレメントを配置する親エレメントの設定

ここでは para エレメント内にインライングラフィックスとして出現させます。 EDDの記述は以下のようになります。

Element(Container): para
    General rule: (<TEXT>|img)* 

rules ファイルの用意

FrameMakerがXMLを開いたときに イメージとして処理する要素はどれか を判断するために ReadWriteRules(読み書きルール)を設定しておく必要があります。

※ここでは関係ありませんが、イメージ以外の要素では、テーブルの処理も読み書きルールで解決するようです。

fm version is "7.2";

element "img"
{
  is fm graphic element;
  writer facet default specify size in pt;
  attribute "src" is fm property file;
  attribute "dpi" is fm property dpi;
  attribute "align"
  {
    is fm property alignment;
    value "left" is fm property value align left;
    value "middle" is fm property value align center;
    value "right" is fm property value align right;
    value "top" is fm property value top;
    value "bottom" is fm property value bottom;
  }
}

アプリケーション定義ファイルにReadWriteRulesを追記

該当アプリケーションにReadWriteRulesを追加し、先ほどの rules ファイルへのパスを指定します。

XML文書(インスタンス)の読み込み

以下のようにXML文書中に img エレメントを挿入します。

<para><img src="test.svg" /></para>

FrameMakerで開くと・・・

 Twitter
follow me on Twitter
 Categories