HTML 页面支持哪些功能,但 PDFLaTeX 不支持这些功能

HTML 页面支持哪些功能,但 PDFLaTeX 不支持这些功能

作为一名数学教育工作者,我对 TeX 的了解有限,对 HTML 的了解更是有限,我想知道我是否可以使用 PDF 页面(通过 PDFLaTeX 生成)作为网页。我希望不必再学习一门语言,即 HTML!,并且不会失去 TeX 输出的吸引力。

当然可以,但我会失去哪些功能?

我想要一个可复制的基于 HTML 的网页功能列表、执行该任务的软件包以及以外行人能理解的语言显示该功能实际上是什么的链接。

以下是我学到的几件事。

  1. 有大量用于超引用的工具,如hyperrefurlhref包:维基百科
  2. 您可以使用以下方式嵌入媒体movie15media9包。
  3. 你可以使用下拉菜单popupmenu包裹。
  4. 您可以获得鼠标悬停工具提示:fancytooltips

负面方面(不建议/不可能/有问题的情况)

  1. 包括 Java 应用程序:线程 1线程 2
  2. 调整页面大小(Adobe Reflow)。
  3. 动态页面(如同页面下拉一样)。

编辑1:

我正在寻找有关在线教科书的成功范例的建议,这些教科书将传统书籍的外观与高水平的交互性相结合。想象一下哈利波特风格的报纸,其中嵌入了数学交互元素(如 Matlab/Maple/Mathematica 窗口或交互式网页)。提供笔记本的非商业软件包括智者

答案1

这确实是一个很好的问题,因为这正是刚开始学习的人需要知道的事情,但很难弄清楚如何询问或用谷歌搜索。

不幸的是,要实现你所描述的目标,你必须在某些方面做出一些让步才能实现你所说的目标。不幸的是,因为我认为你可能想要走网络应用程序的路线,除非打印质量是主要考虑因素。

首先,我要指出的是Mathematica Player 及其“开放” CDF 格式。这可能会立即满足您的需要,尽管您最终可能会花费大量的 Mathematica 资金来实现这一切。

关于 HTML 和 PDF,虽然可以在 PDF 中嵌入 JavaScript 和电影,但这种事情很少发生。将 PDF“嵌入”(实际上是链接)到网页中比尝试在 PDF 中执行那些最好在网页中完成的操作要容易得多。

哪些事情通过网页会变得更容易?大多数事情:

  • 与其他用户实时互动
  • 社会废话
  • Facebook、Twitter、Youtube 链接和嵌入
  • 大多数类型的动态生成内容
  • 交互式图表和图形,例如d3.js
  • 交互式 3D 可视化,例如使用 Canvas 3D
  • 实时更新——修复拼写错误,每个人在重新加载页面时都会立即看到修复

从本质上来说,使用 HTML 你将放弃以下东西:

  • 能够完美控制其在某人的计算机上的显示效果。

    不同的计算机和不同的浏览器对同一页面的呈现方式不同。即使是同一系统上的同一浏览器也可能配置不同 — 替换字体、最小尺寸和用户样式表都可能彻底改变显示效果。如果您使用 HTML 并尽力而为,就必须接受这一点。

  • 控制打印效果的能力。有一些打印 CSS 规则可让您获得美观的打印输出,但 TeX 为您做的很多事情(例如页码)将无法实现。浏览器将尝试为您完成这些工作,但效果不佳。对页眉和页脚的直接控制很少。

  • 奇特的 TeX 算法。没有自动连字符,没有 TeX 对齐规则,没有悬挂标点。数学无法自动很好地呈现 — MathML 比 TeX 数学更需要手动操作。

  • TeX 所做的任何程序性工作。没有目录生成。没有参考书目管理。没有自动脚注。

  • 从某种程度上来说,能够具有线下参考的能力。

现在,好消息是,您可以通过合理使用 JavaScript 来改善很多这些问题。

  • MathJax渲染 TeX 数学。
  • 甜蜜正义实现连字。
  • 排版实现实际的 TeX 对齐算法。
  • 潘多克可以在各种格式之间转换,包括 LaTeX 和 HTML;其中一些纯文本格式支持其中一些功能 -Markdown例如,支持脚注。
  • jQuery经常用于实现奇/偶规则,并且可以轻松用于实现各种程序效果,尽管它比此列表中的其他项目更像是一种通用工具。

利用这些不同的技术为网络创建一种“TeX 模板”并不难。此时,您主要缺少的是样式,但主要是书本级的功能,如页眉和页脚。当然,在某些方面,TeX 仍然比这些库做得更好,因为它有更好的信息,调试得更好,而且可以花时间把它做好,但您肯定可以达到可接受的质量(不完全是排版),并完成您需要做的所有其他事情。

关于学习完后还有标记语言,我真的建议你研究一下 Pandoc。那里可能有一种简化的格式,不需要太多的脑力劳动就可以使用。另一方面,HTML 并不是特别复杂。CSS 更复杂,但在我看来,它们两者结合起来并不像 TeX 那么糟糕,主要是因为外观和含义的分离更清晰——至少应该如此,而且实现起来并不难。但你可以用 CSS 重置走得更远,比如蓝图加上带有 Markdown 的 Pandoc,插入其中一些库和大约 30 行 JavaScript。

我希望这能让你更接近你想要的目标,而不是将 PDF 弄得一团糟。但我的职业是网络开发人员,并且(最近)为了好玩而兼职做 TeX,所以我可能有偏见。

编辑2014-10-10:也许值得研究一下 WHATWG 标准书籍 CSS

相关内容