106.47 Pngcairo

出力形式 pngcairo は、PNG 出力を生成します。実際の描画は、2D グラフ ィックライブラリである cairo と、文字列の配置とレンダリング用のライブ ラリ pango を経由して行われます。

書式:

       set term pngcairo
                    {{no}enhanced} {mono|color}
                    {{no}transparent} {{no}crop} {background <rgbcolor>
                    {font <font>} {fontscale <scale>}
                    {linewidth <lw>} {rounded|butt|square} {dashlength <dl>}
                    {pointscale <ps>}
                    {size <XX>{unit},<YY>{unit}}

この出力形式は、拡張文字列処理モード (enhanced text mode) をサポートし ていて、フォントや書式コマンド (上付、下付など) をラベルや他の文字列に 埋め込むことができます。拡張文字列処理モードの書式は他の gnuplot の出 力形式と共通です。詳細は、以下参照: enhanced (14)

描画における全ての線の幅は、因子 <lw> で変更できます。

rounded は、線の端や接合部を丸くします。 デフォルトの butt は尖った端と角張った接合部を使用します。

PNG 出力のデフォルトのサイズは、640 x 480 ピクセルです。オプション size は、これをユーザの指定するものへ変更します。デフォルトの X, Y サイズの単位はピクセルですが、他の単位も使用可能です (現在は cm とイン チ)。サイズを cm かインチで与えるとそれは、解像度 72 dpi でのピクセル 数に変換されます。size オプションで指定されたことによる描画の端から 端までの領域は、常にスクリーン座標の 0.0 から 1.0 に対応します。

<font> は、"FontFace,FontSize" の書式、つまりフォント名とサイズをカ ンマで区切った一つの文字列として表記します。FontFace は、'Arial' の ような通常のフォント名です。フォント名を与えない場合、pngcairo 出力形 式では'Sans' が使用されます。FontSize はポイント単位でのフォントサイ ズです。指定しない場合は、pngcairo 出力形式では 12 ポイントのサイズが 使用されます。

  例 :
     set term pngcairo font "Arial,12"
     set term pngcairo font "Arial" # フォント名のみ変更
     set term pngcairo font ",12" # フォントサイズのみ変更
     set term pngcairo font "" # フォント名とサイズをリセット

フォントは、通常のフォント処理機構により取得されます。Windows では、フ ォントはコントロールパネルの "フォント" の項目で構成され見つけられる もので、UNIX では、フォントは "fontconfig" で処理されます。

文字列のレイアウトに使用されるライブラリ Pango は、utf-8 に基づいてい ますので、pngcairo 出力形式では、文字コードを utf-8 に変換する必要があ ります。デフォルトの入力文字コードは、あなたが使用している 'locale' に基づきます。他の文字コードにしたい場合は、あなたがどの文字コードを使 っているのかを確実に gnuplot がわかるようにしてください。詳細について は、以下参照: encoding (95.23)

pango は、unicode マッピングでないフォントに対しては予期せぬ結果を与え るかもしれません。例えば Symbol フォントに対しては、pngcairo 出力形式 は、文字コードを unicode に変換するために http://www.unicode.org/ で提 供されるマッピングを利用します。なお、"the Symbol font" は、Acrobat Reader と一緒に "SY______.PFB" として配布されている Adobe Symbol フ ォントであると解釈されることに注意してください。この代わりに、 OpenOffice.org と一緒に "opens___.ttf" として配布される OpenSymbol フォントが同じ文字を提供しています。Microsoft も Symbol フォント ("symbol.ttf") を配布していますが、これは異なる文字セットになってい て、いくつかは欠けていますし、いくつかは数式記号に変わってしまっていま す。あなたのデフォルトの設定でなんらかの問題が起きた場合 (例えばデモス クリプト enhancedtext.dem がちゃんと表示されないといった場合) は、 Adobe か OpenOffice の Symbol フォントをインストールして、Microsoft の Symbol フォントを削除しないといけないかもしれません。

レンダリングは、cairo と pango ライブラリがサポートする範囲内で、オーバ ーサンプリングとアンチエイリアス、フォントのヒンティングを行います。

竹野茂治@新潟工科大学
2019-01-08