グラフのエクスポート

LabTalkから呼ばれる expGraph Xファンクションを使ってグラフをエクスポートする3つのサンプルです。

幅と解像度(DPI)を指定してグラフをエクスポート

expGraph Xファンクションを使うとグラフを画像としてエクスポートできます。 イメージサイズのオプションはtr1というツリー変数のノードに保存され、解像度のオプション(すべてのラスター画像に対して)は、tr2というツリー変数のノードに保存されます。

一般的なアプリケーションは、画像の幅と解像度両方を指定して、希望の画像形式にグラフをエクスポートします。 例えば、グラフを高解像度(1200DPI)の3.2インチ幅の*.tifファイルと指定された2段組の刊行物を考えます。

// アクティブグラフウィンドウをD:\TestImages\TEST.TIFにエクスポート
// 幅 = 3.2インチ, 解像度 = 1200 DPI
 
expGraph type:=tif path:="D:\TestImages" filename:="TEST" 
	 tr1.unit:=0
	 tr1.width:=3.2
	 tr2.tif.dotsperinch:=1200;

tr1.unitの利用可能な値

Note: これは特定の出力タイプを指定するためにツリー構造に保存されているデータにアクセスする良い例です。 tr1の説明は製品のオンラインヘルプにあります。

プロジェクト内のすべてのグラフをエクスポートする

プロジェクト内の指定したすべてのオブジェクトをループする doc -e コマンドexpGraph Xファンクションを組み合わせて使用すれば、Originプロジェクトからすべてのグラフをエクスポートすることができます。

例えば、現在のプロジェクトのすべてのグラフをビットマップ(BMP)にエクスポートするには

doc -e P
{
  // %Hはアクティブウィンドウ名を保持する文字列レジスタ
  expGraph type:=bmp path:="d:\TestImages" filename:=%H 
           tr1.unit:=2  
           tr1.width:=640;
}

doc -e のいくつかのサンプルを見ると オブジェクト間をループしているのが分かります。

パスとファイル名を付けてグラフをエクスポートする

文字列レジスタ, %G と %Xは、現在のプロジェクトファイル名とパスを保持しています。label コマンドと組み合わせて、グラフのエクスポート時にこれらの情報をページ内に配置することができます。例えば、

// プロジェクトのパス
string proPath$ = system.path.program$ + "Samples\Graphing\Multi-Curve Graphs.opj";
// プロジェクトを開く
doc -o %(proPath$);
// グラフにファイルパスと名前を追加
win -a Graph1;
label -s -px 0 0 -n ForPrintOnly \v(%X%G.opj);
// グラフをドライブ Dにエクスポート
expGraph type:=png filename:=%H path:=D:\;
// ファイルパスと名前を削除 
label -r ForPrintOnly;