【发布时间】:2015-10-25 04:06:27
【问题描述】:
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.graphics.GC;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.graphics.ImageData;
import org.eclipse.swt.graphics.ImageLoader;
import org.eclipse.swt.widgets.Display;
....
display = new Display();
image = new Image(display, chosenImageFilePath);
gc = new GC(image);
gc.drawText("text to be drawn", 0, 0, SWT.DRAW_TRANSPARENT);
gc.dispose();
ImageLoader loader = new ImageLoader();
loader.data = new ImageData[] { image.getImageData() };
loader.save(destinationImageFilePath, SWT.IMAGE_JPEG);
image.dispose();
display.dispose();
我在图片上画了一些文字,这一切都可以在使用 Eclipse 的 Windows 上运行。当我将其导出为可运行的 jar 并通过 cmd 运行时,它也可以工作。
制作这个程序的主要目的是为了让我可以在我现在在 Centos 7 云服务器上运行的网络应用程序(tomcat、java、jsp、mysql)中使用它。 尝试运行时出现此错误:
我已经下载了 swt-3.6.1-gtk-linux-x86_64 并将其添加到 eclipse 的项目库和构建路径中,但它似乎没有修复它。 有任何想法吗?我什至可以在没有显卡的虚拟服务器上运行它吗? PS 我没有展示我的大部分代码(它有效且不会导致错误),它只是计算文本将在图片上绘制的位置。
【问题讨论】: