问题描述
|
我正在Eclipse中开发一个插件,该插件以scrolledComposite显示结果。该组合包含一个JFace TreeViewer。我想将此TreeViewer打印到打印机。我发现导入org.eclipse.swt.printing.Printer;打印到打印机。
但是当我使用以下代码片段打印时
GC gc =新的GC(打印机);
控制abc [] = Composite.getChildren();
abc [0] .print(gc);
我要打印的树包含工作区,项目浏览器。
打印输出仅显示图标。它没有显示类,方法的名称。
我无法发布屏幕截图,直到我的声誉达到10以上。
如果我不清楚,请告诉我。
提前致谢
拉梅什·埃曼迪
解决方法
Tree myWidget = treeViewer.getTree();
Point size = myWidget.getSize();
Image image = new Image(display,size.x,size.y);
GC gc = new GC(myWidget);
gc.copyArea(image,0);
gc.dispose();
// Get the ImageData and create a new printer Image from it
ImageData imageData = image.getImageData();
Image printImage = new Image(printer,imageData);
http://www.eclipse.org/swt/faq.php#noprintimage