CGM(またはインタラクティブWebCGM)ファイルを直接書き込むコードがあります。すべてのCGMプリミティブを完全に制御し、必要に応じてバージョン1、3、または4のファイルを生成できます。一般に、私たちが作成するCGMは、さまざまな業界標準のレンダラー(MetaWeb、SDI、ISoViewなど)で完全にレンダリングします。これらのレンダラーを使用すると、問題なく拡大縮小、パン、ズームできます。
残念ながら、エンドユーザーが同じファイルをFramemaker(バージョン10)にインポートすると問題が発生します。初期インポート後のCGMファイルの表示は正しいです。ただし、ユーザーがページ内のCGMダイアグラムを拡大または縮小することを選択した場合、次のことがわかります。
1)縮小時-テキストフォントが(予想どおりに)比例して縮小されるだけでなく、文字間隔(CGMクラス5、要素13)および文字拡張係数(クラス5、要素12)も縮小されます。全体的に、テキストは水平方向の方向に比例して縮小します
2)拡張時(テキストフォント、文字間隔、文字拡張係数の3つすべてが増加)、元々グラフィックボックス内に閉じ込められていたテキストが、右側の余白を大幅に超えて拡張されるようになりました。
これはFramemakerのバグのようです。ただし、エンドユーザーには、正しくスケーリングされるサードパーティによって生成されたファイルもあります。これらのファイルの機能をコピーしました-特に設定:
version to: '1'
scaling mode to: ABSTRACT
scale to 0
using Text(class 4, element 4) in place of Restricted Text (class 4, element 5).
また、文字間隔と文字拡張係数(つまり、1、0、0.01)のさまざまな値を試しましたが、成功しませんでした。不思議なことに、これらの要素の両方について、元のファイルには、16進数0x00 0x000x000x40である値「9.0E-44」が含まれています。これは「秘密のフラグ値」のように見えますが、私たち自身のファイルでそれを使用しても効果がないようです。
このフラグ値の重要性とその使用方法を知っている人はいますか?