2012-03-14 38 views
0

我制作了一个包含draw2d折线和一些其他图形(如圆形椭圆等)的draw2d图层的swt.graphics.Image对象。我从该Image对象制作了一个jpeg文件,椭圆,圆等,但没有使用draw2d多段线(连接箭头,PolygonShapes等)绘制的图形存在于最终的jpeg文件中。我想要多线也被绘制并在最终的jpeg文件中可见。任何想法我可以做到这一点?我曾尝试将该图层放入外壳中。但是我必须使用shell.open()来显示(我不应该这样做)shell,只有在最终的jpeg文件中可见多段线形状。我猜shell.open()强制绘图的壳及其子(层,多段线等)。是否有任何解决方法不显示外壳,但强制图层上的图形多段线?从包含折线的图层创建图像

感谢和问候 巴拉斯

+0

你究竟如何创建图像?您的联系可能与您的其他数字不同。你确定你正在绘制两层(或者他们的共同父母)? – p12t 2012-03-21 08:27:59

+0

圆形和椭圆在图上,它保存在一个图层中。多段线保留在不同的图上,该图也保存在同一图层中。正如你所提到的,可能只有顶部的图形被绘制,而其余的则不是。只有一个图层,我将这个图层放置在一个FigureCanvas中。我不打一个明确的抽签或任何类型的东西。 – barry 2012-03-22 05:27:38

回答

0

我得到了这个解决方案。我在图层上调用了validate()。以前我在Layer上存在的FigureCanvas上调用redraw(),Layout()等,但没有任何变化。现在调用图层上的validate()后,它似乎工作。