问题标签 [xmlhelper]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 使用 ITextSharp XMLWorkerHelper 和解析 HTML 的性能缓慢
我最近遇到了一个性能问题,涉及 ITextSharp 需要很长时间(通常是 30 多秒)来呈现 HTML 内容(从 CKEditor、TinyMCE 等 HTML 编辑器传递)。
以前,HTMLWorker 用于解析内容,效果很好。它快速且相当准确,但是当开始传入更复杂的 HTML(例如表格、有序列表和无序列表)时,它开始动摇:
在这种情况下,复杂的标记是必需的,我没有尝试执行正则表达式手术和其他讨厌的事情来尝试解决这些问题,而是选择使用 XMLWorker 来处理解析。
XMLWorker 结果令人难以置信,它输出了我们需要的所有内容,但它的性能使它几乎无法使用。随着内容的复杂性增加(通过额外的表格、样式和列表),加载时间也增加了。
上面的行似乎是性能瓶颈,使用它尝试几种不同的替代方案根本没有帮助(例如创建一个基本的自定义 XmlHandler)。
可能的原因和想法
我尝试检查并从传入的内容中删除任何无关的和无效的标记,但这并没有起到什么作用。
问题可能出在 iTextSharp 本身以及 XMLWorkerHelper 的工作方式上吗?我尝试在这里的 iText XML Helper Demo中使用 SAME 输入,而且速度非常快。我认为性能至少具有可比性。
当前的考虑是使用一种存储方法来实际存储呈现的 PDF,然后按需检索它们,而不是动态生成它们。我宁愿避免这种情况,但它在桌面上。
内容是从 Microsoft Word ( cringe ) 中粘贴的,我已尝试尽可能多地清理它,但我认为这不是一个大问题,因为上面提到的 iText 演示对于相同的内容没有大问题。
使用 iTextSharp 的可能替代方法?
我很乐意提供任何其他详细信息和代码。
c# - 从 xml 文件加载
我正在尝试通过 Robert Harvey 代码在此加载和保存数据主题中加载和保存数据。我可以保存。但加载过程并不成功。
我努力了 :
我没有为 Item 找到正确的命名空间
但它们都有下面列出的错误。
我想以 arraylist 或 double[] 的形式检索这些数字;
XML 内容:
java - XMLWorkerHelper 在 Java 中给出错误
我正在尝试在 Java 中使用 iText 创建 PDF。当我尝试在我的 PDF 中编写 HTML 标签时,它创建的<a href="https://www.google.co.in">Google</a>
不是 Google(作为链接)。搜索网络后,我尝试使用XMLWorkerHelper
. 但是我的日食给出了错误,因为The method parseXHtml(PdfWriter, Document, InputStream) from the type XMLWorkerHelper refers to the missing type PdfWriter
我没有得到这个错误。
我想知道我应该使用哪个 PdfWriter。我正在使用xmlworker-5.4.1.jar
jar 文件。
java - 在 Itext 中使用 XMLWorkerHelper 时未设置图像宽度和高度
嗨,我正在尝试将图像添加到我的 pdf 中。它正在被添加,但问题是我无法设置用户定义的宽度和高度。我正在使用XMLWorkerHelper
转换 HTML 代码并将其写入 PDF。
在这里,我将宽度和高度设置为 50 和 75 像素。但是原始图像被添加到 PDF 中。我该如何纠正这一点。
c# - 验证 XML 文件中的 NodePath
我有特定的值传递给一个方法(它也接受一个 xmldocument 作为参数),并且该方法需要验证该值(具有节点路径)是否实际上是 xml 文档所代表的 xml 文件的一部分。
因此,例如,如果方法是这样的
现在的问题是 nodePath 具有以下值(以 efile 作为命名空间)
efile:ReturnState/efile:ReturnDataState/efile:processBO/composition/forms/IT204CP
而代表xml文件的xmlDocument没有这个名字空间efile。
所以它总是返回假,但如果我只是通过
ReturnState/ReturnDataState/processBO/composition/forms/IT204CP
它返回真。
那么,在 xmlHelper 或 XmlDocumentQuery 类中是否有任何方法可以忽略上面路径中的命名空间并只考虑
ReturnState/ReturnDataState/processBO/composition/forms/IT204CP
并寻找这个节点路径(如上所示,没有 efile)并验证它?
我正在寻找一种通用方法来替换命名空间,因为传递给该方法的 nodePath 可以在其中包含任何命名空间。
python-3.x - webp2y XML助手清理python3下的换行符
在我的 web2py 应用程序中,我正在处理一个项目列表,用户可以在其中单击每个项目的链接来选择它。一个项目有一个 UUID、一个标题和一个描述。为了更好地定位,项目描述也显示为链接标题。为了防止注入和转义描述中的标签,我使用 XML sanitizer,如下所示:
使用 Python 2 一切都很好。由于我已切换到 Python 3,因此我遇到了以下问题。当描述包含换行符时,消毒剂不再起作用。例如,我的 str_replace 例程生成的以下字符串可以在 Python 2 下由 XML 助手清理,但在 Python 3 下则不行:
清理转义的换行符
是 Python 3 的问题(但不是 Python 2)。XML 帮助器清理其他所有内容都没有问题(例如,小于或大于,我需要这些,因为如果没有描述,它会生成为<no description>
)。
在 Python3 下运行 web2py 的 XML 助手如何清理换行符?
感谢您的支持!
最好的问候克莱门斯
xml - xslt for-each 和排序问题
下面是我的 XLST。我的问题是为什么我的输出没有正确排序?它应该按升序排序,我尝试在没有辅助模板的情况下这样做并且它有效,但是一旦在模板中使用它就不会输出排序。
XSLT 代码: