首页 > 编程语言 >借助图形控件Aspose.PSD, 在 Java 中绘制几何形状

借助图形控件Aspose.PSD, 在 Java 中绘制几何形状

时间:2024-09-02 15:23:17浏览次数:12  
标签:控件 Java image PSD Graphics new PsdImage class

最近,我们使用Aspose.PSD for Java实现了绘制诸如日食和线条等形状的功能。然而,这篇博文将更进一步,向您展示如何在 Java 中绘制几何形状。幸运的是,您可以使用这个Java 绘图库以编程方式执行此操作,因为它是一个完整的包,可以在 Java 应用程序中处理形状。因此,没有额外的要求,我们可以直接进入安装和实施部分。

Aspose.PSD 是高级PSD文件格式操作API,没有任何Adobe Photoshop依赖项。API允许创建或编辑Photoshop文件,并提供更新图层属性,添加水印,执行图形操作或将一种文件格式转换为另一种文件的功能。Aspose API支持流行文件格式处理,并允许将各类文档导出或转换为固定布局文件格式和最常用的图像/多媒体格式。

Aspose.PSD 最新下载   

Java绘图库安装

现在,您可以转到此 安装 指南查看所有提到的详细信息。但是,您可以 在此处下载 JAR 文件。

Maven 配置:

<repositories>
<repository>
<id>snapshots</id>
<name>repo</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-psd</artifactId>
<version>24.4</version>
<classifier>jdk16</classifier>
</dependency>
</dependencies>

java绘图库安装

在 Java 中绘制矩形 - 代码示例

安装完成后,您可以按照以下步骤操作:

  • 创建BmpOptions类的实例。
  • 调用setBitsPerPixel方法来设置每像素的位数。
  • 创建Image类的实例并用PsdImage类的对象初始化它。
  • 使用Image 类的对象实例化Graphics类的实例。
  • 通过调用getYellow方法设置图像的背景颜色。
  • drawRectangle方法将绘制一个矩形。
  • 通过调用保存方法将图像导出为BMP文件格式。

以下代码示例演示了如何使用 Aspose.PSD for Java 绘制矩形:

public class Main {
// Drawing rectangle in java
public static void main(String[] args) throws Exception {

String outpath = "/files/rectangle.bmp";
// Create an instance of BmpOptions class.
BmpOptions saveOptions = new BmpOptions();
// Invoke the setBitsPerPixel method to set the bits per pixel.
saveOptions.setBitsPerPixel(32);
// Create an instance of Image class and initialize it with the object of PsdImage class.
try (PsdImage image = new PsdImage(100, 100)) {
// Instantiate an instance of the Graphics class with the object of the Image class.
Graphics graphic = new Graphics(image);
// Set the background color of the image by calling the getYellow method.
graphic.clear(Color.getYellow());
// The drawRectangle method will draw a rectangle.
graphic.drawRectangle(new Pen(Color.getRed()), new RectangleF(30, 10, 40, 80));
graphic.drawRectangle(new Pen(new SolidBrush(Color.getBlue())), new RectangleF(10, 30, 80, 40));
// Export image to bmp file format by calling the save method.
image.save(outpath, saveOptions);
}
}
}

输出:

如何绘制矩形

通过编程绘制圆弧 - 代码示例

类似地,您可以按照下面提到的代码片段在 Java 中绘制圆弧:

public class Main {
// Draw an Arc
public static void main(String[] args) throws Exception {
String outpath = "/file/arc.bmp";
// Create an instance of BmpOptions class and invoke the setBitsPerPixel method to set the bits per pixel. .
BmpOptions saveOption = new BmpOptions();
saveOption.setBitsPerPixel(32);
// Create an instance of Image class and initialize it with the object of PsdImage class.
try (PsdImage image = new PsdImage(100, 100)) {
// Create and initialize an instance of Graphics class and clear Graphics surface
Graphics graphic = new Graphics(image);
graphic.clear(Color.getYellow());
// Draw an arc shape by specifying the Pen object having red black color and coordinates, height, width, start & end angles
int width = 100;
int height = 200;
int startAngle = 45;
int sweepAngle = 270;
// Draw arc to screen and save all changes.
graphic.drawArc(new Pen(Color.getBlack()), 0, 0, width, height, startAngle, sweepAngle);
// Save the image to bmp file format.
image.save(outpath, saveOption);
}
}
}

