如何隐藏图形/图像后面的可搜索文本

如何隐藏图形/图像后面的可搜索文本

我正在用 LaTeX 重现一本 20 世纪 60 年代的手册。我所包含的一些图片有零件编号,我想在文档中搜索这些零件编号,但又不想在图片下方明确打印文本。

我读过了隐藏文本,但保留可选择和可搜索的内容和“文本渲染模式 3”方法类似,但是我不希望图像周围存在空白。

如何将可搜索的文本隐藏在图像/图形后面?

答案1

如果您知道文本的高度,您可以直接打印它,然后输入一些负垂直空间,然后包含图像,然后图像将打印在文本顶部。在下面的 MWE 中,垂直空间为1em,大约是当前字体中大写字母 M 的大小(即一行的高度)。

代码:

\documentclass{article}
\usepackage{graphicx}
\begin{document}
Part 1

\vspace{-1Em}
\includegraphics{example-image}

\vspace{5cm}
\begin{figure}
Part 2

\vspace{-1em}
\includegraphics{example-image-b}
\caption{Image with hidden text}
\end{figure}
\end{document}

结果,在 pdf 查看器中搜索并突出显示:

在此处输入图片描述

有关此方法的更复杂实现,请参阅https://tex.stackexchange.com/a/75104/在答案的底部或https://tex.stackexchange.com/a/75113/来自同一个问题。

答案2

使用 InfoDot。

这是一个实际尺寸,其中有一段文字,用箭头标记。

信息点

位于箭头处,黑点上方。

放大(几乎 9000%):

飞涨

进一步放大:

放大一些

带有两个 InfoDot 的图像,放大 100%。

鸭点

代码

\documentclass{article}
\usepackage{fontspec}
\usepackage{xcolor}
\usepackage{graphicx}
\usepackage{lipsum}
\setmainfont{Noto Serif}
\newfontface\ftsmall[Scale=0.005,Colour=blue]{Noto Serif}

\newcommand\infodota[1]{%
.\kern-1.6pt%
\begin{minipage}{0.0025\linewidth}
\baselineskip0.04pt
{\ftsmall{\tiny #1}}%
\end{minipage}}

\begin{document}
$\to$\infodota{\lipsum[5]}
\includegraphics{example-image-duck}\infodota{The quick brown fox jumps over the  lazy dog.}
\end{document}

该文本是可查找且可复制的。

黑点实际上不是需要的;它只是一个视觉标记,有助于在放大时定位文本。

从技术上讲,文本并未隐藏(忍者文本清晰可见),并且绝对不在图片后面,因此这不是对所提问题的回答。

(Z-1000 思考-源头想法:LaTeX 中 \tiny 或 \scriptsize Fontsize 的出现(水平拉伸), 基于:如何获得更小的字体?

答案3

借助该accsupp包,您可以实现以下目标:

在此处输入图片描述

\documentclass{article}
\usepackage{lipsum}
\usepackage{graphicx}
\usepackage{accsupp}

\begin{document}
\lipsum[1-2]

\begin{figure}
\centering
\BeginAccSupp{ActualText=Hidden description}\includegraphics{example-image}\EndAccSupp{}%
\caption{My caption text}
\label{fig:test}
\end{figure}
\end{document}

相关内容