![](/img/trans.png)
[英]How do I underline internal links in an existing PDF using IText7 and C#?
[英]How do I pass in the path of GhostScript to iText7 CompareTool functionality?
我正在尝试在C#中使用iText7在视觉上比较pdf文件。 我无法弄清楚如何告诉iText7 GhostScript的安装位置。
我的机器上的环境变量已设置。 在代码中我也尝试过environment.setenvironmentvariable
消息:iText.Kernel.Utils.CompareTool + CompareToolExecutionException:未指定GhostScript的路径。 请使用-DgsExec =(例如-DgsExec =“ C:/ Program Files / gs / gs9.14 / bin / gswin32c.exe”)
该消息是iText的Java版本的文字端口,实际上并不适用于C#。
如果您查看CompareTool.cs的源代码 ,那么您将看到从第144行开始:
/// <summary>Creates an instance of the CompareTool.</summary>
public CompareTool() {
gsExec = SystemUtil.GetEnvironmentVariable("gsExec");
compareExec = SystemUtil.GetEnvironmentVariable("compareExec");
}
因此,您需要创建的确切环境变量不是-DgsExec
和-DcompareExec
,而是gsExec
和compareExec
。 -D
前缀只是在命令行上设置系统属性的Maven(来自Java世界的构建自动化工具)方式。
如果需要,可以向iText 7 .NET提交拉取请求以修复文档。 要更改的文件是itext/itext.kernel/itext/kernel/utils/CompareTool.cs
,要更改的行是72和94 。 在开始之前,请阅读贡献准则 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.