GraphViz:UTF-8と外部PostScriptプログラムを入手するには?

GraphViz:UTF-8と外部PostScriptプログラムを入手するには?

ターゲット:Latin1以外のシンボルを含むフローチャートを描画します。

質問:GraphVizは、フローチャートを描画するために必要なすべてのノード形状(「文書」、「定義済みプロセス」など)を提供しません。幸いなことに、Jason Brazileという人が1つを作りました。良い図書館形がありません。ただし、PostScriptドライバ(dot -Tps)を使用している場合にのみ機能します。

GraphVizには2つの基本的なPostScriptドライバがあります。 1つはUnicodeをサポートしていない組み込みドライバ、もう1つはUnicodeをサポートしていますが、外部のPostScriptプログラムをサポートしていないようです(結果レイアウトにはカスタムPSの外観はありません)。 。

質問: UTF-8 タグの使い方そしてフローチャート図形を同時に描きますか?

ベストアンサー1

私はGraphViz開発者にこれについて尋ねましたが、答えはこれを行う方法がないようです。

私たちは数年前にこの問題を研究しました。デフォルトの graphviz-Tps Postscript ドライバにはカスタムフォントローディング機能はありません。ここで述べたように: http://tldp.org/HOWTO/Unicode-HOWTO-5.html
Postscriptでutf-8フォントをレンダリングするのは自分でできることです。この操作には数週間または数ヶ月かかる場合がありますが、graphviz でこれらの修正を試みる場合は、このサイトで説明されている他のツールのいずれかから適切なコードを入手できます。 (GPL以外のコードであることを確認してください。そうしないと配布できません!)

別のオプションは、ユーザーシェイプが読み込まれた後にユーザーシェイプの上にテキストをレンダリングするようにcairopangoドライバを変更することです。 (私たちはすでにこれをサポートしていませんか?当然のようです。)その後、外部のgraphviz PSシェイプをレンダリングする方法を見つけて、レンダリングされた画像をcairopangoキャンバスにコピーします(ねえ、私たちはすでにGhostscriptをgraphvizにインポートしました)または、cairopangoドライバーが読み込むことができる画像に外観のカスタムPSを変換します。時間がかからないかもしれません。

どちらにしてもプロのCプログラマーが必要です。

おそらく、私たちの誰もこれを行うには時間がかかりません。 (私たちの時間は、より一般的な方法でプロジェクトを支援するための資金を集めるために使用する方が良いでしょう。しかし、今は私たち全員が別のことをしています。) 、何が起こるのか見てください。

おすすめ記事