在 Java 中繪製形狀

在某些情況下,您可能需要通過繪製圓形、直線、矩形等形狀來創建不同的對象。此外,您可能必須在圖像上繪製這些形狀以進行註釋。在本文中,您將學習如何在 Java 中以編程方式繪製形狀。特別是,您將學習如何繪製直線、橢圓、圓弧和矩形並生成它們的圖像。

用於繪製形狀的 Java API - 免費下載

要繪製形狀並生成輸出圖像,我們將使用 Aspose.Imaging for Java。它是一個強大的圖像編輯 API,提供了廣泛的功能來處理圖像和創建繪圖。您可以 下載 API 或使用以下 Maven 配置安裝它。

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository> 

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-imaging</artifactId>
    <version>22.9</version>
</dependency>

使用 Java 畫一條線

以下是在 Java 中畫線的步驟。

以下代碼示例顯示瞭如何在 Java 中繪製一條線。

// 創建 BmpOptions
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// 定義 BmpOptions 實例的源屬性
bmpCreateOptions.setSource(new StreamSource());

// 創建 Image 的實例並通過傳遞
// bmpCreateOptions 對象
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 500, 500);

// 創建並初始化 Graphics 類的實例
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// 用白色清除圖像表面
graphic.clear(com.aspose.imaging.Color.getWhite());

// 通過指定具有藍色的 Pen 對象繪製一條虛線,並且
// 坐標點
graphic.drawLine(new Pen(com.aspose.imaging.Color.getBlue(), 3), 18, 18, 200, 200);
graphic.drawLine(new Pen(com.aspose.imaging.Color.getBlue(), 3), 18, 200, 200, 18);

// 通過指定具有 Solid 的 Pen 對象繪製一條連續的線
// 帶紅色和兩點結構的畫筆
graphic.drawLine(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getRed()), 3),
		new com.aspose.imaging.Point(18, 18), new com.aspose.imaging.Point(18, 200));

// 通過指定具有 Solid 的 Pen 對象繪製一條連續的線
// 具有白色和兩點結構的畫筆
graphic.drawLine(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getOrange()), 3),
		new com.aspose.imaging.Point(200, 18), new com.aspose.imaging.Point(18, 18));

// 保存所有更改
image.save("draw_lines.bmp");

以下是上述代碼示例的輸出。

在 Java 中畫線

使用 Java 繪製橢圓

下面是用Java畫橢圓的步驟。

以下代碼示例顯示瞭如何使用 Java 在圖像上繪製橢圓。

// 創建 BmpOptions
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// 定義 BmpOptions 實例的源屬性
bmpCreateOptions.setSource(new StreamSource());

// 創建 Image 的實例並通過傳遞
// bmpCreateOptions 對象
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 400, 400);

// 創建並初始化 Graphics 類的實例
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// 用白色清除圖像表面
graphic.clear(com.aspose.imaging.Color.getWhite());

// 通過指定具有紅色的 Pen 對象繪製虛線橢圓形狀
// 顏色和周圍的矩形
graphic.drawEllipse(new Pen(com.aspose.imaging.Color.getRed(), 3),
		new com.aspose.imaging.Rectangle(60, 40, 70, 120));

// 通過指定 Pen 對象繪製一個連續的橢圓形狀
// solid brush with blue 顏色和周圍的矩形
graphic.drawEllipse(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getBlue()), 3),
		new com.aspose.imaging.Rectangle(40, 60, 120, 70));

// 保存所有更改
image.save("draw_ellipse.bmp");

以下是上述代碼示例的輸出。

在 Java 中繪製橢圓

使用 Java 繪製圓弧

下面是用Java畫圓弧的步驟。

以下代碼示例顯示瞭如何使用 Java 在圖像上繪製圓弧。

// 創建 BmpOptions
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// 定義 BmpOptions 實例的源屬性
bmpCreateOptions.setSource(new StreamSource());

// 創建 Image 的實例並通過傳遞
// BmpOptions 對象
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 400, 400);

// 創建並初始化 Graphics 類的實例
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// 用白色清除圖像表面
graphic.clear(com.aspose.imaging.Color.getWhite());

// 通過指定具有紅黑色的 Pen 對象繪製虛線弧形
// 顏色和坐標、高度、寬度、開始和結束角度
int width = 200;
int height = 300;
int startAngle = 45;
int sweepAngle = 270;

// 繪製圓弧到屏幕
graphic.drawArc(new Pen(com.aspose.imaging.Color.getBlack(), 3), 0, 0, width, height, startAngle, sweepAngle);

// 保存所有更改
image.save("draw_arc.bmp");

以下是上述代碼示例的輸出。

在 Java 中畫圓弧

使用 Java 繪製矩形

下面是在Java中繪製矩形的步驟。

以下代碼示例顯示瞭如何使用 Java 在圖像上繪製矩形。

// 創建 BmpOptions
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// 定義 BmpOptions 實例的源屬性
bmpCreateOptions.setSource(new StreamSource());

// 創建 Image 的實例並通過傳遞
// bmp 創建選項對象
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 400, 400);

// 創建並初始化 Graphics 類的實例
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// 用白色清除圖像表面
graphic.clear(com.aspose.imaging.Color.getWhite());

// 通過指定具有紅色的 Pen 對象繪製虛線矩形形狀
// 顏色和矩形結構
graphic.drawRectangle(new Pen(com.aspose.imaging.Color.getRed(), 3),
		new com.aspose.imaging.Rectangle(60, 40, 70, 120));

// 通過指定 Pen 對象繪製一個連續的矩形形狀
// solid brush with blue 顏色和矩形結構
graphic.drawRectangle(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getBlue()), 3),
		new com.aspose.imaging.Rectangle(40, 60, 120, 70));

// 保存所有更改
image.save("draw_rectangle.bmp");

以下是上述代碼示例的輸出。

在Java中繪製矩形

Java Image Drawing API - 獲得免費許可證

您可以 獲得免費的臨時許可證 並在不受評估限制的情況下繪製形狀。

結論

在本文中,您學習瞭如何使用 Java 繪製形狀。我們已經介紹瞭如何以編程方式在圖像上繪製直線、橢圓、弧和矩形。您可以輕鬆地將提供的代碼示例集成到您的 Java 應用程序中。

閱讀更多

您可以使用 文檔 探索有關 Java 圖像處理 API 的更多信息。此外,您可以通過我們的 論壇 與我們分享您的疑問。

也可以看看