如何显示&等特殊字符在 iTextSharp 生成的 pdf 报告中?

发布于 2024-10-23 21:58:18 字数 190 浏览 1 评论 0原文

在使用 iTextSharp 以编程方式生成 pdf 报告时,我必须打印 &报告中。但是当我在 ItextSharp 使用的 pdf 模板中输入 this(&) 时,它被标记为错误。鼠标悬停时显示的错误是“字符 '',十六进制值 0x20 在 XML 名称中是非法的。”。

谁能告诉我如何实现这一目标???

提前致谢。

While generating pdf reports programatically by using iTextSharp, I have to print the & in the report. But when i type this(&) in the pdf templates used by ItextSharp it is marked as an error. The error shows on mouse hover is "Character '', hexadecimal value 0x20 is illegal in an XML name.".

Can anyone let me know how to achieve this???

thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

错爱 2024-10-30 21:58:18

我想您需要对您尝试插入的任何文字文本进行 HTML 编码 - & 通常会被解释为实体的开头,并且通常应编码为 & ;amp;HttpServerUtility.HtmlEncode 支持 HTML 编码。

但是,我们在这里确实需要小心,因为报告的错误涉及 XML 错误,并且 HTMLXML 之间的命名实体列表不同>。我刚刚在 System.Xml 命名空间中查找,找不到任何专门帮助您生成有效 XML 数据的类 - 您也可以选择将文本文字放在 CDATA 中 (, ]]>) 部分。

I'd imagine that you need to HTML encode any literal text you're trying to insert - & would generally be interpreted as the start of an entity, and should normally be encoded as &. There's support for HTML encoding in HttpServerUtility.HtmlEncode.

However, we do need to be careful here, since the reported error concerns an XML error, and the list of named entities differs between HTML and XML. I've just been looking in the System.Xml namespace, and can't find any class that specifically helps you produce valid XML data - you might alternatively choose to place your text literals inside a CDATA (<![CDATA[, ]]>) section.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文