幾個月以來,我找不到一種透過按下一個欄位中的按鈕來更改圖片的方法。文字就像:
\documentclass[a4paper]{article}
\usepackage{eforms}
\begin{insDLJS}[test]{test}{JavaScript}
function MakeArray(2){
this.length=n
return this
};
var text=new MakeArray(2);
text[0]='text111';
text[1]='text222';
this.getField("field").value=text[0];
\end{insDLJS}
%
\begin{document}
\textField[\BG{}\BC{}]{field}{80mm}{10mm}\\
\pushButton[\A{\JS{this.getField("field").value=text[1];}}]{myButton}{30mm}{15mm}\\
\pushButton[\A{\JS{this.getField("field").value=text[0];}}]{myButton}{30mm}{15mm}
\end{document}
但現在我想對圖片做同樣的事情,就像透過按按鈕改變圖片一樣。有沒有類似的東西: \pictureField[]{}{} 或類似的東西?
編輯
感謝您的回答,但問題是 media9 包。我已經用最實際的 l3kernel (2014/...) 完全更新了 lubuntu tex-live ,所以其他 l3 軟體包也是如此。它仍然會產生不同的錯誤,主要是:l3kernel 太舊,以及其他一些有趣的錯誤。發現沒有辦法讓 media9 運作。所以我很抱歉再次詢問:有沒有辦法可以在你的例子中做到這一點,但是沒有媒體9包裹?
答案1
\documentclass{article}
\usepackage{animate,media9,graphicx,mwe}
\begin{document}
\begin{center}
\begin{animateinline}[nomouse,step,label=picfield]{0}
\includegraphics{example-image-a}
\newframe
\includegraphics{example-image-b}
\end{animateinline}
\mediabutton[jsaction={anim.picfield.frameNum=0;}]{\fbox{show (a)}}
\mediabutton[jsaction={anim.picfield.frameNum=1;}]{\fbox{show (b)}}
\end{center}
\end{document}
使用\PushButton
來自hyperref
:
\documentclass{article}
\usepackage{animate,graphicx,mwe}
\usepackage{hyperref}
\begin{document}
\begin{Form}
\begin{center}
\begin{animateinline}[nomouse,step,label=picfield]{0}
\includegraphics{example-image-a}
\newframe
\includegraphics{example-image-b}
\end{animateinline}
\PushButton[onclick={anim.picfield.frameNum=0;}]{\strut show (a)}
\PushButton[onclick={anim.picfield.frameNum=1;}]{\strut show (b)}
\end{center}
\end{Form}
\end{document}