チュートリアル

簡単にライブラリーを使用するためのチュートリアルコレクション

Koohji

Koohji

EPUB は人気の電子書籍ファイルフォーマットです。このフォーマットは、ほとんどの電子リーダー、スマートフォン、タブレット、パソコンで読むことをサポートしています。時には、読みやすいように Word ドキュメントを EPUB ファイルに変換するのも良い選択です。この記事では、Spire.Doc for Java を使用して Word を EPUB 変換する方法を示します。

Spire.Doc for Java をインストールします

まず、Spire.Doc 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.doc</artifactId>
        <version>10.11.6</version>
    </dependency>
</dependencies>

Word を EPUB に変換する

Spire.Doc for Java が提供する Document.saveToFile() メソッドは、Word を EPUB に変換することをサポートしています。次に、具体的な変換手順を示します。

  • Documentインスタンスを作成します。
  • Document.loadFromFile()メソッドを使用してWordドキュメントをロードします。
  • Document.saveToFile()メソッドを使用して、WordをEPUBに保存します。
  • Java
import com.spire.doc.Document;
import com.spire.doc.FileFormat;

public class ConvertWordToEpub {
    public static void main(String[] args){
        //Documentインスタンスを作成する
        Document doc = new Document();
        //Wordドキュメントをロードする
        doc.loadFromFile("Sample.docx");

        //WordをEPUBに保存する
        doc.saveToFile("ToEpub.epub", FileFormat.E_Pub);
    }
}

Java:Word を EPUB に変換する方法

Word を表紙付き EPUB に変換する

Spire.Doc for Java が提供する Document.saveToEpub(String, DocPicture) メソッドは、Word を表紙付き EPUB に変換することをサポートしています。次に、具体的な変換手順を示します。

  • Documentインスタンスを作成します。
  • Document.loadFromFile()メソッドを使用してWordドキュメントをロードします。
  • DocPictureインスタンスを作成します。
  • DocPicture.loadImage()メソッドを使用して画像をロードします。
  • Document.saveToEpub(String, DocPicture) メソッドを使用して、Wordを表紙付きEPUBに保存します。
  • Java
import com.spire.doc.Document;
import com.spire.doc.fields.DocPicture;

public class ConvertWordToEpubWithCoverImage {
    public static void main(String[] args){
        //Documentインスタンスを作成する
        Document doc = new Document();
        //Wordドキュメントをロードする
        doc.loadFromFile("Sample.docx");

        //DocPictureインスタンスを作成する
        DocPicture picture = new DocPicture(doc);
        //画像をロードする
        picture.loadImage("Cover.png");

        // Wordを表紙付きEPUBに保存する
        doc.saveToEpub("ToEpubWithCoverImage.epub", picture);
    }
}

Java:Word を EPUB に変換する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

データを計算しやすくするために、PDF ファイルは Excel 形式で変換されているものもあります。これは、データを探したり、編集したりするのにも便利です。この記事では、Spire.PDF for Java を使用して複数の PDF ページを1つの Excel ワークシートに変換する方法を紹介します。複数の PDF ページを複数のシートに変換する必要がある場合は、この記事を参照してください:Java:PDF を Excel に変換する方法

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>8.11.8</version>
    </dependency>
</dependencies>

複数の PDF ページを1つの Excel ワークシートに変換する

Spire.PDF for Java が提供する PdfDocument.getConvertOptions().setPdfToXlsxOptions() メソッドは、PDF から Excel への変換オプションの設定をサポートします。たとえば、複数の PDF ページを単一の Excel ワークシートに表示します。次は詳細な変換手順です。

  • PdfDocument オブジェクトを作成します。
  • PdfDocument.loadFromFile() メソッドを使用して PDF ファイルのサンプルをロードします。
  • PdfDocument.getConvertOptions().setPdfToXlsxOptions() メソッドを使用して PDF から XLSX への変換オプションを設定し、1つのワークシートに複数の PDF ページを表示します。
  • PdfDocument.saveToFile() メソッドを使用して、PDF を Excel に保存します。
  • Java
import com.spire.pdf.*;
import com.spire.pdf.conversion.XlsxLineLayoutOptions;

public class ManyPagesToOneSheet {
    public static void main(String[] args) {

        //PdfDocumentオブジェクトを作成する
        PdfDocument pdf = new PdfDocument();

        //PDFファイルのサンプルをロードする
        pdf.loadFromFile("sample.pdf");

        //PDFからXLSXへの変換オプションを設定し、1つのワークシートに複数のPDFページを表示する
        pdf.getConvertOptions().setPdfToXlsxOptions(new XlsxLineLayoutOptions(false,true,true));

        //PDFをExcelに保存する
        pdf.saveToFile("ToOneSheet.xlsx", FileFormat.XLSX);
    }
}

