图形和图表用于直观地表示 PDF 文件中的数据。此外,您可以使用它们以图形方式描述系统中活动或操作的流程,例如流程图。在本文中,您将学习如何使用 Java 以编程方式在 PDF 文件中创建图形和图表。我们将明确介绍如何在 PDF 文件中创建不同的图形对象。
在 PDF 中创建图形和图表的 Java API
Aspose.PDF for Java 是一个了不起的 API,它提供了一系列用于 PDF 生成和操作的功能。使用 API,您可以无缝地创建简单和复杂布局的 PDF 文件。我们将使用此 API 在 PDF 文件中创建图形和图表。您可以 下载 API 或使用以下 Maven 配置安装它。
Repository:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
Dependency:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>22.4</version>
</dependency>
用 Java 在 PDF 中创建弧
以下是在 Java 中在 PDF 中添加圆弧的步骤。
- 使用 Document 类创建新 PDF 或加载现有 PDF。
- 创建一个带有维度的 Graph 对象。
- 为图形对象设置 BorderInfo。
- 创建 Arc 类的实例并设置其尺寸和其他参数。
- 使用 Graph.getShapes().add(Arc) 方法将弧添加到 Graph 的形状集合中。
- 使用 Page.getParagraphs().add(Graph) 方法将图表添加到页面。
- 使用 Document.save(String) 方法保存 PDF 文件。
以下代码示例显示了如何在 Java 中的 PDF 中添加弧。
// 创建文档实例
Document pdfDocument = new Document();
// 将页面添加到 PDF 文件的页面集合
Page page = pdfDocument.getPages().add();
// 创建具有特定维度的 Graph 对象
Graph graph = new Graph(400, 400);
// 为绘图对象设置边框
BorderInfo borderInfo = new BorderInfo(BorderSide.All, Color.getGreen());
graph.setBorder(borderInfo);
// 创建圆弧
Arc arc1 = new Arc(100, 100, 95, 0, 90);
arc1.getGraphInfo().setColor(Color.getGreenYellow());
graph.getShapes().add(arc1);
Graph graph2 = new Graph(400, 400);
// 创建填充圆弧
Arc arc = new Arc(100, 100, 95, 0, 90);
arc.getGraphInfo().setFillColor(Color.getGreenYellow());
graph2.getShapes().add(arc);
Line line = new Line(new float[] { 195, 100, 100, 100, 100, 195 });
line.getGraphInfo().setFillColor(Color.getGreenYellow());
graph2.getShapes().add(line);
// 将图形对象添加到页面的段落集合
page.getParagraphs().add(graph);
page.getParagraphs().add(graph2);
// 保存 PDF 文件
pdfDocument.save("create-arc.pdf");
以下是我们使用上述代码示例生成的弧。
用 Java 在 PDF 中创建一个圆圈
以下是在 Java 中向 PDF 文件添加圆圈的步骤。
- 使用 Document 类创建新 PDF 或加载现有 PDF。
- 创建一个带维度的 Graph 对象。
- 为图形对象设置 BorderInfo。
- 创建 Circle 类的实例并设置其尺寸。
- 使用 Graph.getShapes().add(Circle) 方法将圆形添加到 Graph 的形状集合中。
- 使用 Page.getParagraphs().add(Graph) 方法将图表添加到页面。
- 使用 Document.save(String) 方法保存 PDF 文件。
以下代码示例展示了如何在 Java 中添加 PDF 中的圆圈。
// 创建文档实例
Document pdfDocument = new Document();
// 将页面添加到 PDF 文件的页面集合
Page page = pdfDocument.getPages().add();
// 创建具有特定维度的 Graph 对象
Graph graph = new Graph(400, 200);
// 为绘图对象设置边框
BorderInfo borderInfo = new BorderInfo(BorderSide.All, Color.getGreen());
graph.setBorder(borderInfo);
// 创建圈子
Circle circle = new Circle(100,100,40);
circle.getGraphInfo().setColor(Color.getGreenYellow());
circle.getGraphInfo().setFillColor(Color.getGreenYellow());
graph.getShapes().add(circle);
// 将图形对象添加到页面的段落集合
page.getParagraphs().add(graph);
// 保存 PDF 文件
pdfDocument.save("create-circle.pdf");
以下是我们使用上述代码示例生成的圆圈。
用 Java 在 PDF 中添加曲线
以下是在 Java 中在 PDF 文件中添加曲线的步骤。
- 使用 Document 类创建新 PDF 或加载现有 PDF。
- 创建一个带有维度的 Graph 对象。
- 为图形对象设置 BorderInfo。
- 创建 Curve 类的实例并设置其尺寸。
- 使用 Graph.getShapes().add(Curve) 方法将曲线添加到 Graph 的形状集合中。
- 使用 Page.getParagraphs().add(Graph) 方法将图表添加到页面。
- 使用 Document.save(String) 方法保存 PDF 文件。
以下代码示例展示了如何在 Java 中将曲线添加到 PDF 文件。
// 创建文档实例
Document pdfDocument = new Document();
// 将页面添加到 PDF 文件的页面集合
Page page = pdfDocument.getPages().add();
// 创建具有特定维度的 Graph 对象
Graph graph = new Graph(400, 200);
// 为绘图对象设置边框
BorderInfo borderInfo = new BorderInfo(BorderSide.All, Color.getGreen());
graph.setBorder(borderInfo);
// 创建曲线
Curve curve1 = new Curve(new float[] { 10, 10, 50, 60, 70, 10, 100, 120});
curve1.getGraphInfo().setColor(Color.getGreenYellow());
graph.getShapes().add(curve1);
// 创建具有特定尺寸的绘图对象
Graph graph2 = new Graph(400, 200);
// 创建填充曲线
Curve curve2 = new Curve(new float[] { 50, 30, 200, 60, 70, 10, 100, 120});
curve2.getGraphInfo().setFillColor(Color.getGreenYellow());
graph2.getShapes().add(curve2);
// 将图形对象添加到页面的段落集合
page.getParagraphs().add(graph);
page.getParagraphs().add(graph2);
// 保存 PDF 文件
pdfDocument.save("create-curve.pdf");
以下是我们使用上述代码示例生成的曲线。
用 Java 在 PDF 中添加一行
以下是使用 Java 在 PDF 中添加行的步骤。
- 使用 Document 类创建新 PDF 或加载现有 PDF。
- 创建一个带有维度的 Graph 对象。
- 为图形对象设置 BorderInfo。
- 创建 Line 类的实例并设置其尺寸。
- 设置线条的其他属性,如样式、宽度等。
- 使用 Graph.getShapes().add(Line) 方法将线条添加到 Graph 的形状集合中。
- 使用 Page.getParagraphs().add(Graph) 方法将图表添加到页面。
- 使用 Document.save(String) 方法保存 PDF 文件。
以下代码示例展示了如何在 Java 中的 PDF 中添加行。
// 创建文档实例
Document pdfDocument = new Document();
// 将页面添加到 PDF 文件的页面集合
Page page = pdfDocument.getPages().add();
// 创建 Graph 实例
Graph graph = new Graph(100, 400);
// 将图形对象添加到页面实例的段落集合
page.getParagraphs().add(graph);
// 创建线实例
Line line = new Line(new float[] { 300, 200, 200, 100 });
line.getGraphInfo().setLineWidth(5);
// 将矩形对象添加到 Graph 对象的形状集合中
graph.getShapes().add(line);
// 创建虚线
Line line2 = new Line(new float[] { 100, 100, 200, 100 });
// 为 Line 对象设置颜色
line2.getGraphInfo().setColor(Color.getRed());
// 设置线宽
line2.getGraphInfo().setLineWidth(5);
// 为线对象指定虚线数组
line2.getGraphInfo().setDashArray(new int[] { 0, 1, 0 });
// 为 Line 实例设置破折号阶段
line2.getGraphInfo().setDashPhase(1);
// 将线条添加到绘图对象的形状集合
graph.getShapes().add(line2);
// 保存 PDF 文件
pdfDocument.save("create-line.pdf");
以下是我们使用上述代码示例创建的行。
用Java在PDF中创建一个矩形
与其他图形对象类似,您可以将矩形添加到 PDF。此外,您可以用某种颜色填充矩形,控制 Z-Order,添加渐变颜色等。以下是在 Java 中在 PDF 文件中创建矩形的步骤。
- 使用 Document 类创建新 PDF 或加载现有 PDF。
- 创建一个带有维度的 Graph 对象。
- 为图形对象设置 BorderInfo。
- 创建 Rectangle 类的实例并设置其尺寸。
- 设置矩形的其他属性,如填充颜色、渐变等。
- 使用 Graph.getShapes().add(Rectangle) 方法将矩形添加到 Graph 的形状集合中。
- 使用 Page.getParagraphs().add(Graph) 方法将图表添加到页面。
- 使用 Document.save(String) 方法保存 PDF 文件。
以下代码示例展示了如何在 Java 中的 PDF 中添加矩形。
// 创建新的 PDF 文件
Document pdfDocument = new Document();
// 将页面添加到 PDF 文件的页面集合
Page page = pdfDocument.getPages().add();
// 创建 Graph 实例
Graph graph = new Graph(100, 400);
// 将图形对象添加到页面实例的段落集合
page.getParagraphs().add(graph);
// 创建矩形实例
com.aspose.pdf.drawing.Rectangle rect = new com.aspose.pdf.drawing.Rectangle(300, 100, 200, 120);
// 为 Graph 对象指定填充颜色
rect.getGraphInfo().setFillColor(Color.getRed());
// 将矩形对象添加到 Graph 对象的形状集合中
graph.getShapes().add(rect);
// 用渐变填充矩形
com.aspose.pdf.drawing.Rectangle rect2 = new com.aspose.pdf.drawing.Rectangle(0, 0, 300, 300);
graph.getShapes().add(rect2);
// 为 Graph 对象和填充指定渐变填充颜色
Color gradientFill = new com.aspose.pdf.Color();
rect2.getGraphInfo().setFillColor(gradientFill);
// 设置渐变
GradientAxialShading gradientAxialShading = new GradientAxialShading(Color.getRed(), Color.getBlue());
gradientAxialShading.setStart(new Point(0, 0));
gradientAxialShading.setEnd(new Point(300, 300));
gradientFill.setPatternColorSpace(gradientAxialShading);
// 保存 PDF 文件
pdfDocument.save("create-rectangle.pdf");
以下是我们使用上述代码示例创建的矩形。
在 Java 中创建 PDF 中的椭圆
最后但并非最不重要的一点,让我们看看如何在 Java 中创建 PDF 中的椭圆。
- 使用 Document 类创建新 PDF 或加载现有 PDF。
- 创建一个带维度的 Graph 对象。
- 为图形对象设置 BorderInfo。
- 创建 Ellipse 类的实例并设置其尺寸。
- 设置椭圆的其他属性,如填充颜色等。
- 使用 Graph.getShapes().add(Ellipse) 方法将椭圆添加到 Graph 的形状集合中。
- 使用 Page.getParagraphs().add(Graph) 方法将图表添加到页面。
- 使用 Document.save(String) 方法保存 PDF 文件。
以下代码示例展示了如何在 Java 中的 PDF 文件中添加椭圆。
// 创建文档实例
Document pdfDocument = new Document();
// 将页面添加到 PDF 文件的页面集合
Page page = pdfDocument.getPages().add();
// 创建具有特定维度的 Graph 对象
Graph graph = new Graph(400, 400);
// 为绘图对象设置边框
BorderInfo borderInfo = new BorderInfo(BorderSide.All, Color.getGreen());
graph.setBorder(borderInfo);
// 创建椭圆
Ellipse ellipse1 = new Ellipse(100, 100, 120, 60);
ellipse1.getGraphInfo().setColor(Color.getGreenYellow());
ellipse1.setText(new TextFragment("Ellipse"));
graph.getShapes().add(ellipse1);
// 创建填充椭圆
Ellipse ellipse2 = new Ellipse(200, 100, 120, 180);
ellipse2.getGraphInfo().setFillColor(Color.getGreenYellow());
graph.getShapes().add(ellipse2);
// 将 Graph 对象添加到页面的段落集合
page.getParagraphs().add(graph);
// 保存 PDF 文件
pdfDocument.save("create-ellipse.pdf");
以下是我们使用上述代码示例创建的省略号。
获得免费许可证
您可以获得一个免费的临时许可证 以便在没有评估限制的情况下使用 Aspose.PDF for Java。
结论
在本文中,您学习了如何使用 Java 在 PDF 文件中创建不同的图表对象。您已经了解了如何在 PDF 中添加圆弧、圆、矩形、直线、曲线和椭圆。此外,您可以使用 文档 探索有关 Java PDF API 的更多信息。如果您有任何问题或疑问,可以通过我们的 论坛 与我们联系。