到目前为止,这是我的代码
ImageLoader saver = new ImageLoader();
saver.data = new ImageData[]
{ toSave.getImageData() };
saver.save(fileName, SWT.IMAGE_PNG);
toSave
是使用程序中透明的SWTResourceManager
加载的图像。 fileName
是一个字符串,表示我要将图像保存到的文件(以.png结尾)
结果是一张黑色背景的图像,而不是我想要的透明背景。如何使背景透明?我认为这与透明蒙版有关,但我可能错了。
提前致谢!
答案 0 :(得分:2)
SWTResourceManager
似乎导致了您的问题。我不建议使用它。
试试这段代码,它对我有用:
Display d = Display.getDefault();
Image image = new Image(d, "/pictures/Llama.gif");
ImageLoader saver = new ImageLoader();
saver.data = new ImageData[] { image.getImageData() };
saver.save("output.png", SWT.IMAGE_PNG);
image.dispose();
请记住在您不再需要时处置Image
。