许多 PDF 从未打印出来而是以电子形式阅读,对于至少某些读者和阅读风格来说,拥有一个可供读者连续滚动的单页会很有利。
有没有办法调整“纸张”大小,让整个文档适合放在一个“页面”上?TeX 架构的某些方面是否会使这变得困难;软件包或流行文档样式的功能是否会被破坏?
我特别想为凝固胶乳,其(用侧注代替脚注和引文)非常适合这种情况。
答案1
Veytsman 和 Ware 在 Tugboat 32 (2011) 261 的一篇题为“电子书和纸张尺寸:输出程序变得更容易”的文章中给出了一个解决方案,可在以下网址找到:https://tug.org/TUGboat/tb32-3/tb102veytsman-ebooks.pdf
他们的想法不是为整个文档制作一个大页面,而是为每个部分制作一个页面,并且他们找到了一个技巧,将页面大小动态设置为没有空白的文本的实际大小。
我使用他们的想法制定了一个软件包的初步版本。
您可以找到该包、一个测试文件和一个生成的 pdf 文件示例。您可以尝试修改它,让整个文档占据一页。
结果取决于最大维度\maxdimen
的 TeX。
答案2
\documentclass{article}
\setlength\textheight{30\textheight}
生产
! Dimension too large.
<recently read> \textheight
因此,简单地制作一个很高的页面会给即使是相当简单的文档带来问题。
TeX 的架构通常会尝试尽快清除页面,与换行不同,换行会以最小成本分析整个段落的换行,而分页(通常)一次仅考虑一个潜在换行,并且滚动页面所占用的内存会被回收。这使得 TeX 即使在当时可用的内存很小的情况下也能处理任意长的文档。
当然,现在有更多内存可用,但目前还不清楚 TeX 如何适应。可能的做法是有一个简化的输出例程,可以连续输出页面而不添加页眉或页脚;然后使用 pdf 工具进行简单的后期处理可以将页面重新拼接在一起。
答案3
我相信修改文档的某些属性将使您非常接近想要的结果,甚至不需要一页长页面。有时会出现空白的垂直空间,但使用这些设置并不常见。请参阅注释的 MWE:
\documentclass[a4paper]{article}
\usepackage[margin=1mm]{geometry} % no margins
\usepackage[bottomtitles]{titlesec} % allow titles to be at the bottom of the page
\widowpenalty=0\relax % no empty lines at the end of page
\clubpenalty=0\relax % no empty lines at the end of page
\pagestyle{empty} % no headers or footers
\usepackage{lipsum}
\begin{document}
\lipsum[1-60]
\end{document}
答案4
您可以尝试以下 5 米页面并查看问题。您的用户将不知道或不知道文档将在何处结束,您可以在末尾滚动吗?
\vsize500cm
\vbox to 575cm{
\vrule height500cm
}
\bye
(大多数阅读器无法正确显示)