rendere invisibile il testo

Sep 16 2020

Ho un manoscritto a cui insegno usando lo scrbook di classe.

Ora per l'insegnamento a distanza voglio ridefinire alcuni ambienti (come la prova) in modo da ottenere spazi vuoti per le prove sulla presentazione che posso riempire a mano.

Una possibilità sarebbe probabilmente quella di scegliere semplicemente un colore del testo di bianco in questi ambienti. Tuttavia, il testo rimane incollabile sulla pagina. E potrebbe essere irritante se scrivo a mano sul testo e i caratteri invisibili sullo sfondo interferissero. Un altro inconveniente sarebbe che se il mio testo contiene un \textcolor{red}{redly emphasized}testo, non svanirebbe:

\documentclass{scrbook}
\usepackage{color}
\usepackage{xcolor}
\usepackage{amsthm,amsfonts,amssymb}

\begin{document}
\begin{proof}
  \textcolor{red}{This} is important
\end{proof}

\begin{proof}
  \color{white}
  \textcolor{red}{This} is important
\end{proof}
\end{document}

La numerazione non dovrebbe dipendere dal fatto che le prove e il loro contenuto siano nascosti o meno.

Mi chiedevo, se ci fosse la possibilità, di manipolare i caratteri, in modo che al posto dei caratteri pdf, nel pdf venissero inserite solo caselle vuote (e invisibili) con la dimensione del carattere. In questo modo, la numerazione sarebbe rimasta intatta e il testo non sarebbe più stato copiato.

grazie, sven

Risposte

2 DanielN Sep 19 2020 at 19:35

Puoi trasformare le prove in testo invisibile usando il tcolorboxpacchetto. Nell'esempio seguente, il colore di sfondo giallo sottolinea il punto in cui il testo diventa invisibile.

Questo è il documento originale (con il testo visibile).

Nel codice trovi la definizione del box onoffboxche dipende da un argomento opzionale; se vuoto, il testo nella casella è visibile. Se non è vuoto, il testo è invisibile.

L'ambiente onoffproofè definito utilizzando il solito proofe il onoffbox. Eredita l'argomento di quest'ultimo.

\documentclass[11pt, a4paper]{article}
\usepackage{amsmath, amsthm}
\usepackage{tcolorbox}
\tcbuselibrary{skins,breakable}
\usepackage{ifthen}

\usepackage{lipsum}

\newtheorem{pro}{Proposition}

\newenvironment{onoffbox}[1][]{%
  \ifthenelse{\equal{#1}{}}{\def\onoff{visible}}{\def\onoff{invisible}}
  \tcolorbox[%
  empty,
  \onoff,
  parbox=false,
  noparskip,
  enhanced,
  breakable,
  frame hidden, % default frame hidden
  boxrule=0pt, % default frame hidden
  colback=white, % yellow,
  left=-.5ex, right=-.5ex,
  before skip=0ex plus 2pt,
  after skip=1ex plus 2pt]
}{\endtcolorbox}

\newenvironment{onoffproof}[1][]{%
  \begin{onoffbox}[#1]\begin{proof}}{\end{proof}\end{onoffbox}}

\title{Using tcolorbox package for invisible text}
\begin{document}
\maketitle


\lipsum[1-2]

\begin{pro}
 $b^2+c^2=a^2$ 
\end{pro}
\begin{onoffproof}[off]
  It seems that {\color{red}this is an important result}.
  \lipsum[3-4]
  This is the end of our test.
\end{onoffproof}

\lipsum[5-7]
\end{document}