C# iText 7试用许可证
我想尝试iText7 PDF扁平化与试验许可证。 调用展平方法时,它抛出异常“找不到方法:Boolean iText.license.LicenseKey.IsTrial() 这是否意味着展平法不能与试用许可证一起使用,或者我犯了一些错误? 我使用NuGet的itext7,所有组件均采用最新的稳定版本: itext7 v7.1.0 itext7.LicenseKey v3.0.0 itext7.pdfxfa v1.0.2 我已经成功地从.xml文件加载了试用许可证 以下是我的代码示例:C# iText 7试用许可证,c#,.net,pdf,itext7,xfa,C#,.net,Pdf,Itext7,Xfa,我想尝试iText7 PDF扁平化与试验许可证。 调用展平方法时,它抛出异常“找不到方法:Boolean iText.license.LicenseKey.IsTrial() 这是否意味着展平法不能与试用许可证一起使用,或者我犯了一些错误? 我使用NuGet的itext7,所有组件均采用最新的稳定版本: itext7 v7.1.0 itext7.LicenseKey v3.0.0 itext7.pdfxfa v1.0.2 我已经成功地从.xml文件加载了试用许可证 以下是我的代码示例: byte
byte[] result;
LicenseKey.LoadLicenseFile(_path.MapPath("~/itextkey?????????????.xml"));
XFAFlattenerProperties flattenerProperties = new XFAFlattenerProperties()
.SetPdfVersion(XFAFlattenerProperties.PDF_1_7)
.CreateXmpMetaData()
.SetTagged()
.SetMetaData(
new MetaData()
.SetAuthor("xxxxxxx")
.SetSubject("xxxxxx")
.SetTitle("xxxxxx"));
XFAFlattener xfaf = new XFAFlattener()
.SetFontSettings(new XFAFontSettings().SetEmbedExternalFonts(true))
.SetFlattenerProperties(flattenerProperties)
.SetViewMode(XFAFlattener.ViewMode.SCREEN);
using (var dest = new MemoryStream())
{
xfaf.Flatten(new MemoryStream(source), dest);
result = dest.ToArray();
}
return result;
错误消息,如
找不到方法:布尔iText.license.LicenseKey.IsTrial()
通常表示正在使用不兼容的库。在本例中,(旧的)pdfxfa v1.0.2与(新的)LicenseKey v3.0.0不兼容
正如您最终看到的,返回itext.licencekey库的v2.0.4可以解决这个问题
如果查看中的兼容性矩阵,您将看到itext7 v7.1.0和licencekey v3.0.0旨在与pdfXFA v2.0.0一起使用。您可能希望最终使用这些版本 “找不到方法:Boolean iText.license.LicenseKey.IsTrial()。”-此错误消息听起来像是您的特定iText库版本和iText许可证库版本不兼容。我特别指出,pdfxfa版本似乎依赖于旧的licencekey版本,而您的iText core依赖于新的版本。返回iText的v2.0.4。licencekey库解决了这个问题。谢谢@mklOk。我稍后会给出一个实际的答案。这是完全正确的,PDFXFA2.0.0计划在一月份发布。pdfXFA没有在12月发布,因为pdfXFA与XFAWorker同时发布,而且XFAWorker与iText 5发布计划(iText 5.5.13)相关联。