Java:複数の PDF ページを1つの Excel ワークシートに変換する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

契約書などの機密文書を保存または転送する必要がある場合は、Word をパスワードで保護された PDF 文書形式に変換することができます。この方法により、ドキュメントのフォーマットが変更されないようにするだけでなく、ドキュメントの内容が漏れるのを防ぐことができます。この記事では、Spire.Doc for Java を使用して Word をパスワードで保護された PDF に変換する方法を示します。

Spire.Doc for Java をインストールします

まず、Spire.Doc 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.doc</artifactId>
        <version>10.11.6</version>
    </dependency>
</dependencies>

Word をパスワードで保護された PDF に変換する

Spire.Doc for Java を使用すると、開発者は Document.saveToFile(String, ToPdfParameterList) メソッドを使用して Word ドキュメントをパスワードで保護された PDF ドキュメントに変換することができます。ToPdfParameterList パラメータは、変換時に文書を暗号化するかどうかなど、Word 文書が PDF に変換される方法をコントロールします。次は詳細な操作手順です。

  • Document インスタンスを作成します。
  • Document.loadFromFile() メソッドを使用して Word ドキュメントをロードします。
  • ToPdfParameterList インスタンスを作成します。
  • ToPdfParameterList.getPdfSecurity().encrypt() メソッドを使用して、PDF のオープンパスワードとパーミッションパスワードを設定します。
  • Document.saveToFile(String, ToPdfParameterList) メソッドを使用して Word をパスワードで保護された PDF として保存します。
  • Java
import com.spire.doc.Document;
import com.spire.doc.ToPdfParameterList;
import com.spire.pdf.security.PdfEncryptionKeySize;
import com.spire.pdf.security.PdfPermissionsFlags;

public class ConvertWordToPasswordProtectedPDF {
    public static void main(String[] args){

        //Documentインスタンスを作成する
        Document document = new Document(false);
        //Wordドキュメントをロードする
        document.loadFromFile("Sample.docx");
        //ToPdfParameterListインスタンスを作成する
        ToPdfParameterList toPdf = new ToPdfParameterList();
        //PDFのオープンパスワードとパーミッションパスワードを設定する
        String password = "password";
        toPdf.getPdfSecurity().encrypt(password, password, PdfPermissionsFlags.None, PdfEncryptionKeySize.Key_128_Bit);

        //Wordをパスワードで保護されたPDFとして保存する
        document.saveToFile("ToPdfWithPassword.pdf", toPdf);
    }
}

Java:Word をパスワードで保護された PDF に変換する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Spire.Office 7.12.0のリリースを発表できることを嬉しく思います。このバージョンでは、Spire.Docは形状の塗りつぶし色の透明度の設定がサポートされました。Spire.PDFはPDFの圧縮とPDFからPPTへの変換機能がサポートされました。Spire.XLSは複数の新しい関数と「SHA-512」暗号化方式がサポートされました。さらに、このバージョンでは、多くの既知の問題も修正しました。詳細は以下の内容を読んでください。

このバージョンでは、Spire.Doc,Spire.PDF,Spire.XLS,Spire.Email,Spire.DocViewer, Spire.PDFViewer,Spire.Presentation,Spire.Spreadsheet, Spire.OfficeViewer, Spire.DocViewer, Spire.Barcode, Spire.DataExportの最新バージョンが含まれています。

DLL Versions:
  • Spire.Doc.dll v10.11.9
  • Spire.Pdf.dll v8.11.10
  • Spire.XLS.dll v12.11.3
  • Spire.Presentation.dll v7.11.2
  • Spire.Email.dll v5.11.10
  • Spire.DocViewer.Forms.dll v7.10.0
  • Spire.PdfViewer.Forms.dll v7.10.0
  • Spire.PdfViewer.Asp.dll v7.10.0
  • Spire.Spreadsheet.dll v6.12.0
  • Spire.OfficeViewer.Forms.dll v7.12.0
  • Spire.Barcode.dll v6.8.0
  • Spire.DataExport.dll v4.8.0
  • Spire.DataExport.ResourceMgr.dll v2.1.0
ここで Spire.Office 7.12.0 をダウンロードする:

このリリースで行われた変更のリストは次のとおりです

Spire.Doc

