gpt4 book ai didi

java - Centos 7上使用SWT在图片上绘制文字

转载 作者:行者123 更新时间:2023-11-30 03:12:41 25 4
gpt4 key购买 nike

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 运行它时,它也可以工作。

制作该程序的主要目的是让我可以在我的 Web 应用程序(tomcat、java、jsp、mysql)中使用它,该应用程序现在运行在 Centos 7 云服务器上。尝试运行时出现此错误:

Error I get (image)

我已经下载了 swt-3.6.1-gtk-linux-x86_64 并将其添加到 eclipse 的项目库和构建路径中,但似乎没有修复它。有任何想法吗?我什至可以在没有显卡的虚拟服务器上运行它吗?PS我没有展示我的大部分代码(它可以工作并且不会导致错误),它们只是计算文本将在图片上绘制的位置。

最佳答案

回答我自己的问题。好吧,所以...

1.将此.jar导入到项目的构建路径中:

    org.eclipse.swt.gtk.linux.x86_64-4.3.jar
  • 使用

    yum install xorg-11-server-Xvfb
  • 我启用了虚拟缓冲区的使用来代替图形环境的缺失。

  • 下一步是激活虚拟显示器:

    Xvfb :1 -ac -screen 0 1024x768x8 & export DISPLAY=:1
  • 然后我就可以运行我的可运行 jar 了。

    PS 也许有些事情没有得到最好的解释,但这些是使我能够使用我的应用程序的步骤。

    关于java - Centos 7上使用SWT在图片上绘制文字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33290598/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com