Texto alternativo para caixas Javascript (formulário) para visualizadores que não suportam Javascript?

Texto alternativo para caixas Javascript (formulário) para visualizadores que não suportam Javascript?

Estou usando o tdclockpacote para exibir a data e hora atuais. Parece muito bom no Acrobat, mas em outros visualizadores (como o Evince) parece terrível porque eles não suportam Javascripts e, em vez disso, mostram uma caixa vermelha (veja abaixo).

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

Date: \tddate

\end{document}

Existe uma maneira de usar condicionalmente uma renderização ou outra, dependendo se alguém está usando o Acrobat para visualizar o documento. Ou, mais especificamente, use um se Javascript for compatível ou outro se não?

É algo assim possível?

\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}

Outra forma de interpretar esta questão é permitir texto alternativo se o visualizador não suportar um recurso (como media9o faz). (No mínimo, nenhum texto será melhor do que uma caixa vermelha.)

Aqui está uma comparação do Acrobat e do Evince com o código atual:

Acrobata(números digitados por Javascript, sem TeX):

acroread

.

Evidência(caixas vermelhas feias):

evidenciar

.

Resultado desejado no leitor que não suporta JS(dados estáticos mostrados no Evince, semelhantes a \today)

evincetarget

Responder1

Esta é uma solução parcial para o problema, que pelo menos elimina a feia caixa vermelha que é renderizada em visualizadores de PDF sem suporte a Javascript (incluindo o Acrobat quando ele está desabilitado).

Por acaso encontrei uma opção escondida hyperrefaquihttps://tex.stackexchange.com/a/79979/1871chamado 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}

O local da data mostrará apenas um espaço vazio (quase, restam algumas barras) se o Javascript estiver desabilitado.

informação relacionada