カテゴリー ID 説明
New feature SPIREDOC-8443 形状の塗りつぶし色の透明度の設定がサポートされました。
Paragraph paragraph = section.AddParagraph();
Spire.Doc.Fields.TextBox textbox1 = paragraph.AppendTextBox(100, 50);
textbox1.Format.FillColor = Color.Red;
textbox1.FillTransparency = 0.45;
Bug SPIREDOC-5456 WordをPDFに変換した後のテキストフォーマットが正しくない問題が修正されました。
Bug SPIREDOC-5718 WordをPDFに変換した後の改ページが正しくない問題が修正されました。
Bug SPIREDOC-7350
SPIREDOC-7605
WordをPDFに変換した後のヘッダーの下線と表の枠線が重なる問題が修正されました。
Bug SPIREDOC-8539 RTFをPDFに変換した後のテキストフォーマットが正しくない問題が修正されました。
Bug SPIREDOC-8635 メールによるデータのマージに失敗した問題が修正されました。
Bug SPIREDOC-8636 メールマージ時にアプリケーションが「System.InvalidOperationException」をスローする問題が修正されました。
Bug SPIREDOC-8691 追跡リビジョン機能をオンにした後、コンテンツコントロールのコンテンツを変更した後にdoc.HasChangesがfalseに戻る問題が修正されました。
Bug SPIREDOC-8709 WordをPDFに変換して内容が失われていた問題が修正されました。
Bug SPIREDOC-8785 WordをPDFに変換する際にアプリケーションが「System.NullReferenceException」をスローする問題が修正されました。

Spire.PDF

カテゴリー ID 説明
New feature SPIREPDF-2713 PDFドキュメントを圧縮する方法が追加されました。
PdfCompressor compressor = new PdfCompressor(fileName);
compressor.CompressToFIle(outputName);
New feature - .NET 7.0をサポートしました。
PDFをPPTXドキュメントに変換する機能をサポートしました。
PPdfDocument pdf = new PdfDocument();
pdf.LoadFromFile(inputFile);
pdf.SaveToFile(outputFile, FileFormat.PPTX)
New feature SPIREPDF-2534
SPIREPDF-4641
ドキュメントを圧縮する機能が追加されました。
PdfCompressor compressor = new PdfCompressor(fileName);
compressor.CompressToFIle(outputName);
New feature SPIREPDF-5598 PdfTextReplacerインタフェースでは、大文字と小文字を無視することがサポートしました。
PdfDocument doc = new PdfDocument();
doc.LoadFromFile(input);
PdfPageBase page = doc.Pages[0];
PdfTextReplacer replacer = new PdfTextReplacer(page);
PdfTextReplaceOptions option = new PdfTextReplaceOptions();
options.ReplaceType = ReplaceActionType.IgnoreCase;
replacer.Options = option;
replacer.ReplaceText("cash", "999"); 
doc.SaveToFile("output.pdf", FileFormat.PDF);
Bug SPIREPDF-1264
SPIREPDF-5608
PDFを画像に変換した後の内容が正しくない問題が修正されました。
Bug SPIREPDF-5443 PDFをExcelに変換する際にアプリケーションが「System.ArgumentException」をスローした問題が修正されました。
Bug SPIREPDF-5527 クロステキストの検索に失敗した問題が修正されました。
Bug SPIREPDF-5556 添付ファイルの取得に失敗した問題が修正されました。
Bug SPIREPDF-5591 TIFFピクチャを追加した後のピクチャの背景色が失われていた問題が修正されました。
Bug SPIREPDF-5596 TIFFピクチャを追加した後のピクチャの文字色が変更された問題が修正されました。
Bug SPIREPDF-3886
SPIREPDF-3932
画面フォントの表示サイズが100%でない場合の印刷結果が正しくない問題が修正されました。
Bug SPIREPDF-4506 PdfFreeTextAnnotationの不透明度を1 fに設定して画像に変換すると、アプリカティオンが「System.ArgumentNullException」をスローする問題が修正されました。
Bug SPIREPDF-5196 圧縮PDFが無効だった問題が修正されました。
Bug SPIREPDF-5363 PDFを画像に変換すると文字間隔が大きくなる問題が修正されました。
Bug SPIREPDF-5488 A 0サイズのPDFを印刷する際に、アプリカティオンが「System.ArgumentException」を破棄する問題が修正されました。
Bug SPIREPDF-5514 PDFをWordに変換した後、コンテンツスタイルが失われていた問題が修正されました。
Bug SPIREPDF-5554 OFDをPDFに変換すると、左上の画像が失われる問題が修正されました。
Bug SPIREPDF-5557 PDFをPDFX 1 A 2001に変換する際に、画像の色が変わる問題が修正されました。
Bug SPIREPDF-5563 PDFを画像に変換する際に、アプリカティオンが「System.IndexOutOfRangeException」をスローする問題が修正されました。
Bug SPIREPDF-5581 テキストの検索結果が正しくない問題が修正されました。

