关于Net Core环境下itextsharp 注册字体问题

C#版本升级到net core版本时, itextsharp库文件也要升级到net core版本,目前使用版本是:itextsharp.netstandard

注册字体方法: FontFactory.RegisterDirectory("C:\Windows\Fonts", true);

出现:FontFactory.RegisteredFamilies 只返回6种字体,操作系统默认大部分字体都未注册成功,导出pdf出现字体异常

 

解决方法: System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance); // 可能是编码问题

另:xml文件编码为gb2312,在net core下读取也要问题,需要设置为utf-8

 

参考:https://www.cnblogs.com/sun8134/p/11423388.html 建议

iTextSharp 是一个流行的用于处理 PDF 文件的开源库,它是基于 .NET 平台开发的。然而,由于 .NET Core 的发展,iTextSharp 没有直接支持 .NET Core版本。 在 .NET Core 中,我们可以使用 iText7 库来处理 PDF 文件并进行签名操作。iText7 是 iTextSharp 的后续版本,它提供了对 .NET Core 的全面支持。 要在 .NET Core 中使用 iText7 进行签名操作,需要执行以下步骤: 1. 首先,将 iText7 库添加到项目的依赖项中。可以通过 NuGet 包管理器或手动下载和添加 DLL 文件来实现。 2. 创建一个 PDF 文档对象,并加载待签名的 PDF 文件。 3. 生成一个数字证书,用于签名操作。可以使用 .pfx 或 .p12 格式的数字证书文件,或者使用自己生成的证书。 4. 创建一个数字签名对象,并配置相关的签名属性,如签名位置、签名者名称等。 5. 使用数字证书对 PDF 文件进行签名,并将签名信息添加到 PDF 文档中。 6. 保存修改后的 PDF 文档到指定的位置。 通过以上步骤,我们可以在 .NET Core 中使用 iText7 库来对 PDF 文件进行签名操作。需要注意的是,签名操作涉及到数字证书的生成和使用,需要确保证书的合法性和安全性。 总之,虽然 iTextSharp 没有直接支持 .NET Core,但我们可以通过使用 iText7 来实现在 .NET Core 中进行 PDF 签名的功能。通过适当的配置和使用数字证书,我们可以在 .NET Core 应用程序中实现 PDF 文件的签名操作。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值