是否有一些使用 XML 符号的排版系统?

是否有一些使用 XML 符号的排版系统?

是否有某种使用 XML 进行标记的排版系统?我无意冒犯,但我不喜欢打字,\emph{This \emph{text} is important}尽管有编辑器可以帮你打字。(不过我认为真正的铁杆 LaTeX 使用者不会使用它们。)

我宁愿做以下的事情,因为根据我的观点和键盘布局,这样打字更容易:

<em>This <em>text</em> is important</em>

尽管有很多 XML 解析器,并且 XML 的样式对我来说更简单、更清晰、更常见。但我不认为 HTML 满足我的需求,因为它是一种超文本,而不是文档标记语言。

附加问题:您能列出编写大型文档时使用 HTML 而不是类似 LaTeX 的排版系统的一些缺点吗?

答案1

文档书绝对是 XML 文档编写的标准。我听说过数据与信息技术协会,但无法透露太多相关信息。

你可以使用 ConTeXt 处理 XML。它通过定义 XML 标签和 TeX 标记指令之间的映射来工作。这应该会给您带来 DocBook(通用、基于 XML)的好处以及 ConTeXt 在文档美观和格式化方面的许多好处。

虽然 TeX 和 HTML 之间存在许多特别令印刷师感兴趣的差异,但在我看来,使用 TeX、LaTeX 或 ConTeXt 等系统的最大优势在于,由于它们是可编程的,因此您可以扩展它的功能。例如,我讨厌手动维护索引,或者不得不记住有关如何格式化引文的所有繁琐细节。所有 TeX 变体都可以为您完成这些任务,甚至更多,而且作为 TeX,它们为您提供了一种将其扩展到您独特问题的方法。通过 XSLT 自定义 DocBook 渲染是一项相当繁琐的工作。您必须学习 XSLT、XPath、XSL:fo,并找到一个高质量的 FO 处理器。上次我研究这个问题时,开源 FO 处理器不是很好,而商业处理器也不便宜。(当然,如果只生成 HTML 输出,您可以消除这种依赖关系。)

HTML 根本不像 TeX 那样可编程。您当然可以找到使用 TeX 或其他类型标记并生成 HTML 的软件包,但您找不到许多以 HTML 开头并生成其他内容的系统。手动管理 HTML 很麻烦,尤其是当您想在一组页面中保持相似的结构时。CSS 有很多事情根本无法做到。HTML 文档和 HTML 页面之间存在 1:1 映射,而 TeX 则不同,因为这些概念没有关联。

最近我听到最多的竞争系统是狮身人面像,这可能更适合记录主要注重 HTML 输出的编程项目。

答案2

ConTeXt 可以直接处理 XML。

参见 Thomas 的我的方式和官方文档

答案3

文档书 XML格式,可用于书籍或其他形式的文档。例如Apache FOP它可以将其编译为 PDF。优点是它可以比 LaTeX 更容易地转换为 HTML 等其他格式。我从颠覆它是用 DocBook XML 编写的,因为出版商 O'Reilly Media 希望以这种方式制作印刷版和在线(PDF、HTML)副本。

缺点是你没有 TeX 的排版能力,也就是说,生成的 PDF 相当丑陋。不过DocBookXML 到 LaTeX 转换器首先可以从中生成 LaTeX。上次我尝试时,生成的代码也不是很惊人。

答案4

“排版”这个词我很久没听说过了——这就是为什么谷歌在这方面可能不是你的好朋友!有许多 XML 词汇表专为编写文档而设计(一些流行的词汇表是用于软件文档的 DocBook、用于科学/学术论文的 NLM、用于几乎所有其他内容的 DITA),它们都带有用于以各种形式生成输出的工具。更接近印刷技术的是 XSL-FO(格式化对象),它是一种基于 XML 的页面布局词汇表:你不会直接使用它来编写文档,而是将其用作作者视图和最终纸上墨迹之间的中间格式。

相关内容