Spire.XLS

カテゴリー ID 説明
New feature SPIREXLS-4120 CEILING.MATH関数をサポートしました。
Workbook workbook = new Workbook();
workbook.Worksheets[0].Range["A1"].Formula = "CEILING.MATH(-2.78,5,-1)";
workbook.CalculateAllValue();
workbook.SaveToFile("1.xlsx",ExcelVersion.Version2016);
New feature SPIREXLS-4195 BITOR関数をサポートしました。
Workbook workbook = new Workbook();
workbook.Worksheets[0].Range["A1"].Formula = "BITOR(23,10)";
workbook.CalculateAllValue();
workbook.SaveToFile("1.xlsx",ExcelVersion.Version2016);
New feature SPIREXLS-4199 BITAND関数をサポートしました。
Workbook workbook = new Workbook();
workbook.Worksheets[0].Range["A1"].Formula = "BITAND(23,10)";
workbook.CalculateAllValue();
workbook.SaveToFile("1.xlsx",ExcelVersion.Version2016);
New feature SPIREXLS-4212 BITLSHIFT関数をサポートしました。
Supports BITLSHIFT formula.
Workbook workbook = new Workbook();
workbook.Worksheets[0].Range["A1"].Formula = "BITLSHIFT(23,2)";
workbook.CalculateAllValue();
workbook.SaveToFile("1.xlsx",ExcelVersion.Version2016);
New feature SPIREXLS-4214 BITRSHIFT関数をサポートしました。
Workbook workbook = new Workbook();
workbook.Worksheets[0].Range["A1"].Formula = "BITRSHIFT(23,2)";
workbook.CalculateAllValue();
workbook.SaveToFile("1.xlsx",ExcelVersion.Version2016);
New feature SPIREXLS-4191 shapeグループ化をサポートしました。
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.Worksheets[0];
IPrstGeomShape shape1 = worksheet.PrstGeomShapes.AddPrstGeomShape(1, 3, 50, 50, PrstGeomShapeType.RoundRect);
IPrstGeomShape shape2 = worksheet.PrstGeomShapes.AddPrstGeomShape(5, 3, 50, 50, PrstGeomShapeType.Triangle);
GroupShapeCollection groupShapeCollection = worksheet.GroupShapeCollection;
groupShapeCollection.Group(new Spire.Xls.Core.IShape[] { shape1,shape2});
workbook.SaveToFile("1.xlsx",ExcelVersion.Version2013);
New feature SPIREXLS-4194 「SHA-512」暗号化方式をサポートしました。
New feature SPIREXLS-4200 ピボット・テーブル全体を設定するためのレイアウト・モードが追加されました。
xlsPivotTable.Options.ReportLayout = PivotTableLayoutType.Tabular;
Bug SPIREXLS-4161 HtmlをExcelに変換した後の表の枠線とスタイルが失われていた問題が修正されました。
Bug SPIREXLS-4163 条件付きフォーマットの色を取得する際にアプリケーションが「System.NullReferenceException」をスローする問題が修正されました。
Bug SPIREXLS-4164 グラフを画像に変換した後にコンマが1つ多くなる問題が修正されました。
Bug SPIREXLS-4182 エラーパスワードでExcelドキュメントを復号したときにアプリケーションがスローしなかった問題が修正されました。
Bug SPIREXLS-4189 隠し列を削除するとExcelに空白列が多くなる問題が修正されました。
Bug SPIREXLS-4197 ドキュメントをロードして保存した後、結果ドキュメントと元のドキュメントの内容が異なる問題が修正されました。
Bug SPIREXLS-4211 ExcelをCSVドキュメントに変換した後の二重引用符が正しくない問題が修正されました。
Bug SPIREXLS-4218 セル範囲の計算結果が正しくない問題が修正されました。
Bug SPIREXLS-4227 セルのRTFテキストを取得する際にアプリケーションが「Unknown font」をスローした問題が修正されました。
Bug SPIREXLS-4231 ExcelをPDFに変換する際にアプリケーションが「Shapes fail to be rendered」をスローした問題が修正されました。
Bug SPIREXLS-4245 ExcelをPDFに変換する際にアプリケーションが「System.OutOfMemoryException」をスローした問題が修正されました。
Bug SPIREXLS-4247 HtmlをExcelに変換した後のフォーマットの不一致が修正されました。
Bug SPIREXLS-4252 ストリーム形式でファイルを保存すると、スライサー(slicers)が失われる問題が修正されました。
Bug SPIREXLS-4254 オペレーティングシステムの言語領域が変更された後、保存されたドキュメントのオープンプロンプトの内容に誤りがあった問題が修正されました。
Bug SPIREXLS-4258 sheetをコピーする際にアプリケーションが「System.NullReferenceException」をスローした問題が修正されました。

