PDF ドキュメントに四角形、楕円、線などの図形を描画することで、ドキュメントの視覚的効果を高め、重要なポイントを強調することができます。レポートやプレゼンテーション、論文を作成する際、文章だけでは表現が難しい概念やデータの関係性を図形で補足すると、情報をより明確に伝えられます。本記事では、Java で Spire.PDF for Java を使用して PDF ドキュメントに図形を描画する方法を説明します。 Java で PDF に線を描画する Java で PDF に円弧や扇形を描画する Java で PDF に長方形を描画する Java で PDF に楕円を描画する Spire.PDF for Java をインストールします まず、Spire.PDF for Java を Java プロジェクトに追加する必要があります。JAR ファイルは、このリンクからダウンロードできます。Maven を使用する場合は、次のコードをプロジェクトの pom.xml ファイルに追加する必要があります。 <repositories> <repository> <id>com.e-iceblue</id> <name>e-iceblue</name> <url>https://repo.e-iceblue.com/nexus/content/groups/public/</url> </repository> </repositories> <dependencies> <dependency> <groupId>e-iceblue</groupId> <artifactId>spire.pdf</artifactId> <version>10.10.7</version> </dependency> </dependencies> Java で PDF に線を描画する Spire.PDF for Java では、PdfPageBase.getCanvas().drawLine(PdfPen pen, float x1, float y1, float x2, float y2) メソッドを使用して、指定した位置に線を描画できます。また、PDF ペンのスタイルを変更することで、実線や点線などの異なる線を描画可能です。以下に詳細な手順を示します。 PdfDocument オブジェクトを作成します。 PdfDocument.getPages().add() メソッドを使用して PDF ページを追加します。 PdfPageBase.getCanvas().save() メソッドで現在の描画状態を保存します。 線の開始位置(x, y 座標)と長さを定義します。 色と太さを指定して PdfPen オブジェクトを作成します。 PdfPageBase.getCanvas().drawLine() メソッドを使用して、ペンで実線を描画します。 ペンのスタイルを点線に変更し、点線パターンを設定します。 点線スタイルのペンを使用して点線を描画します。 PdfPageBase.getCanvas().restore() メソッドで以前の描画状態を復元します。 PdfDocument.saveToFile() メソッドで結果を PDF ファイルとして保存します。 Java import com.spire.pdf.*; import com.spire.pdf.graphics.*; import java.awt.*; public class drawLinePDF { public static void main(String[] args) { // PdfDocumentオブジェクトを作成します PdfDocument pdf = new PdfDocument(); // ページを追加します PdfPageBase page = pdf.getPages().add(); // 現在の描画状態を保存します PdfGraphicsState state = page.getCanvas().save(); // 線の開始位置のXおよびY座標を指定します float x = 100; float y = 70; // 線の長さを指定します float width = 300; // 青色で太さ2のPDFペンを作成します PdfPen pen = new PdfPen(new PdfRGBColor(Color.BLUE), 2f); // ペンを使用してページに実線を描画します page.getCanvas().drawLine(pen, x, y, x + width, y); // ペンのスタイルを点線に設定します pen.setDashStyle(PdfDashStyle.Dash); // 点線のパターンを設定します pen.setDashPattern(new float[]{1, 4, 1}); // ペンを使用してページに点線を描画します page.getCanvas().drawLine(pen, x, y+30, x + width, y+30); // 保存した描画状態を復元します page.getCanvas().restore(state); // PDFドキュメントを保存します pdf.saveToFile("output/PDFで線を描く.pdf"); // ドキュメントを閉じ、リソースを解放します pdf.close(); pdf.dispose(); } } Java で PDF に円弧や扇形を描画する 指定した位置に弧や扇形を描画するには、PdfPageBase.getCanvas().drawArc() および PdfPageBase.getCanvas().drawPie() メソッドを使用します。以下はその詳細手順です。 PdfDocument オブジェクトを作成します。 PdfDocument.getPages().add() メソッドを使用して PDF ページを追加します。 PdfPageBase.getCanvas().save() メソッドで現在の描画状態を保存します。 色と太さを指定して PdfPen オブジェクトを作成します。 PdfPageBase.getCanvas().drawArc() メソッドを使用して弧を描画します。 PdfPageBase.getCanvas().drawPie() メソッドを使用して扇形を描画します。 PdfPageBase.getCanvas().restore() メソッドで以前の描画状態を復元します。 PdfDocument.saveToFile() メソッドで結果を PDF ファイルとして保存します。 Java import com.spire.pdf.*; import com.spire.pdf.graphics.*; import java.awt.*; import java.awt.geom.Rectangle2D; public class drawArcAndPiePDF { public static void main(String[] args) { // PdfDocumentオブジェクトを作成します PdfDocument pdf = new PdfDocument(); // ページを追加します PdfPageBase page = pdf.getPages().add(); // 現在の描画状態を保存します PdfGraphicsState state = page.getCanvas().save(); // 指定した色と太さ2のPDFペンを作成します PdfPen pen = new PdfPen(new PdfRGBColor(new Color(139,0,0)), 2f); // 弧の開始角度と掃引角度を指定します float startAngle = 90; float sweepAngle = 230; // ペンを使用してページに弧を描画します Rectangle2D.Float rect = new Rectangle2D.Float(30, 60, 120, 120); page.getCanvas().drawArc(pen, rect, startAngle, sweepAngle); // 扇形チャートの開始角度と掃引角度を指定します float startAngle1 = 0; float sweepAngle1 = 330; // ペンを使用してページに扇形チャートを描画します Rectangle2D.Float rect2 = new Rectangle2D.Float(200, 60, 120, 120); page.getCanvas().drawPie(pen, rect2, startAngle1, sweepAngle1); // 保存した描画状態を復元します page.getCanvas().restore(state); // PDFドキュメントを保存します pdf.saveToFile("output/PDFに円弧や扇形を描画.pdf"); // ドキュメントを閉じ、リソースを解放します pdf.close(); pdf.dispose(); } } Java で PDF に長方形を描画する Spire.PDF for Java では、PdfPageBase.getCanvas().drawRectangle() メソッドを使用して PDF ページ上に長方形を描画できます。このメソッドに異なるパラメータを渡すことで、位置やサイズ、塗りつぶしの色を指定可能です。以下に詳細手順を示します。 PdfDocument オブジェクトを作成します。 PdfDocument.getPages().add() メソッドを使用して PDF ページを追加します。 PdfPageBase.getCanvas().save() メソッドで現在の描画状態を保存します。 色と太さを指定して PdfPen オブジェクトを作成します。 PdfPageBase.getCanvas().drawRectangle() メソッドを使用して長方形を描画します。 PdfLinearGradientBrush オブジェクトを作成して線形グラデーションを設定します。 PdfPageBase.getCanvas().drawRectangle() メソッドを使用してグラデーションで塗りつぶした長方形を描画します。 PdfPageBase.getCanvas().restore() メソッドで以前の描画状態を復元します。 PdfDocument.saveToFile() メソッドで結果を PDF ファイルとして保存します。 Java import com.spire.pdf.*; import com.spire.pdf.graphics.*; import java.awt.*; import java.awt.geom.Rectangle2D; public class drawRectanglesPDF { public static void main(String[] args) { // PdfDocumentオブジェクトを作成します PdfDocument pdf = new PdfDocument(); // ページを追加します PdfPageBase page = pdf.getPages().add(); // 現在の描画状態を保存します PdfGraphicsState state = page.getCanvas().save(); // 指定した色と太さ1.5のPDFペンを作成します PdfPen pen = new PdfPen(new PdfRGBColor(Color.magenta), 1.5f); // ペンを使用してページに長方形を描画します page.getCanvas().drawRectangle(pen, new Rectangle(20, 60, 150, 90)); // 線形グラデーションブラシを作成します Rectangle2D.Float rect = new Rectangle2D.Float(220, 60, 150, 90); PdfLinearGradientBrush linearGradientBrush = new PdfLinearGradientBrush( rect, new PdfRGBColor(Color.white), new PdfRGBColor(Color.blue), PdfLinearGradientMode.Vertical ); // 指定した色と太さ0.5の新しいPDFペンを作成します PdfPen pen1 = new PdfPen(new PdfRGBColor(Color.black), 0.5f); // 新しいペンと線形グラデーションブラシを使用して塗りつぶしの長方形を描画します page.getCanvas().drawRectangle(pen1, linearGradientBrush, rect); // 保存した描画状態を復元します page.getCanvas().restore(state); // PDFドキュメントを保存します pdf.saveToFile("output/PDFで矩形を描く.pdf"); // ドキュメントを閉じ、リソースを解放します pdf.close(); pdf.dispose(); } } Java で PDF に楕円を描画する PdfPageBase.getCanvas().drawEllipse() メソッドを使用すると、PDF ページに楕円を描画できます。PDF ペンまたは塗りつぶし用ブラシを使用することで、異なるスタイルの楕円を描画可能です。以下に詳細手順を示します。 PdfDocument オブジェクトを作成します。 PdfDocument.getPages().add() メソッドを使用して PDF ページを追加します。 PdfPageBase.getCanvas().save() メソッドで現在の描画状態を保存します。 色と太さを指定して PdfPen オブジェクトを作成します。 PdfPageBase.getCanvas().drawEllipse() メソッドを使用して楕円を描画します。 PdfSolidBrush オブジェクトを作成します。 PdfPageBase.getCanvas().drawEllipse() メソッドを使用して塗りつぶした楕円を描画します。 PdfPageBase.getCanvas().restore() メソッドで以前の描画状態を復元します。 PdfDocument.saveToFile() メソッドで結果を PDF ファイルとして保存します。 Java import com.spire.pdf.*; import com.spire.pdf.graphics.*; import java.awt.*; public class drawEllipsesPDF { public static void main(String[] args) { // PdfDocumentオブジェクトを作成します PdfDocument pdf = new PdfDocument(); // ページを追加します PdfPageBase page = pdf.getPages().add(); // 現在の描画状態を保存します PdfGraphicsState state = page.getCanvas().save(); // 指定した色と太さのPDFペンを作成します PdfPen pen = new PdfPen(new PdfRGBColor(new Color(95, 158, 160)), 1f); // ペンを使用してページに楕円を描画します page.getCanvas().drawEllipse(pen, 30, 60, 150, 100); // 塗りつぶし用の指定した色のブラシを作成します PdfBrush brush = new PdfSolidBrush(new PdfRGBColor(new Color(95, 158, 160))); // ブラシを使用してページに塗りつぶし楕円を描画します page.getCanvas().drawEllipse(brush, 220, 60, 150, 100); // 保存した描画状態を復元します page.getCanvas().restore(state); // PDFドキュメントを保存します pdf.saveToFile("output/PDFで楕円を描く.pdf"); // ドキュメントを閉じ、リソースを解放します pdf.close(); pdf.dispose(); } } 一時ライセンスを申請する 結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 にお問い合わせ、30 日間有効な一時ライセンスを取得してください。