(La)TeX 网络浏览器

(La)TeX 网络浏览器

我今天早上有了一个想法,我想分享并了解是否有人已经在某个地方开发了它!

Mozilla 团队目前正在开发一款 JavaScript 应用程序,能够将任何 PDF 代码转换为 HTML5,因此您无需任何插件即可使用外部 PDF 阅读器(Adobe、Evince、Xpdf 等)。它目前是一个扩展,但将来可能会进入浏览器内核https://github.com/mozilla/pdf.js

使用它和在线文本编辑器(codeMirror),我的一些应用程序正在运行PDFlatex在服务器端...提供一些 (La)TeX 在线工具。这很常见。

如果使用同类型的 JavaScript 能够直接解析 (La)TeX 代码,并当然能够呈现 PDF 以供打印输出并在屏幕上进行页面定位,那会怎样?对于最终用户来说,它有一个 PDF Web 浏览器,但在要求查看源代码时,他拥有 (LaTeX) 代码。除了调试之外,最终的 HTML5 代码实际上并不会被看到,并且变得像传统 C 开发中的汇编代码一样。

这将提供对任何科学论文 (LaTeX) 源代码的访问......而不是重新发明一个数学公式,如果我没错的话,这就是 Knuth 的想法几十年前在构建 TeX 时就有了。人们应该共享 (La)TeX 代码,而不是 DVI、PS 或 PDF 代码。客户端浏览器(Firefox、Chrome、Opera、Safari 等)应该处理PDFlatex本地处理!


让我用另一种方式解释一下我的要求;

我在这个行业工作了 20 年,我想你们中的许多人也一样,在大学里使用过 TeX 和 LaTeX。看看我们对文档系统的真正主要要求,我认为行业,至少是我工作的关键嵌入式系统需要:

  • 可编程文档系统;您可以在其中使用非正式英语陈述来处理客户需求,从而推导和自动化许多事情,例如需求可追溯性、设计文档、测试序列等。

  • 非常漂亮/专业的渲染,完美的图形、表格、图解......

  • 确保此类文档是该版本且内容不会更改。Web 不提供打印输出上可见的“数字签名/摘要”。最好的“永久链接”、“永久内容”系统是 PDF 格式,这就是为什么官方文档是 PDF(不幸的是,这是一种未经优化的格式,但它在您需要静态文档的任何地方都使用)

众所周知,当行业中仅使用 MS Word 或其他 LibreOffice 时,用 LaTeX 生成的 PDF 文档确实比后者更能满足这些要求。

可能改变这一做法的是“云计算”的出现,它本身并不是一个革命性的想法,但事实上你永远不会下载文件。

Mozilla 的 jsPDF 扩展和 Chrome 嵌入式 PDF 阅读器正在迈出第一步,表明 PDF 实际上很像其他 HTML 页面(Google 也在寻找它们),这对于需要那些静态(永久链接/永久内容)文档的行业来说非常重要。

由于最优质的 PDF 均来自 LaTeX/TikZ 源,因此现在有机会为业界提供云端真正高效的文档系统。

但是如果你们(TeX 专家)为 TeX 的一个变体而争吵着要某个微小的高级功能的话,我们就没有机会看到 Web LaTeX 了,更重要的是,没有机会看到 LateX 有一天在工业界得到应用。

你说这是不可能的,因为太复杂了,也许你说得对。两年前,我也曾想过开发一个 JavaScript PDF 阅读器,现在看来,与 Adob​​e 原生阅读器相比,它的效果相当不错。

关于 JavaScript,我讨厌这种语言,但这是唯一一种支持客户端的语言。

答案1

我不想破坏乐趣,但有一些问题需要考虑。

  • LaTeX 只是宏语言 TeX 的一个宏格式/包。但有很多 TeX 编译器:

    • TeX
    • TeX 与 e-TeX
    • pdfTeX
    • 特克斯
    • LuaTeX
    • 虚拟专用网络
    • 很多别的 …

    LaTeX 文件可能依赖于特定的编译器,因为它使用了其他编译​​器未提供的编译器功能。

  • 我不知道 TeX 有没有 JavaScript 版本。甚至尝试过 Java 的项目也或多或少失败了(NTS、ExTeX)。

  • 编译该文件可能还需要其他程序:

    • 索引生成:Makeindex、Xindy
    • 参考书目:bibtex、bibtex8、biber、…
    • 有一个 shell 转义功能,允许调用外部程序。
  • LaTeX 文件并未说明应如何编译、需要哪些程序、以何种顺序运行、使用哪些参数、频率等……

  • “LaTeX 文件”可以组织在主文件中,其中包括其他文件、外部图像等……

  • 编译 LaTeX 文件通常需要写入和读取辅助文件的能力。

  • 通常,LaTeX 文件需要其他包、文件和字体。因此,您或多或少需要一个完整的 TeX 发行版及其(每日)更新。

相关内容