4D v19 R8 で導入された テキストボックス を使って、テキスト・表組み・画像・フォーミュラ・その他の要素を Write Pro ドキュメントの任意の場所に挿入することができます。この機能は、v20 で拡張され、docx から、または docx にこれらの要素をインポートおよびエクスポートする機能が追加されました。
さらに、他のエクスポート先の場合でも使える新しいエクスポートオプションが追加されました!
HDI: 4D Write Pro: テキストボックスの docx読み込み/書き出し
読み込み
4D Write Pro がテキストボックスをサポートする以前は、docx のテキストボックスをどのようにインポートするかを定義することが可能でした。デフォルトでは、テキストボックスのコンテンツは “インラインテキスト” として読み込まれ、書式は失われましたが、少なくともコンテンツは保持されました。
朗報です: 新しいオプション “anchored” のおかげで、インポート時にテキストボックスをそのまま読み込めるようになりました! 今後はこのオプションがデフォルトになります。
// 下の設定では、テキストボックスはインポートされません
$options.anchoredTextAreas:="ignore"
// 下の設定では、テキストボックスの中身がインラインテキストとしてインポートされます
// 4D v20 以前はこれがデフォルトでした
$options.anchoredTextAreas:="inline"
// 4D v20 以降、テキストボックスを "そのまま" インポートできる設定が追加されました
// 注記: これが新しいデフォルト値になります!
$options.anchoredTextAreas:="anchored" // テキストボックスはテキストボックスとしてインポートされます
WParea2:=WP Import document($file.platformPath; $options)
書き出し
ドキュメントで使用される背景色や背景画像と同様に、テキストボックスも背景の一部とみなされます。なんらかの理由で、4D Write Pro ドキュメントをテキストボックスなしでエクスポートする必要がある場合には、エクスポート時に背景を無視すればいいのです。
これは、プログラミングによって可能です:
$options[wk visible background and anchored elements]:=false
WP EXPORT DOCUMENT(WParea; $path; wk docx; $options)
また、インターフェースからも可能です:
まとめ
今回紹介した機能により、より見栄えのするドキュメントの作成と、docx とのインポート/エクスポートの互換性が実現しました。ぜひ 4Dフォーラムにてご意見をお聞かせください!