我有一个photoshop文件,我希望能够用java程序更改2个文本值。用文本编辑器打开PSD我可以找到我想要更改的文本。 LayerText Eighty, LayerText Nine 出于隐私原因,我用蓝色隐藏了一些内容。如果我使用exiftool gui,我会看到[this] [2]。所以我认为它是在TextLayerText下。在Photoshop中,它们是[文本层]。[3]我做了一些研究,并在apache公共场所听说过Sanselan。我可以找到我在[文本编辑器] [4]中找到的相同代码。
File imageFile = new File(fileField.getText());
File outputFile = new File(fileField.getText().split("\\.")[0] + ".png");
BufferedImage image = Sanselan.getBufferedImage(imageFile);
logArea.append("--- XMP Metadata ----\n");
logArea.append(Sanselan.getXmpXml(imageFile));
Map params = new HashMap();
params.put("TextLayerText", "");
Sanselan.writeImage(image, outputFile, ImageFormat.IMAGE_FORMAT_PNG, params);
这是我目前的代码。它首先声明输入2个文件,输出第2个。它获取XMP并将其打印出来。我创建了一个params Map,但我的错误是。
org.apache.sanselan.ImageWriteException: Unknown parameter: TextLayerText
此程序的目标是修改2个文本图层并从中渲染png。如果我将params留空,它会呈现png文件,我可以使用Sanselan.getXmpXml读取参数。我正在努力寻找改变它们的方法。我把所有图片in one都放了,因为我的声誉我不能发布超过2个链接。