Docnet Core 介绍
Docnet Core 是一个轻量级、高性能的 .NET PDF 操作库,依托于PDFium 渲染引擎,提供强大的 PDF 文档解析、渲染、操作等功能。它完全支持 .NET Standard 2.0,适用于Windows、Linux 和 macOS,具有以下核心功能:
1. 页面与文档信息获取
o 获取 PDF 版本、页面数量、页面宽高、旋转角度等。
2. 文本与结构提取
o 提取完整文本内容、字符集合及其边界框(bounding box)、字符字体大小和角度。
3. 图像渲染
o 将 PDF 页面渲染为 PNG 图像,支持字符边框叠加显示(用于调试或文本定位)。
4. 文档操作
o 拆分 PDF 文档、合并多个 PDF 文件、解锁受密码保护的 PDF 文件、将 JPEG 图像转换为 PDF 页面。
5. 跨平台支持
o 支持 Windows(x64/x86)、Linux 和 macOS。在 Linux/macOS 上运行时需安装libgdiplus。
合并 PDF 示例
以下是使用Docnet Core合并多个 PDF 文件的示例代码:
1. 安装 Docnet Core
通过 NuGet 安装:
【bash】
dotnet add package Docnet.Core
2. 合并 PDF 的代码示例
【csharp】
using Docnet.Core;
using System.IO;
class Program
{
static void Main(string[] args)
{
// 输入 PDF 文件路径
string inputPath1 = "file1.pdf";
string inputPath2 = "file2.pdf";
// 输出合并后的 PDF 文件路径
string outputPath = "merged.pdf";
// 调用 MergePdf 方法合并 PDF 文件
bool result = MergePdf(inputPath1, inputPath2, outputPath);
if (result)
{
Console.WriteLine("PDF 合并成功!");
}
else
{
Console.WriteLine("PDF 合并失败!");
}
}
static bool MergePdf(string inputPath1, string inputPath2, string outputPath)
{
try
{
using (var docLib = DocLib.Instance)
{
// 合并两个 PDF 文件
var bytes = docLib.Merge(inputPath1, inputPath2);
// 将合并后的字节数组写入文件
File.WriteAllBytes(outputPath, bytes);
}
return true;
}
catch (Exception e)
{
Console.WriteLine(#34;合并 PDF 时出错: {e}");
return false;
}
}
}
3. 代码说明
o DocLib.Instance:获取 Docnet 的实例。
o Merge方法:合并多个 PDF 文件,返回合并后的字节数组。
o File.WriteAllBytes:将合并后的字节数组写入文件。
为什么选择 Docnet Core?
1. 轻量高效:相比 iTextSharp、PdfSharp 等传统库,Docnet 更加轻量、高效。
2. 跨平台支持:支持 Windows、Linux 和 macOS。
3. 强大的解析与渲染能力:依托于 PDFium 渲染引擎,解析与渲染能力极强。
4. 简单易用:API 设计简洁,易于集成到项目中。
适用场景
o 读取 PDF 内容、提取信息或进行渲染展示。
o 构建文档检索系统、自动化归档系统。
o 将扫描图片(JPEG)转换为 PDF 进行存档。
总结
Docnet Core 是一个功能强大、轻量高效的 .NET PDF 操作库,特别适合需要跨平台支持、高性能解析与渲染的场景。合并 PDF 文件只是其众多功能之一,开发者可以根据需求灵活使用其他功能。