c# - 将 xsl - fo 转换为 pdf
问题描述
我有一个 XSL-FO 文件,数据以 xml/json 格式提供。我想使用这个 xsl 结构创建一个 pdf。
任何人都可以建议任何开源库进行转换吗?我希望它在 C# 级别完成。
注意:我尝试转换为 html,但由于它是 xsl-fo 文件,我无法对齐。
解决方案
您可以使用 Apache FOP ( https://xmlgraphics.apache.org/fop/ ) 工具。它可以从 XSL-FO 输入生成 PDF 文档。
从 C# 可以启动 Apache FOP 进程,将其指向 XSL-FO 文件(或使用标准输入,因此您不必使用任何临时文件)。进程存在后,您将获得 PDF 文件(在磁盘或标准输出中的文件中)。
首先,您可以让 Apache FOP 读取 XSL-FO 文件并将 PDF 文件写入磁盘,用于该使用Process
类(https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.process?view=网络框架 4.8):
代码片段草稿(可能包含错误,但对您来说应该是一个好的开始):
Process.Start("C:\\path\\to\\fop input_xsl-fo.xml output.pdf").WaitForExit();
推荐阅读
- javascript - 如何在元素外部的任何位置单击时隐藏该设置框
- python - 如何在 MATLAB 和 Python 中为 fft2() 获得相同的结果?
- python - Pycharm使用两个项目运行
- python - 根据指定的键索引列表的次数可变
- php - 如何忽略来自xml文件的标签?请看例子
- mongodb - 从两个 MongoDB 表中选择数据并更新结果
- php - 如何在 Laravel 中使用 eloquent 基于多对多关系从表中检索记录?
- ethereum - 重新启动本地服务器后无法使用 web3 访问已部署的合同
- c# - 包括实体框架核心(数据循环)
- android - 一起调用 connectGatt() 和 createBond()