PDF文書の空白ページをどうやって削除しますか
日常の仕事生活ではよくPDFを使いますが、PDF文書の中には一ページか何ページかの空白の文書があります。多くの人はこれらの空白のページをどうやって削除するか分かりません。ここでは、無料コントロール Free Spire.PDFを使って、PDFドキュメントの空白ページを削除する方法を紹介します。
空白のページは通常、何も含まないページとして定義されます。Free Spire.PDFはPDFページが絶対的に空白かどうかを検出する方法を提供している。しかし、いくつかの「空白ページ」は実際に白い画像を含むことができます。IsBank()方法を使って、空白とは見なされません。これらの白を検出するには、空白ページではないので、カスタムメソッドIsImageBlank()が作成されました。
追加する名前空間が必要です:
using Spire.Pdf;
using System.Drawing;
using Spire.Pdf.Graphics;
完全コード:
namespace PDF
{
class Program
{
static void Main(string[] args)
{
// PDF文書を読み込む
PdfDocument pdf = new PdfDocument();
pdf.LoadFromFile("Sample.pdf");
//ページを巡回
for (int i = 0; i < pdf.Pages.Count; i++)
{
//空白ページかどうかを判断する
if (pdf.Pages[i].IsBlank())
{
//空白のページを削除
pdf.Pages.RemoveAt(i);
}
else
{
//空白のページでない場合は、ページを画像に変換します
Image image = pdf.SaveAsImage(i, PdfImageType.Bitmap);
//画像が空白かどうかを判断します
if (IsImageBlank(image))
{
//画像が空白の場合、対応するPDFページを削除します
pdf.Pages.RemoveAt(i);
}
}
}
pdf.SaveToFile("Result.pdf", FileFormat.PDF);
}
public static bool IsImageBlank(Image image)
{
Bitmap bitmap = new Bitmap(image);
for (int i = 0; i < bitmap.Width; i++)
{
for (int j = 0; j < bitmap.Height; j++)
{
Color pixel = bitmap.GetPixel(i, j);
if (pixel.R < 240 || pixel.G < 240 || pixel.B < 240)
{
return false;
}
}
}
return true;
}
}
}
Author And Source
この問題について(PDF文書の空白ページをどうやって削除しますか), 我々は、より多くの情報をここで見つけました https://qiita.com/iceblue/items/3195b108ab4a99e6af3b著者帰属:元の著者の情報は、元の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 .