我目前正在通过媒体9Latex 封装。
我有三个\媒体按钮我想将其视为切换按钮。按钮的图片如下所示:
并且与左按钮相同的数组在切换状态下显示如下:
现在,每个\媒体按钮已经与三幅图像关联:
- 当按钮没有交互时显示的图像,
- 当用户点击按钮时显示的图像。
- 当鼠标悬停在按钮上时显示的图像,
我想要做的就是将图像 1 和 3 交换为一个可切换的按钮。
据我了解,这些图像附加到按钮上图标对象。PDF Javascript API 指出,可以使用按钮获取图标方法,而它们也可以使用按钮设置图标方法。
我尝试使用如下代码来执行此操作:
var button = this.getField("mbtn@0");
var normal_icon = button.buttonGetIcon(0);
var hover_icon = button.buttonGetIcon(2);
button.buttonSetIcon(hover_icon, 0);
button.buttonSetIcon(normal_icon, 1);
这只会导致相关按钮消失(或者更确切地说,它似乎失去了所有图像,从而显得不可见)。
我尝试将图像嵌入 PDF,然后尝试将其转换为图标可以附加到按钮的对象。不过,似乎没有直接的方法来执行这种转换。
我将非常感激任何关于如何做到这一点的指示。手动方法不是一种选择,因为我们的软件会自动生成报告。
先感谢您。
答案1
这可以在不使用 JavaScript 的情况下使用 PDF 图层 (OCG) 来实现:
\documentclass{article}
\usepackage{ocgx2}
\usepackage{graphicx}
\begin{document}
\switchocg{imgA imgB}{%
\makebox[0pt][l]{%
\begin{ocg}{Image A}{imgA}{on}
\includegraphics{stateA}
\end{ocg}%
}%
\begin{ocg}{Image B}{imgB}{off}
\includegraphics{stateB}
\end{ocg}%
}
\end{document}