バックグラウンド
OpenOffice Writer には、ASCII テキスト ソース ファイルへのリンク、構文の強調表示の適用、フレームでのラップ、およびソース ファイルが変更されるたびにフレームの内容を更新する機能がありません。ただし、OpenOffice Writer は画像にリンクでき、画像が変更されると自動的に画像を更新します。
問題
イメージは高解像度 (300 dpi 以上) で、白い背景 (つまり、印刷ページ) に適したシンタックス カラーリングを使用する必要があります。
質問
次のようなソース コード ファイルから高品質の画像を自動的に作成するにはどうすればよいですか。
- SQL;
- PostgreSQL 関数;
- Java;
- bash スクリプト; と
- RとPL/R?
試み
ほとんどの試みは、次のテーマのバリエーションです。
$ enscript --color -f Courier12 -B -1 --highlight=sql -h -o - source.sql |\
convert - -trim -border 10 source.png
このアプローチにはいくつかの問題があります。
- 解像度が不足しています (使用
-resample
し-density
ても改善されません)。 - 構文の強調表示は、白いページには適していません (おそらく、enscript のカラー テーマが変更される可能性があります)。
- を使用すると
Courier100
複数の.png
ファイルが生成され、それらをつなぎ合わせる必要があります。 -border 10
が予期せず背景色を白からライトグレーに変更します。
手動ソリューション
ソース ファイルを PostScript に変換し (ImageMagick を完全に使用せずに)、それらを GIMP にインポートすると、目的の結果が得られます。残念ながら、その解決策には手作業が少し必要であり、私の GIMP バッチ プログラミングの経験はほとんどありません。