我使用zest框架创建了一个网络视图图,这使用SWT display/shell来显示UI。我想将UI导出到图像/pdf中。该怎么做呢?有什么想法吗?
发布于 2012-05-24 10:17:53
您可以使用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();
}https://stackoverflow.com/questions/9718446
复制相似问题