![虚假空间是如何被真正利用的?](https://linux22.com/image/307520/%E8%99%9A%E5%81%87%E7%A9%BA%E9%97%B4%E6%98%AF%E5%A6%82%E4%BD%95%E8%A2%AB%E7%9C%9F%E6%AD%A3%E5%88%A9%E7%94%A8%E7%9A%84%EF%BC%9F.png)
我浏览了2014 年 TUG并跌倒了使用 pdfTeX 实现“伪空间”——两全其美作者:Ross Moore。摘要写道:
在 TeX Live 2014 版中,pdfTeX 中包含了新的原语,允许
pdffakespace
将其插入到 PDF 内容流中,出现在单词之间和行尾。
尤其有趣的是:
还将展示如何利用虚拟空间将额外的材料(例如内联或显示的数学 LaTeX 源)隐藏在 PDF 中。选择/复制/粘贴数学表达式后,所包含的源代码将随粘贴的文本一起出现。
不幸的是,没有可用的幻灯片,并且会议记录似乎不包含任何有关此内容的内容(作为非会员,我无法访问它们)。
这些假空间目前有哪些应用?特别是,数学的复制粘贴是否已经实现,以便可以毫无缺点地使用?
答案1
关于你的观点,特别是,数学的复制粘贴是否已经实现,以便可以毫无不利地使用
我不知道您引用的具体内容,但该accsupp
软件包允许在 PDF 中显示不同的东西,而不是在复制粘贴中显示的内容。
修订的解决方案(使用 Raphael 的建议\detokenize
)
看起来,这\detokenize
减轻了对排版文本和实际 PDF 文本单独参数的需求,这将大大简化此方法的使用。我向他表示感谢。
我还展示了这对\displaystyle
数学是如何起作用的。
\documentclass{article}
\usepackage{accsupp}
\newcommand\copypaste[1]{%
\BeginAccSupp{method=escape,ActualText={\detokenize{#1}}}%
#1%
\EndAccSupp{}%
}
\begin{document}
What I have is \copypaste{$x^2 + y^2 = z^2$} and \copypaste{$\frac{1}{2}$}.
Try to copy/paste me.
\copypaste{\[
y = \frac{\cos{x}}{1+\cos{x}}
\]}
Here it is with no copy/paste tuning: $x^2 + y^2 = z^2$ and $\frac{1}{2}$.
\[
y = \frac{\cos{x}}{1+\cos{x}}
\]\end{document}
PDF 的外观如下:
现在,当我进入生成的 PDF 文件的 Adobe Reader 并按 ctl-A ctl-C 复制整个文档时,粘贴到文本文件中的内容将显示为:
What I have is $x^2 + y^2 = z^2$ and $\frac {1}{2}$ . Try to copy/paste me.
\[ y = \frac {\cos {x}}{1+\cos {x}} \]
Here it is with no copy/paste tuning: x2 + y2 = z2 and 1
2 .
y =
cos x
1 + cos x
1
原始编辑解决方案允许具有不同“ActualText”内容的可选参数,例如用于\noexpand
某些数学参数。
\documentclass{article}
\usepackage{accsupp}
\newcommand\copypaste[2][\relax]{%
\ifx\relax#1%
\BeginAccSupp{method=escape,ActualText={#2}}%
#2%
\EndAccSupp{}%
\else%
\BeginAccSupp{method=escape,ActualText={#1}}%
#2%
\EndAccSupp{}%
\fi%
}
\begin{document}
What I have is \copypaste{$x^2 + y^2 = z^2$} and
\copypaste[$\noexpand\frac{1}{2}$]{$\frac{1}{2}$}.
Try to copy/paste me.
Here it is with no copy/paste tuning: $x^2 + y^2 = z^2$ and $\frac{1}{2}$.
\end{document}