JavaはPDF文書に形状を描画します
PDFドキュメントの編集プロセスでは、ドキュメントにポリゴン、長方形、楕円などのグラフィックスを追加する必要がある場合があります。Free Spire.PDF for Javaは、Javaコードを使用してPDFドキュメントに図形を描画するのに役立ちます、形状の縁の色と塗りつぶしの色を設定します。
JARパッケージのインポート
方法1:Free Spire.PDF for Javaをダウンロードして解凍し、jarパッケージをlibフォルダーに依存関係としてJavaアプリケーションに直接インポートします。
方法2:Mavenリポジトリからjarパッケージをインストールし、pom.xmlファイルのコードを次のように構成します。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>http://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.pdf.free</artifactId>
<version>2.6.3</version>
</dependency>
</dependencies>
Javaコード
import java.awt.*;
import java.awt.geom.Rectangle2D;
import com.spire.pdf.FileFormat;
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.graphics.*;
public class DrawShapes {
public static void main(String[] args) {
//PDFドキュメントを作成してページを追加する
PdfDocument doc = new PdfDocument();
PdfPageBase page = doc.getPages().add();
//長方形を描く
PdfPen pen =new PdfPen(new PdfRGBColor(Color.black),0.1);
Rectangle2D.Float rect1 = new Rectangle2D.Float(0, 20, 120, 50);
PdfLinearGradientBrush linearGradientBrush = new PdfLinearGradientBrush(rect1,new PdfRGBColor(Color.pink),new PdfRGBColor(Color.yellow),PdfLinearGradientMode.Horizontal);
page.getCanvas().drawRectangle(pen, linearGradientBrush, rect1);
//楕円を描く
Point centerStart= new Point(205,45);
Point centerEnd= new Point(205,45);
PdfRadialGradientBrush radialGradientBrush = new PdfRadialGradientBrush(centerStart,0,centerEnd,25,new PdfRGBColor(Color.white),new PdfRGBColor(Color.cyan));
Rectangle2D.Float rect2= new Rectangle2D.Float(180, 20, 50, 50);
page.getCanvas().drawEllipse(pen,radialGradientBrush,rect2);
//多角形を描く
Point p1=new Point(290,70);
Point p2=new Point(310,45);
Point p3=new Point(325,60);
Point p4=new Point(340,20);
Point p5=new Point(370,70);
Point[] points = {p1, p2, p3, p4, p5};
PdfBrush brush= PdfBrushes.getGreenYellow();
page.getCanvas().drawPolygon(pen,brush, points);
//弧を描く
float startAngle = 0;
float sweepAngle = 270;
Rectangle2D.Float rect3= new Rectangle2D.Float(0, 110, 50, 50);
page.getCanvas().drawArc(pen, rect3, startAngle, sweepAngle);
//円グラフを描く
Rectangle2D.Float rect4= new Rectangle2D.Float(70, 110, 50, 50);
page.getCanvas().drawPie(pen, rect4, startAngle, sweepAngle);
//線を引く
Point pStart=new Point(205,110);
Point pEnd=new Point(205,160);
page.getCanvas().drawLine(pen, pStart, pEnd);
//ベジェ曲線を描く
Point startPoint = new Point(290, 135);
Point firstControlPoint = new Point(330, 70);
Point secondControlPoint = new Point(330, 200);
Point endPoint = new Point(370, 135);
page.getCanvas().drawBezier(pen, startPoint, firstControlPoint, secondControlPoint, endPoint);
//ファイルに保存
doc.saveToFile("DrawShapes.pdf", FileFormat.PDF);
}
}
Author And Source
この問題について(JavaはPDF文書に形状を描画します), 我々は、より多くの情報をここで見つけました https://qiita.com/iceblue/items/e4026a8cc2038eb69b8c著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .