Adobe 流行的 Photoshop 應用程序使用 PSD(Photoshop 文檔)作為原生圖像文件格式。 PSD 文件可能包含多個圖層,用於創建徽標、小冊子和其他圖像。在某些情況下,我們可能需要以編程方式操作 PSD 文件。在本文中,我們將學習如何使用 Java 向 PSD 添加新層。
本文應涵蓋以下主題:
用於添加新圖層的 Java PSD API
為了在 PSD 文件中創建新層,我們將使用 Aspose.PSD for Java API。它支持創建、編輯或操作 PSD 和其他幾種支持的文件格式。
API 的 PsdImage 類支持加載、編輯和保存 PSD 文件。它還提供更新屬性、添加水印、執行圖形操作或將一種文件格式轉換為另一種文件格式的功能。
PsdImage.AddRegularLayer 方法允許添加新的常規圖層。 PsdImage 類的 AddTextLayer(string, Rectangle) 方法向 PSD 添加了一個新的文本層。
請下載 API 的 JAR 或在基於 Maven 的 Java 應用程序中添加以下 pom.xml 配置。
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-psd</artifactId>
<version>21.7</version>
</dependency>
使用 Java 向 PSD 添加新層
我們可以按照以下步驟向 PSD 文件添加新圖層:
- 首先,使用 Image 類將 PSD 文件加載為 PsdImage。
- 接下來,準備要添加的對象,例如矩形。
- 然後,調用 addRegularLayer() 方法。
- 或者,設置圖層位置,例如頂部、左側、右側和底部。
- 之後,使用 saveArgb32Pixels() 方法將對象分配給圖層。
- 最後,使用 save() 方法保存輸出文件。
以下代碼示例顯示瞭如何使用 Java 將新圖層添加到 PSD 文件。
// 此代碼示例演示如何在 PSD 文件中創建新圖層。
String sourceFileName = "C:\\Files\\OneLayer.psd";
String exportPath = "C:\\Files\\AddNewLayer.psd";
// 加載現有的 PSD
PsdImage im = (PsdImage)Image.load(sourceFileName);
// 準備兩個 int 數組
int[] data1 = new int[2500];
int[] data2 = new int[2500];
// 定義矩形
Rectangle rect1 = new Rectangle(0, 0, 50, 50);
Rectangle rect2 = new Rectangle(0, 0, 100, 25);
for (int i = 0; i < 2500; i++)
{
data1[i] = -10000000;
data2[i] = -10000000;
}
// 添加第 1 層
Layer layer1 = im.addRegularLayer();
layer1.setLeft(25);
layer1.setTop(25);
layer1.setRight(75);
layer1.setBottom(75);
layer1.saveArgb32Pixels(rect1, data1);
// 添加第 2 層
Layer layer2 = im.addRegularLayer();
layer2.setLeft(25);
layer2.setTop(150);
layer2.setRight(125);
layer2.setBottom(175);
layer2.saveArgb32Pixels(rect2, data2);
// 保存 PSD
im.save(exportPath);
使用 Java 將新文本層添加到 PSD
我們可以按照以下步驟向 PSD 文件添加新的文本層:
- 首先,使用 Image 類將 PSD 文件加載為 PsdImage。
- 接下來,定義一個矩形。
- 然後,調用 addTexLayer() 方法。它以文本輸入和矩形對像作為參數。
- 之後,設置圖層位置,如頂部、左側、右側和底部。
- 最後,使用 save() 方法保存輸出文件。
以下代碼示例顯示瞭如何使用 Java 將新文本層添加到 PSD 文件。
// 此代碼示例演示如何在 PSD 圖像文件中創建新圖層。
String sourceFileName = "C:\\Files\\sample.psd";
String exportPath = "C:\\Files\\AddTextLayer.psd";
// 加載現有的 PSD
PsdImage im = (PsdImage)Image.load(sourceFileName);
// 添加文字圖層
Rectangle rect = new Rectangle(20, 20, 100, 30);
TextLayer layer = im.addTextLayer("Welcome!", rect);
// 設置圖層位置
layer.setLeft(10);
layer.setTop(25);
// 保存 PSD
im.save(exportPath);
獲得免費的臨時許可證
您可以 獲得免費的臨時許可證 來試用該庫,而沒有評估限制。
結論
在本文中,我們學習瞭如何:
- 創建一個新的 PSD 圖像;
- 創建一個新的常規層;
- 使用 Java 在 PSD 中插入文本層。
除了在 Java 中向 PSD 添加一個新層之外,您還可以使用 文檔 了解有關 Aspose.PSD for Java 的更多信息。如有任何疑問,請隨時通過我們的免費支持論壇與我們聯繫。