Spire.Presentation

カテゴリー ID 説明
Bug SPIREPPT-2086 null値を含むデータソースを使用してグラフを作成したときにグラフデータが正しく表示されなかった問題が修正されました。
Bug SPIREPPT-2100 形状の組み合わせや水平反転スタイルの設定時に形状が左に移動する問題が修正されました。
Bug SPIREPPT-2104 PPTのページを別のPPTにコピーする際に、ナビゲーションバーでパラメータが変更された問題が修正されました。

Spire.SpreadSheet

カテゴリー ID 説明
Bug SPREADSHEET-210 列を削除した後に列名が重なる問題が修正されました。

Spire.Presentation for Java 7.12.0のリリースを発表できることをうれしく思います。このバージョンは、PPTからSVGへの変換機能が強化されました。また、このリリースでは、PPTドキュメントをロードしたときにアプリケーションがスローした「Index must be>=0 and<=Count」などの既知の問題も修正されました。詳細は以下の内容を読んでください。

このリリースで行われた変更のリストは次のとおりです
カテゴリー ID 説明
Bug SPIREPPT-2085 PPTをSVGに変換した後にコンテンツスタイルが変更された問題が修正されました。
Bug SPIREPPT-2099 PPTをSVGに変換した後の形状の線のグラデーションが失われる問題が修正されました。
Bug SPIREPPT-2101 PPTドキュメントをロードする際にアプリケーションが「Index must be>=0 and<=Count」をスローした問題が修正されました。
Bug SPIREPPT-2102 PPTをPDFに変換した後にアプリケーションがハングアップした問題が修正されました。
Bug SPIREPPT-2108 PPTをSVGに変換するとコンテンツが失われる問題が修正されました。
ここで Spire.Presentation for Java 7.12.0をダウンロードする

何らかの理由で PDF のページサイズを変更する必要がある場合があります。たとえば、印刷するファイルのページサイズとプリンタで使用する用紙サイズが異なります。この記事では、Spire.PDF for 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>8.11.8</version>
    </dependency>
</dependencies>

PDF ページサイズを標準の用紙サイズに変更する

PDF ファイルのページサイズを変更する方法は、新しい PDF ファイルを作成し、必要なサイズのページを追加することです。次に、元の PDF ファイルのページに基づいてテンプレートを作成し、新しい PDF ファイルのページにテンプレートを描画します。この方法では、元の PDF ファイルのテキスト、画像、その他の要素が保持されます。

Spire.PDF for Java は、letter、legal、A0、A1、A2、A3、A4、B0、B1、B2、B3、B4 など、さまざまな標準用紙サイズをサポートしています。以下に詳細な操作手順を示します。

  • PdfDocument インスタンスを初期化し、PdfDocument.loadFromFile() メソッドを使用して元の PDF ファイルをロードします。
  • 別のPdfDocument インスタンスを初期化し、新しいPDFファイルを作成します。
  • 元のPDFのページをループします。
  • PdfDocument.getPages().add() メソッドを使用して、必要なサイズのページを新しい PDF ファイルに追加します。
  • PdfTextLayout インスタンスを初期化し、PdfTextLayout.setLayout() メソッドを使用して、テキストレイアウトを1ページに設定します。
  • PdfPageBase.createTemplate() メソッドを使用して、元の PDF 内のページに基づいてテンプレートを作成します。
  • PdfTemplate.draw() メソッドを使用して、指定したテキストレイアウトを持つ新しい PDF ファイルのページにテンプレートを描画します。
  • PdfDocument.saveToFile() メソッドを使用して結果文書を保存します。
  • Java
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.PdfPageSize;
import com.spire.pdf.graphics.*;

import java.awt.geom.Point2D;

public class ChangePageSizeToStandardPaperSize {
    public static void main(String []args){
        //PdfDocumentインスタンスを初期化する
        PdfDocument originPdf = new PdfDocument();
        originPdf.loadFromFile("Sample.pdf");

        //新しいPDFドキュメントを作成する
        PdfDocument newPdf = new PdfDocument();

        //元のPDFのページをループする
        for(int i = 0; i< originPdf.getPages().getCount(); i++)
        {
            //A 1サイズのページを新しいPDFに追加する
            PdfPageBase newPage = newPdf.getPages().add(PdfPageSize.A1, new PdfMargins((0)));
            //PdfTextLayoutインスタンスを作成する
            PdfTextLayout layout = new PdfTextLayout();
            //テキストレイアウトを1ページに設定する(設定されていない場合、コンテンツはページサイズに合わせてスケールできません)
            layout.setLayout(PdfLayoutType.One_Page);
            //元のPDFのページに基づいてテンプレートを作成する
            PdfTemplate template = originPdf.getPages().get(i).createTemplate();
            //テンプレートを新しいPDFのページに描画する
            template.draw(newPage, new Point2D.Float(0,0), layout);
        }

        //結果文書を保存する
        newPdf.saveToFile("ChangePageSizeToA1.pdf");
    }
}

