Java 中的影像裁剪

影像剪輯是選擇影像的一部分並僅顯示該特定區域的過程。它在多種場景中都很有用,例如創建引人注目的縮圖、引起人們對圖像特定部分的注意等。我們還將探索提取物件並增強您的設計的分步技術。

本文涵蓋以下主題:

  1. Java 影像剪輯 API - 免費下載
  2. Java 中的影像裁切
  3. Java中從影像中提取物件
  4. 免費資源

Java 影像剪輯 API - 免費下載

對於 Java 中的影像裁剪,我們將利用強大的 Aspose.Drawing for Java API,這是一種高效、精確的影像處理的尖端解決方案。它是一個用於 Java 程式設計繪圖的多功能 2D 圖形庫。它使開發人員能夠載入、保存和編輯各種支援的檔案格式,使其成為滿足影像剪輯需求的理想選擇。

下載 API 的 JAR 或在基於 Maven 的 Java 應用程式中新增以下 pom.xml 配置。

<repositories>
    <repository>
        <id>AsposeJavaAPI</id>
        <name>Aspose Java API</name>
        <url>https://repository.aspose.com/repo/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-drawing</artifactId>
        <version>24.4</version>
    </dependency>
</dependencies>

Java 中的影像裁剪

我們可以按照以下步驟在Java中以程式方式實現影像裁切:

  1. 建立 Bitmap 類別的實例。
  2. 使用 fromImage() 方法初始化 Graphics 類別物件。
  3. 使用 GraphicsPath 類別定義剪輯路徑。
  4. 之後,使用 setClip() 方法設定剪輯路徑。
  5. 最後,使用 save() 方法儲存輸出影像。

下面的程式碼範例展示如何用Java實現圖像裁剪。

// 建立一個新的位圖
Bitmap bitmap = new Bitmap(1000, 800);

// 初始化圖形
Graphics graphics = Graphics.fromImage(bitmap);
graphics.setTextRenderingHint(TextRenderingHint.AntiAliasGridFit);

// 定義剪輯
RectangleF rectangle = new RectangleF(200, 200, 600, 400);
GraphicsPath clipPath = new GraphicsPath();
clipPath.addEllipse(rectangle);
graphics.setClip(clipPath);

// 指定字串
StringFormat stringFormat = new StringFormat();
stringFormat.setAlignment(StringAlignment.Center);
stringFormat.setLineAlignment(StringAlignment.Center);
Brush brush = new SolidBrush(Color.getBlue());
Font arial = new Font("Arial", 20, FontStyle.Regular);
String text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas sapien tellus, mattis et condimentum eget, commodo ut ipsum. Maecenas elit sapien, tempus sit amet mauris sit amet, hendrerit laoreet nisi. Nulla facilisi. Sed commodo, mauris eget porta commodo, nunc tellus volutpat mi, eu auctor diam libero vel neque. Vestibulum nec mattis dui, nec molestie nisl. Etiam in magna felis. Praesent non nulla tortor. Integer nec convallis purus. Fusce vitae mollis mauris. Cras efficitur dui at mi viverra scelerisque. Morbi quis magna elit. Nulla facilisis id ante sit amet fringilla. Sed iaculis consectetur lectus a interdum. Etiam ut sollicitudin lectus, et congue lectus.";

// 拉繩
graphics.drawString(text, arial, brush, rectangle, stringFormat);

// 節省
bitmap.save("Clipping.png");
Java影像裁切

Java影像裁切

用 Java 從圖像中提取對象

我們可以按照前面提到的步驟來提取影像的特定部分。然而,我們只需要載入現有圖像並使用drawImage()方法繪製它。

以下程式碼範例展示如何使用 Java 從圖像中提取物件。

// 此程式碼範例示範如何從圖像中提取對象
// 建立一個新的位圖
Bitmap bitmap = new Bitmap(1000, 800);

// 初始化圖形
Graphics graphics = Graphics.fromImage(bitmap);
graphics.setTextRenderingHint(TextRenderingHint.AntiAliasGridFit);

// 定義剪輯
RectangleF rectangle = new RectangleF(0, 0, 225, 225);
GraphicsPath clipPath = new GraphicsPath();
clipPath.addEllipse(rectangle);
graphics.setClip(clipPath);

// 載入圖片
Bitmap image = new Bitmap("aspose-logo.png");

// 在指定位置繪製影像
graphics.drawImage(image,0,0);

// 節省
bitmap.save("extract-object.png");
用 Java 從圖像中提取對象

用 Java 從圖像中提取對象

取得免費許可證

您可以獲得免費的臨時許可證來嘗試 Aspose.Drawing for Java,而不受評估限制。

Aspose.Drawing – 免費資源

除了 Java 中的圖像剪輯之外,您還可以使用以下資源來了解有關該程式庫的各種功能的更多資訊:

結論

在這篇文章中,我們探索了用Java實現圖像裁剪的過程。透過遵循本文中概述的步驟,您現在可以精確輕鬆地從圖像中提取物件。如有任何疑問,請隨時透過我們的免費支援論壇與我們聯繫。

也可以看看