눌렀을 때 일련의 OCG 레이어를 순환하는 OCG 버튼을 갖고 싶습니다.
나는 각각이 다른 버튼을 전환하는 자체 참조 OCG 버튼을 사용해 보았습니다(를 사용하거나 사용하지 않고 시도했습니다 radiobtngrp
). 가장 큰 문제는 비활성화된 경우에도 클릭 가능한 영역이 계속 유지되므로 클릭하면 맨 위 버튼만 토글할 수 있다는 것입니다. 다음은 2개의 레이어가 있는 예입니다(그러나 가능하다면 더 많은 레이어를 갖고 싶습니다).
\documentclass{article}
\usepackage[tikz]{ocgx2}
\tikzstyle{button}=[minimum width=15mm, rounded corners, draw=white!50!black!100, bottom color=white]
\begin{document}
\begin{center}
\begin{tikzpicture}
\begin{ocg}[radiobtngrp=myRadioButtons]{OCG 0}{1}{1}
\node[button, hide ocg=1, show ocg=2] (n1) at (0,0) {$Button 1$};
\end{ocg}
\begin{ocg}[radiobtngrp=myRadioButtons]{OCG 1}{2}{0}
\node[button, hide ocg=2, show ocg=1] (n2) at (0.5,0){$Button 2$};
\end{ocg}
\end{tikzpicture}
\end{center}
\end{document}
이 작업을 수행하는 것이 가능합니까? 또는 클릭할 때마다, 특정 레이어를 토글할 때마다 증가하는 카운터가 연결된 단일 버튼을 만들 수 있습니까?
답변1
Acrobat Reader는 현재 비활성화될 PDF 레이어에 배치된 조판 콘텐츠와 함께 대화형 요소(링크, 양식 필드 등)의 마우스 감지 영역을 올바르게 숨기는 유일한 PDF 뷰어입니다.
PDF 사양에 따르면 PDF 주석은 /OC <ocg object ref>
Annotation dict에 항목을 추가하여 레이어를 인식하게 됩니다. Pkg는 ocgx2
PDF 레이어에 배치된 레이어 전환 명령에 대해 이 작업을 자동으로 수행합니다. AR을 제외한 모든 PDF 뷰어는 이 항목을 무시하는 것으로 보이며 이는 분명히 해당 뷰어의 버그입니다.
PDF 뷰어에서 이 기능을 올바르게 구현하면 다음을 순환할 수 있습니다.다수의다음 예와 같이 페이지의 동일한 위치에 있는 레이어 전환 링크를 통한 PDF 레이어:
\documentclass[margin=5]{standalone}
\usepackage[tikz]{ocgx2}
\tikzstyle{button}=[minimum width=15mm, rounded corners, draw=white!50!black!100, bottom color=white]
\begin{document}
\begin{tikzpicture}
\begin{scope}[ocg={name=OCG 1, ref=1, visibility=on, opts={radiobtngrp=myRadioButtons}}]
\node[button, show ocg=2] (n0) at (0,0) {Button 1};
\end{scope}
\begin{scope}[ocg={name=OCG 2, ref=2, visibility=off, opts={radiobtngrp=myRadioButtons}}]
\node[button, show ocg=3] at (n0) {Button 2};
\end{scope}
\begin{scope}[ocg={name=OCG 3, ref=3, visibility=off, opts={radiobtngrp=myRadioButtons}}]
\node[button, show ocg=4] at (n0) {Button 3};
\end{scope}
\begin{scope}[ocg={name=OCG 4, ref=4, visibility=off, opts={radiobtngrp=myRadioButtons}}]
\node[button, show ocg=1] at (n0) {Button 4};
\end{scope}
\end{tikzpicture}
\end{document}
AR이 아닌 다른 시청자의 경우증거하다, 최대 2개의 레이어를하나의단추. 이 버튼은 레이어 자체에 배치할 필요가 없습니다.
% example with 2 PDF Layers that works in Evince
\documentclass[margin=5]{standalone}
\usepackage[tikz]{ocgx2}
\tikzstyle{button}=[minimum width=15mm, rounded corners, draw=white!50!black!100, bottom color=white]
\begin{document}
\begin{tikzpicture}
\node[button, switch ocg={1, 2}] (n0) at (0,0) {\phantom{Button 1}};
\begin{scope}[ocg={name=OCG 1, ref=1, visibility=on}]
\node[minimum width=15mm] at (n0) {Button 1};
\end{scope}
\begin{scope}[ocg={name=OCG 2, ref=2, visibility=off}]
\node[minimum width=15mm] at (n0) {Button 2};
\end{scope}
\end{tikzpicture}
\end{document}