C#を使用してPDFドキュメントの空白ページを削除する方法

普段仕事をしている時、PDFドキュメントを使用する場合がよくありますよね、そして常にドキュメントの中で空白のページ一つかまたはいくつかが含まれて、どうやって削除するのか分からない人もたくさんいると思います。ネットでその解決方法を検索しても、出てきた結果の多くは有料ソフトを使って削除するものです。そして今回は、ある強力で、しかも無料で使用できるコンポーネント、Free Spire.PDFを発見しました、無料だけでなく、メモリの使用量もかなり減っています。これからはこの素晴らしいC#コンポーネントをご紹介させていただきます。

 

必要な名前空間:

using System.Drawing;

using Spire.Pdf;

操作するPDFドキュメントのスクリーンショット:

f:id:uha_noki:20211110160948p:plain

詳しい手順と全てのコードは以下のようになります:

手順1 新しいPDFドキュメントを作成してロードする

PdfDocument document = new PdfDocument();

document.LoadFromFile("Wikipedia-C#.pdf");

 

手順2 PDFページをトラバースし、ページのコンテンツを検出して、空白ページである場合は、空白ページを削除する

for (int i = 0; i < document.Pages.Count; i++)

{

    PdfPageBase originalpage = document.Pages[i];

    if (originalpage.IsBlank())

    {

        document.Pages.Remove(originalpage);

        i--;

    }

}

手順3 ドキュメントを保存して新しいファイルを開く

document.SaveToFile("Wikipedia-C#withoutblankpage.pdf", FileFormat.PDF);

System.Diagnostics.Process.Start("Wikipedia-C#withoutblankpage.pdf");

 

削除した効果は以下のようになります:

f:id:uha_noki:20211110161012p:plain

また、全てのコードはこちらです、ご参照してください:

using System.Drawing;

using Spire.Pdf;

 

namespace Deleteblankpage

{

    class Program

    {

        static void Main(string[] args)

        {

            PdfDocument document = new PdfDocument();

            document.LoadFromFile("Wikipedia-C#.pdf");

            for (int i = 0; i < document.Pages.Count; i++)

            {

                PdfPageBase originalpage = document.Pages[i];

                if (originalpage.IsBlank())

                {

                    document.Pages.Remove(originalpage);

                    i--;

                }

            }

            document.SaveToFile("Wikipedia-C#withoutblankpage.pdf", FileFormat.PDF);

            System.Diagnostics.Process.Start("Wikipedia-C#withoutblankpage.pdf");

        }

    }

}

 

以上は今回の記事でした、最後まで読んでいただき、誠にありがとうございます!