SVGとは「Scalable Vector Graphics( 拡大縮小可能なベクター画像)」を意味し、2ビットのベクター画像用に設計されたファイル形式です。ベクターグラフィックには、鮮明さを保ちながら自由に拡大縮小できるなど、多くの利点がある。SVG、PDFはすべてベクターグラフィックスのファイル形式である。 したがって、PDFがSVGに変換されたときに、その中の要素はほとんど失われません。 この記事では、JavaプログラムでPDFをSVGに変換する方法を紹介します。
この記事の変換方法では、無料のAPIであるFree Spire.PDF for Javaを使用する必要があります。Free Spire.PDF for Javaの公式ウェブサイトからダウンロードするか、または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.free</artifactId>
<version>5.1.0</version>
</dependency>
</dependencies>
各PDFページをSVGファイルに変換
PDFファイルを直接saveToFileメソッドを使ってSVGファイルに変換すると、結果のファイルには1つのPDFページに対して1つのSVGファイルが存在することになります。例:
- PdfDocument オブジェクトを作成します。
- PdfDocument.loadFromFile() メソッドを用いて PDF 文書を読み込みます。
- PdfDocument.saveToFIle() メソッドでPDF文書をSVGファイルに変換して保存します。
コード
Java
import com.spire.pdf.*;
public class PDFToSVG {
public static void main(String[] args) {
// Document クラスのオブジェクトを作成する
PdfDocument pdf = new PdfDocument();
// ディスクから PDF ドキュメントをロードする
pdf.loadFromFile("サンプル.pdf");
// PDF ドキュメントを SVG ファイルに変換して保存する
pdf.saveToFile("output/PDFToSVG.svg", FileFormat.SVG);
pdf.close();
}
}
すべてのPDFページを1つのSVGファイルに変換
PDF文書を単一のSVGファイルに変換するには、setOutputToOneSvgメソッドを使用して変換オプションを設定する必要があります。主なコードの手順を解説します:
PDFドキュメントを単一のSVGファイルに変換するには、変換前にsetOutputToOneSvgメソッドを使用して出力を設定する必要があります。手順は以下の通りです:
- PdfDocument オブジェクトを作成します。
- PdfDocument.loadFromFile() メソッドを使用してディスクからPDFドキュメントをロードします。
- PdfDocument.getConvertOptions().setOutputToOneSvg() メソッドを使用して変換オプションを単一のSVGファイルに設定します。
- PdfDocument.saveToFile() メソッドを使用してPDFドキュメントをSVGファイルに変換して保存します。
コード
Java
package com.example.spire;
import com.spire.pdf.FileFormat;
import com.spire.pdf.PdfDocument;
public class Main {
public static void main(String[] args) {
// PdfDocumentクラスのオブジェクトを作成する
PdfDocument pdf = new PdfDocument();
// ディスクからPDFドキュメントをロードする
pdf.loadFromFile("サンプル.pdf");
// 変換オプションを設定してPDFを単一のSVGファイルに変換する
pdf.getConvertOptions().setOutputToOneSvg(true);
// PDFドキュメントをSVGファイルに変換して保存する
pdf.saveToFile("output/PDFをSVGに変換.svg", FileFormat.SVG);
pdf.close();
}
}
上記は、Free Spire.PDF for Javaを使用してPDFファイルをSVGファイルに変換する方法を説明します。このAPIは他にも多くの機能をサポートしています。詳しくはSpire.PDF for Javaチュートリアルをご覧ください。