Alternativer Text für Javascript-(Formular-)Felder für Viewer, die Javascript nicht unterstützen?

Alternativer Text für Javascript-(Formular-)Felder für Viewer, die Javascript nicht unterstützen?

Ich verwende das tdclockPaket, um das aktuelle Datum und die Uhrzeit anzuzeigen. In Acrobat sieht es ganz gut aus, aber in anderen Viewern (wie Evince) sieht es schrecklich aus, weil sie kein Javascript unterstützen und stattdessen ein rotes Kästchen anzeigen (siehe unten).

\documentclass{article}
\usepackage{tdclock}
\begin{document}
\initclock

Date: \tddate

\end{document}

Gibt es eine Möglichkeit, je nachdem, ob man Acrobat zum Anzeigen des Dokuments verwendet, bedingt die eine oder andere Darstellung zu verwenden? Oder genauer gesagt, die eine Darstellung zu verwenden, wenn Javascript unterstützt wird, oder eine andere, wenn nicht?

Ist so etwas im Folgenden möglich?

\documentclass{article}
\usepackage{tdclock}
\begin{document}
\initclock
% not real code:
\ifJavascriptSupported{\tddate}{\today} % should show dynamic date in Acrobat, and static data in Evince
\ifJavescriptSupported{\tdchorno}{}

\end{document}

Eine andere Möglichkeit, diese Frage zu interpretieren, besteht darin, alternativen Text zuzulassen, wenn der Viewer eine Funktion nicht unterstützt (wie media9dies der Fall ist). (Wenn nichts anderes funktioniert, ist sogar gar kein Text besser als ein rotes Kästchen.)

Hier ist ein Vergleich mit Acrobat und Evince mit dem aktuellen Code:

Akrobat(Zahlen mit Javascript gesetzt, kein TeX):

acroread

.

Beweisen(hässliche rote Kästen):

beweisen

.

Gewünschtes Ergebnis im Reader, der JS nicht unterstützt(statische Daten werden in Evince angezeigt, ähnlich wie \today)

Abonnieren

Antwort1

Dies ist eine Teillösung des Problems, die zumindest das hässliche rote Kästchen beseitigt, das in PDF-Viewern ohne Javascript-Unterstützung angezeigt wird (einschließlich Acrobat, wenn Javascript deaktiviert ist).

Durch Zufall habe ich eine versteckte Option hyperrefhier gefundenhttps://tex.stackexchange.com/a/79979/1871angerufen Fld@bordercolor.

\documentclass{article}
\usepackage{tdclock}

\makeatletter
\def\Fld@bordercolor{1 1 1} % set TextField border to white, there is also Fld@bcolor
\makeatother

\begin{document}
\initclock

Date: \tddate

\end{document}

Wenn Javascript deaktiviert ist, wird an der Stelle des Datums nur ein leerer Platz angezeigt (fast, es bleiben noch ein paar Schrägstriche übrig).

verwandte Informationen