Java:PDF ページサイズを変更する方法

PDF ページサイズをカスタム用紙サイズに変更する

Spire.PDF for Java は、測定単位としてポイント(1/72インチ)を使用します。PDF のページサイズをインチやミリメートルなどの他の単位のカスタム用紙サイズに変更する必要がある場合は、PdfUnitConvertor クラスを使用してポイントに変換できます。

以下に詳細な操作手順を示します。

  • PdfDocument インスタンスを初期化し、PdfDocument.loadFromFile() メソッドを使用して元の PDF ファイルをロードします。
  • 別の PdfDocument インスタンスを初期化して、新しい PDF ファイルを作成します。
  • PdfUnitConvertor インスタンスを初期化し、PdfUnitConvertor.convertUnits() メソッドを使用してインチ単位のカスタムサイズをポイントに変換します。
  • Dimension2D インスタンスをカスタムサイズから初期化します。
  • 元の PDF のページをループします。
  • PdfDocument.getPages().add() メソッドを使用して、新しい PDF ファイルにカスタムサイズのページを追加します。
  • PdfTextLayout インスタンスを初期化し、PdfTextLayout.setLayout() メソッドを使用して、テキストレイアウトを1ページに設定します。
  • PdfPageBase.createTemplate() メソッドを使用して、元の PDF 内のページに基づいてテンプレートを作成します。
  • PdfTemplate.draw() メソッドを使用して、指定したテキストレイアウトを持つ新しい PDF ファイルのページにテンプレートを描画します。
  • PdfDocument.saveToFile() メソッドを使用して結果文書を保存します。
  • Java
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.graphics.*;

import java.awt.*;
import java.awt.geom.Dimension2D;
import java.awt.geom.Point2D;

public class ChangePageSizeToCustomPaperSize {
    public static void main(String []args){
        //PdfDocumentインスタンスを初期化する
        PdfDocument originPdf = new PdfDocument();
        originPdf.loadFromFile("Sample.pdf");

        //新しいPDFドキュメントを作成する
        PdfDocument newPdf = new PdfDocument();

        //PdfUnitConvertorインスタンスを作成する
        PdfUnitConvertor unitCvtr = new PdfUnitConvertor();
        //カスタムサイズ(インチ)をポイントに変換する
        float width = unitCvtr.convertUnits(6.5f, PdfGraphicsUnit.Inch, PdfGraphicsUnit.Point);
        float height = unitCvtr.convertUnits(8.5f, PdfGraphicsUnit.Inch, PdfGraphicsUnit.Point);

        //カスタムサイズからDimension 2 Dインスタンスを作成し、新しいPDFのページサイズとして使用する
        Dimension2D size = new Dimension();
        size.setSize(width, height);

        //元のPDFのページをループする
        for(int i = 0; i< originPdf.getPages().getCount(); i++)
        {
            //新しいPDFにカスタムサイズ(6.5*8.5インチ)のページを追加する
            PdfPageBase newPage = newPdf.getPages().add(size, new PdfMargins((0)));
            //PdfTextLayoutインスタンスを初期化する
            PdfTextLayout layout = new PdfTextLayout();
            //テキストレイアウトを1ページに設定する(設定されていない場合、コンテンツはページサイズに合わせてスケールできません)
            layout.setLayout(PdfLayoutType.One_Page);
            //元のPDFのページに基づいてテンプレートを作成する
            PdfTemplate template = originPdf.getPages().get(i).createTemplate();
            //テンプレートを新しいPDFのページに描画する
            template.draw(newPage, new Point2D.Float(0,0), layout);
        }

        //結果文書を保存する
        newPdf.saveToFile("ChangePageSizeToCustomSize.pdf");
    }
}

Java:PDF ページサイズを変更する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Spire.SpreadSheet 6.12.0のリリースを発表できることを嬉しく思います。このリリースでは、列を削除した後に列名が重なる問題が修正されました。詳細は以下の内容を読んでください。

このリリースで行われた変更のリストは次のとおりです
カテゴリー ID 説明
Bug SPREADSHEET-210 列を削除した後に列名が重なる問題が修正されました。
ここで Spire.Spreadsheet 6.12.0をダウンロードする

