雷达智富

首页 > 内容 > 程序笔记 > 正文

程序笔记

PDFiumCore | .NET Core PDF 处理渲染库

2024-10-20 59

在处理 PDF 文件时,渲染和解析的准确性、速度和稳定性是至关重要的。PDFiumCore,作为.NET 环境下的一个强大库,为开发者提供了高效、便捷的 PDF 处理能力。PDFiumCore 是基于 Foxit Software 的 PDFium 库的一个封装,它使得.NET 开发者能够轻松地集成 PDF 渲染和处理功能到他们的应用程序中。

PDFiumCore GitHub地址https://github.com/Dtronix/PDFiumCore

PDFiumCore 的特点

高性能:PDFiumCore 继承了 PDFium 的高性能特性,能够快速渲染 PDF 页面。 准确性:它能够准确地解析和渲染 PDF 文件,包括复杂的布局和字体。 跨平台:PDFiumCore 支持多种操作系统,包括 Windows、Linux 和 macOS。 易于集成:作为.NET 库,它可以轻松地集成到现有的.NET 项目中。

使用 PDFiumCore 的基本步骤

安装 PDFiumCore:你可以通过 NuGet 包管理器来安装 PDFiumCore。 初始化库:在使用 PDFiumCore 之前,需要先初始化库。 加载 PDF 文档:使用 PDFiumCore 的 API 来加载 PDF 文件。 渲染 PDF 页面:选择特定的页面进行渲染。 释放资源:完成操作后,确保释放所有占用的资源。

PDFiumCore C# 示例代码

下面是一个简单的 C# 示例,展示了如何使用 PDFiumCore 来加载和渲染 PDF 文件的一页:

using System;
using PdfiumCore;
using System.Drawing;

class Program
{
static void Main()
 {
// 初始化 PDFiumCore 库
 Pdfium.Initialize();

// 加载 PDF 文档
using (var document = PdfDocument.Load("example.pdf"))
 {
// 获取第一页
var page = document.GetPage(0);

// 渲染页面到 Bitmap
using (var bitmap = RenderPageToBitmap(page, 300, 300))
 {
// 保存 Bitmap 到文件(可选)
 bitmap.Save("page1.png", System.Drawing.Imaging.ImageFormat.Png);
 Console.WriteLine("Page rendered and saved to page1.png");
 }
 }

// 清理 PDFiumCore 库资源
 Pdfium.Terminate();
 }

static Bitmap RenderPageToBitmap(PdfPage page, int width, int height)
 {
// 创建一个 Bitmap 对象来保存渲染结果
var bitmap = new Bitmap(width, height);
var bmpData = bitmap.LockBits(new Rectangle(0, 0, bitmap.Width, bitmap.Height), 
 System.Drawing.Imaging.ImageLockMode.WriteOnly, 
 bitmap.PixelFormat);

// 渲染 PDF 页面到 Bitmap
 page.RenderToBitmap(bmpData.Scan0, bitmap.Width, bitmap.Height, 0, 0, 
 bitmap.Width, bitmap.Height, false);

 bitmap.UnlockBits(bmpData);
return bitmap;
 }
}

在这个示例中,我们首先初始化了 PDFiumCore 库,然后加载了一个名为 "example.pdf" 的 PDF 文件。接着,我们获取了文档的第一页,并使用 RenderPageToBitmap 方法将其渲染到一个 Bitmap 对象中。最后,我们将这个 Bitmap 对象保存为一个 PNG 文件,并清理了 PDFiumCore 库的资源。

为了运行这个示例,你需要在项目中添加对 System.Drawing 的引用,并确保 PDFiumCore 库已经通过 NuGet 安装到你的项目中。

PDFiumCore 是一个强大的工具,它使得.NET 开发者能够轻松地处理 PDF 文件。通过上面的示例代码,你可以看到如何在 C# 中使用 PDFiumCore 来加载、渲染和保存 PDF 文件的页面。

更新于:1个月前
赞一波!

文章评论

评论问答