Как напечатать JFace TreeViewer на принтере - PullRequest
0 голосов
/ 28 мая 2011

Я разрабатываю плагин в Eclipse, который показывает результаты в scrolledComposite.Композит содержит JFace TreeViewer.Я хочу напечатать этот TreeViewer на принтер.Я нашел import org.eclipse.swt.printing.Printer;для печати на принтере.

Но когда я печатаю, используя следующий фрагмент

GC gc= new GC(printer);
Control abc[] = Composite.getChildren();
abc[0].print(gc);

Дерево, которое я хочу распечатать, содержит рабочую область, проводник проекта.В выводе на печать отображаются только значки.он не отображает имена классов, методов.

Я не могу опубликовать скриншот, пока моя репутация не превысит 10. Проверьте его здесь

Пожалуйста, дайте мне знать, если яне понятно ..

Заранее спасибо

Рамеш Эманди

1 Ответ

0 голосов
/ 25 ноября 2011
        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, 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
...