Spire.PDF 8.11.10のリリースを発表できることを嬉しく思います。このバージョンでは、.NET 7.0とPDFからPPTXへの変換機能をサポートしました。さらに、ドキュメントを圧縮する機能も追加されました。また、このバージョンでは、TIFFピクチャを追加した後にピクチャの背景色が失われたなど、既知の問題が修正されました。詳細は以下の内容を読んでください。

このリリースで行われた変更のリストは次のとおりです
カテゴリー ID 説明
New feature - .NET 7.0をサポートしました。
PDFをPPTXドキュメントに変換する機能をサポートしました。
PPdfDocument pdf = new PdfDocument();
pdf.LoadFromFile(inputFile);
pdf.SaveToFile(outputFile, FileFormat.PPTX)
New feature SPIREPDF-2534
SPIREPDF-4641
ドキュメントを圧縮する機能が追加されました。
PdfCompressor compressor = new PdfCompressor(fileName);
compressor.CompressToFIle(outputName);
New feature SPIREPDF-5598 PdfTextReplacerインタフェースでは、大文字と小文字を無視することがサポートしました。
PdfDocument doc = new PdfDocument();
doc.LoadFromFile(input);
PdfPageBase page = doc.Pages[0];
PdfTextReplacer replacer = new PdfTextReplacer(page);
PdfTextReplaceOptions option = new PdfTextReplaceOptions();
options.ReplaceType = ReplaceActionType.IgnoreCase;
replacer.Options = option;
replacer.ReplaceText("cash", "999"); 
doc.SaveToFile("output.pdf", FileFormat.PDF);
Bug SPIREPDF-1264
SPIREPDF-5608
PDFを画像に変換した後の内容が正しくない問題が修正されました。
Bug SPIREPDF-5443 PDFをExcelに変換する際にアプリケーションが「System.ArgumentException」をスローした問題が修正されました。
Bug SPIREPDF-5527 クロステキストの検索に失敗した問題が修正されました。
Bug SPIREPDF-5556 添付ファイルの取得に失敗した問題が修正されました。
Bug SPIREPDF-5591 TIFFピクチャを追加した後のピクチャの背景色が失われていた問題が修正されました。
Bug SPIREPDF-5596 TIFFピクチャを追加した後のピクチャの文字色が変更された問題が修正されました。
ここで Spire.PDF 8.11.10をダウンロードする

PDF/A は PDF の ISO 規格化されたバージョンで、将来の使用のためのアーカイブファイルをサポートしています。PDF/A 形式のドキュメントは、どのソフトウェアを使用しても完全に同じ方法でコピーできます。デジタルドキュメントを長期保存する上での利点のため、必要に応じて PDF を PDF/A に変換することができます。この記事では、Spire.PDF for .NET を使用して PDF を PDF/A-1A, 2A, 3A, 1B, 2B と 3B の PDF に変換する方法を紹介します。

Spire.PDF for .NET をインストールします

まず、Spire.PDF for .NET パッケージに含まれている DL Lファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。

PM> Install-Package Spire.PDF

PDF を PDF/A に変換する

Spire.PDF for .NET は、PDF を PDF/A-1A, 2A, 3A, 1B, 2B と 3B など、さまざまな PDF/A フォーマットに変換することをサポートしています。以下に詳細な変換手順を示します。

  • 入力ファイルパスと出力フォルダを指定します。
  • PdfStandardsConverter インスタンスを作成し、入力ドキュメントのパスをパラメータとしてインスタンスに渡します。
  • PdfStandardsConverter.ToPdfA1A() メソッドを使用して、サンプルファイルを PdfA1A コンシステンシレベルに変換します。
  • PdfStandardsConverter.ToPdfA1B() メソッドを使用して、サンプルファイルを PdfA1B コンシステンシレベルに変換します。
  • PdfStandardsConverter.ToPdfA2A() メソッドを使用して、サンプルファイルを PdfA2A コンシステンシレベルに変換します。
  • PdfStandardsConverter.ToPdfA2B() メソッドを使用して、サンプルファイルを PdfA2B コンシステンシレベルに変換します。
  • PdfStandardsConverter.ToPdfA3A() メソッドを使用して、サンプルファイルを PdfA3A コンシステンシレベルに変換します。
  • PdfStandardsConverter.ToPdfA3B() メソッドを使用して、サンプルファイルを PdfA3B コンシステンシレベルに変換します。
  • C#
  • VB.NET
using System;
using Spire.Pdf.Conversion;

