0

我正在编写一个应用程序来使用 Java 和 JSOAP 从网站上抓取一些文章。该应用程序将文章的某些部分编译为 .tex ( LaTeX ) 文档,然后使用 PDFLatex 将其转换为 PDF。

一些页面包含 HTML 实体,如 & 或 ",这些在 PDF 转换过程中会导致错误。如何解决此问题?

4

2 回答 2

1

tex-exchange 上的这个问题有一个指向简洁转换列表的链接。列是(按顺序):

  1. html 实体(忽略大小写),没有 the&和 the;
  2. 对应的unicode字符
  3. 相应的乳胶命令(如果可用)。没有\

以此列表为起点编写一些转换代码应该很容易。

于 2012-09-13T19:14:43.300 回答
0

HTML 使用标签来构造数据,标签由字符序列定义。这些标签以某些字符开头并包含某些字符,如果要使用分隔标签部分的字符之一,则需要使用字符实体来表示它们。

这意味着这&不是对单个字符进行某种奇怪的编码,它实际上是五个字符,它们组合起来是向 HTML 渲染器(如 Web 浏览器)发出的信号,即只&显示该字符。

Tex 是一种不同的野兽,它没有&与 HTML 一样使用“裸”的限制,因此在使用 Tex 处理此类数据之前,您需要使用常规字符对所有 HTML 字符实体进行字符串替换。

请注意,有两种类型的字符实体。一组包括“命名”实体,分别为 like&gt;&lt;(><),而第二组是“编号”实体。编号实体看起来像&#32;,本例中的“32”指的是 ISO-8859-1 字符代码(本例中为空格)。

于 2012-09-13T19:12:27.343 回答