输出:

画圆弧

结论

总而言之,除了在 Java 中绘制几何形状外,Aspose.PSD for Java还提供了许多功能。因此,我们已经介绍了如何使用此Java 绘图库创建矩形和圆弧。果您还有其他疑问,欢迎查阅本系列其他教程,或者私信我获取帮助~

标签:控件,Java,image,PSD,Graphics,new,PsdImage,class
From: https://blog.csdn.net/m0_67129275/article/details/141819716

相关文章

  • 2024年华为OD机试E卷- Boss的收入-(Java&c++&Python)
    题目描述:一个XX产品行销总公司,只有一个b0ss,其有若千一级分销,一级分销又有若干二级分销,每个分错只有唯一的上级分销。规定,每个月,下级分销需要将自己的总收入(自已的+下级上交的)每满100元上交15元给自己的上级现给出一组分销的关系,和每个分销的收入,请找出boss并计算出这个boss......
  • Java 运用字节流实现的针对对象的深拷贝
    对象序列化为字节流,再从字节流反序列化为新的对象。classSelfCloneSampleimplementsSerializable{publicSelfCloneSampledeepClone(){//万物归于字节流,对对象序列化后再反序列化,即可实现深拷贝SelfCloneSampleanother=null;try{......
  • Java基于小程序公考学习平台的设计与实现
    博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w+、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌......
  • 基于Java中的SSM框架实现私人书店管理系统项目【项目源码+论文说明】计算机毕业设计
    基于java中的SSM框架实现私人书店管理系统平台演示【内附项目源码+LW说明】摘要电子商务在近些年来已经成为了我国重要的第三产业之一,电子商务成为了我国经济增速中一个不可缺少的组成部分,而随着互联网技术的不断发展,现在的电子商务也已经日趋成熟,不仅仅是在技术层面实现......
  • java-swing贪吃蛇游戏
    MyRect.javapackageMain;publicclassMyRect{ publicintx=0; publicinty=0; publicMyRgbrgb=newMyRgb(); longcreatetime=0; publicMyRect(){ } publicMyRect(intmx,intmy,MyRgbmyrgb,longtime){ x=mx; y=my; rgb=......
  • java~重写hashcode和equals
    单字段和多字段重写hashcode在Java中,重写hashCode方法的场景通常与对象的哈希值计算有关,特别是在使用哈希表(如HashMap,HashSet等)时。下面是你提供的两种hashCode实现的具体使用场景分析:1.第一种实现@Overridepublicbooleanequals(Objecto){if(this==o)......
  • java-swing画图
    MyRect.javapackageMain;publicclassMyRect{ publicintx=0; publicinty=0; publicMyRgbrgb=newMyRgb(); longcreatetime=0; publicMyRect(){ } publicMyRect(intmx,intmy,MyRgbmyrgb,longtime){ x=mx; y=my; rgb=......
  • Java中的堆
    Java中的堆一、引言在Java中,堆是一种重要的数据结构,它通常表现为一个完全二叉树,具有一些特定的性质。堆可以是最大堆或最小堆,其中最大堆的每个节点的值都不小于其子节点,而最小堆的每个节点的值都不大于其子节点。堆在很多算法中都有应用,比如堆排序、优先队列等。本文将详......
  • Java中BigInteger类的使用
    Java中BigInteger类的使用一、引言在Java编程语言中,处理大整数是一个常见的需求,尤其是在加密、科学计算和金融领域。Java提供了BigInteger类来处理任意精度的整数运算,这使得程序员可以轻松地处理超出基本数据类型范围的数值。本文将详细介绍BigInteger类的使用,包括其构造......
  • java计算机毕业设计家具销售电商平台(开题+程序+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景:随着互联网技术的飞速发展,电子商务已成为现代商业活动不可或缺的一部分,深刻改变了人们的消费习惯。在家具市场,传统销售模式受限于地域、时间等因素,难......