2012-03-15 9 views
2

zest frameworkを使用してネットワークビュー図を作成しました。これはSWTディスプレイ/シェルを使用してUIを表示します。 UIをimage/pdfにエクスポートしたいと思います。 どうすればいいですか?何か案は?Zest:図を図にエクスポート/

+0

http://www.rgagnon.com/javadetails/java-0489.htmlが役立ちますか? – yggdraa

+0

@yggdraa私はZestと仕事をしていません。しかし、すべてがSWTとJFace上に構築されているので、スクリーンショットを撮るだけでなく、より洗練されたエクスポートオプションが得られるはずです。 – phineas

答えて

3

SWT GC.copyArea()メソッドを使用して、コントロールの内容をイメージにコピーし、イメージをファイルに保存できます。たとえば、Zest GraphViewer、ビューアがある場合、次のコードはその内容をout.pngという名前のPNGファイルにコピーします。

GC gc = new GC(viewer.getControl()); 
Rectangle bounds = viewer.getControl().getBounds(); 
Image image = new Image(viewer.getControl().getDisplay(), bounds); 
try { 
    gc.copyArea(image, 0, 0); 
    ImageLoader imageLoader = new ImageLoader(); 
    imageLoader.data = new ImageData[] { image.getImageData() }; 
    imageLoader.save("c:\\out.png", SWT.IMAGE_PNG); 
} finally { 
    image.dispose(); 
    gc.dispose(); 
} 
+0

は、ダイアグラムのサイズが十分な場合には機能しないため、右または下にスクロールする必要があります。この問題の回避策はありますか? –

関連する問題