namespace ConvertPdf2Pdfa
{
    class Program
    {
        static void Main(string[] args)
        {
            //入力ファイルパスを指定する
            String inputFile = @"C:\Users\Administrator\Desktop\sample.pdf";

            //出力フォルダを指定する
            String outputFolder = @"C:\Users\Administrator\Desktop\Output\";

            //PdfStandardsConverterインスタンスを作成し、入力ドキュメントのパスをパラメータとしてインスタンスに渡す
            PdfStandardsConverter converter = new PdfStandardsConverter(inputFile);

            //PDFをPDF/A1Aに変換する
            converter.ToPdfA1A(outputFolder + "ToPdfA1A.pdf");

            //PDFをPDFA1Bに変換する
            converter.ToPdfA1B(outputFolder + "ToPdfA1B.pdf");

            //PDFをPDFA2Aに変換する
            converter.ToPdfA2A(outputFolder + "ToPdfA2A.pdf");

            //PDFをPDFA2Bに変換する
            converter.ToPdfA2B(outputFolder + "ToPdfA2B.pdf");

            //PDFをPDFA3Aに変換する
            converter.ToPdfA3A(outputFolder + "ToPdfA3A.pdf");

            //PDFをPDFA3Bに変換する
            converter.ToPdfA3B(outputFolder + "ToPdfA3B.pdf");
        }
    }
}
Imports Spire.Pdf.Conversion

Namespace ConvertPdf2Pdfa
    Class Program
        Private Shared Sub Main(ByVal args As String())

            '入力ファイルパスを指定する
            Dim inputFile As String = "C:\Users\Administrator\Desktop\sample.pdf"

            '出力フォルダを指定する
            Dim outputFolder As String = "C:\Users\Administrator\Desktop\Output\"

             'PdfStandardsConverterインスタンスを作成し、入力ドキュメントのパスをパラメータとしてインスタンスに渡す
            Dim converter As PdfStandardsConverter = New PdfStandardsConverter(inputFile)

            'PDFをPDF/A1Aに変換する
            converter.ToPdfA1A(outputFolder & "ToPdfA1A.pdf")

            'PDFをPDFA1Bに変換する
            converter.ToPdfA1B(outputFolder & "ToPdfA1B.pdf")

            'PDFをPDFA2Aに変換する
            converter.ToPdfA2A(outputFolder & "ToPdfA2A.pdf")

            'PDFをPDFA2Bに変換する
            converter.ToPdfA2B(outputFolder & "ToPdfA2B.pdf")

            'PDFをPDFA3Aに変換する
            converter.ToPdfA3A(outputFolder & "ToPdfA3A.pdf")

            'PDFをPDFA3Bに変換する
            converter.ToPdfA3B(outputFolder & "ToPdfA3B.pdf")
        End Sub
    End Class
End Namespace

C#/VB.NET:PDF を PDF/A に変換する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Spire.XLS for Java 12.11.8のリリースを発表できることを嬉しく思います。今回の更新では、ExcelからPDFへの変換機能が強化されました。Excelファイルをロードするときに、アプリケーションが「java.lang.OutOfMemoryError」をスローするなどの問題を修正するなど、既知の問題も修正されました。詳細は以下の内容を読んでください。

このリリースで行われた変更のリストは次のとおりです
カテゴリー ID 説明
Bug SPIREXLS-4154
SPIREXLS-4190
ExcelをPDFに変換した後の内容が正しくない問題が修正されました。
Bug SPIREXLS-4166 ExcelをPDFに変換する際にアプリケーションが「java.lang.ClassCastException」をスローする問題が修正されました。
Bug SPIREXLS-4181 ExcelをPDFに変換した後のフォント変更の問題が修正されました。
Bug SPIREXLS-4198 Excelファイルをロードするときにアプリケーションが「java.lang.OutOfMemoryError」をスローする問題が修正されました。
Bug SPIREXLS-4208 ExcelをPDFに変換した後にグラフが失われていた問題が修正されました。
Bug SPIREXLS-4241 セルに入力されたデータが正しくない問題が修正されました。
Bug SPIREXLS-4250 ExcelをPDFに変換した後のコンテンツフォーマットが正しくない問題が修正されました。
Bug SPIREXLS-4257 ExcelをPDFに変換する際にアプリケーションが「Index is less than 0 or more than or equal to the list count.」をスローする問題が修正されました。
Bug SPIREXLS-4261 InserArrayを呼び出してint配列を挿入するとスタックがオーバーフローする問題が修正されました。
Bug SPIREXLS-4264 グラフの枠線をフィレットに設定しても機能しない問題が修正されました。
Bug SPIREXLS-4266 ドキュメントのマージ後にセルスタイルが変更された問題が修正されました。
ここで Spire.XLS for Java12.11.8 をダウンロードする