标签:
PDF格局的文档广泛应用于电子图书、产品说明、公司文告、网络资料、电子邮件等各类范围和场合。我们事情和学习中可能会遇到需要添加文档页来添加相应内容,或者删除文档中多出的空白页等情况,因此,本篇文章将介绍如安在C#中来实现添加、删除PDF空白页。 示例要点1.添加PDF空白页
1.1 在默认位置添加空白页(文档末)
1.2 在指定位置添加空白页
2.删除空白页
这里示例中使用的是免费版的.NET PDF控件 Free Spire.PDF for .NET(添加dll引用时,可在安置路径下的Bin文件夹中获取dll文件)
测试文档截图(文档包罗两页内容):
C#
//创建PDF文档1,并加载测试文档 PdfDocument doc1 = new PdfDocument(); doc1.LoadFromFile("sample.pdf"); //添加一页空白页到文档(默认在文档最后一页添加) doc1.Pages.Add(); //生存并打开文档 doc1.SaveToFile("result1.pdf"); System.Diagnostics.Process.Start("result1.pdf");测试功效:
C#
//创建文档2,加载测试文档 PdfDocument doc2 = new PdfDocument(); doc2.LoadFromFile("sample.pdf"); //添加一页空白页作为第2页 doc2.Pages.Insert(1); //生存并打开文档 doc2.SaveToFile("result2.pdf"); System.Diagnostics.Process.Start("result2.pdf");测试功效:
测试文档:
这里的测试文档中,包罗了两页空白页,一页空白页是没有任何内容的;另一页空白页是包罗了空白图片的页面,看似没有内容,但是这样的页面实际上也是不需要的。
C#
测试功效:
附:VB.NET代码(删除PDF空白页)
Imports Spire.Pdf Imports System.Drawing Imports Spire.Pdf.Graphics Namespace DeleteBlankPage_PDF Class Program Private Shared Sub Main(ByVal args As String()) Spire.License.LicenseProvider.SetLicenseFileName("license.elic.xml") Dim document As PdfDocument = New PdfDocument() document.LoadFromFile("Test.pdf") For i As Integer = document.Pages.Count - 1 To 0 If document.Pages(i).IsBlank() Then document.Pages.RemoveAt(i) Else Dim image As Image = document.SaveAsImage(i, PdfImageType.Bitmap) If IsImageBlank(image) Then document.Pages.RemoveAt(i) End If End If Next document.SaveToFile("RemoveBlankPage.pdf", FileFormat.PDF) System.Diagnostics.Process.Start("RemoveBlankPage.pdf") End Sub Public Shared Function IsImageBlank(ByVal image As Image) As Boolean Dim bitmap As Bitmap = New Bitmap(image) For i As Integer = 0 To bitmap.Width - 1 For j As Integer = 0 To bitmap.Height - 1 Dim pixel As Color = bitmap.GetPixel(i, j) If pixel.R < 240 OrElse pixel.G < 240 OrElse pixel.B < 240 Then Return False End If Next Next Return True End Function End Class End Namespace以上全部内容为本次关于“C# 添加、删除PDF空白页”的全部内容,欢迎转载(转载请注明来由)
感谢感动阅读!