Changes

Jump to navigation Jump to search
3,749 bytes added ,  12:48, 8 June 2020
m
no edit summary
Probably for your [[Presentations|slides]], probably for some [[Animation|animation]] or for whatever reason you may want it: you can hide some content from the document, while leaving exactly the same amount of space as that content would need if typeset in the usual way. '''Beware''', this doesn’t work in current (2018) MkIV. Have a look at [[Viewer Layers]], {{src|attr-lay.mkiv}}. == Overview == On the [http://archive.contextgarden.net/thread/20050707.223338.a9169811.html mailing list] Hans suggested many different ways (astonishing easy to use) to hide the content in a PDF document. Sadly, most of them are viewer-dependent. {| class="wikitable"|-! method ! properties|- valign="top"| < texcode>\defineeffect[my-secrets][Visualslayer][state=top] \starteffect[my-secrets]My public secret.\stopeffect</texcode>| * makes (invisible) layer on top (JS-based)* completely hides everything* works with newer Adobe Acrobat/Viewer; in most other browsers the content is not hidden* I managed to freeze Acrobat 6.0 pro when trying to save the text|- align="left" valign="top"| <texcode>\defineeffect[my-hesitations][layer][state=stop]\starteffect[Presentationsmy-hesitations]To \ConTeXt\ or not to \ConTeXt?\stopeffect\button{Show Decision}[VideLayer{my-hesitations}]\button{Hide Decision}[HideLayer{my-hesitations}] \button{Toggle Decision}[ToggleLayer{my-hesitations}]</texcode>| * makes (invisible) layer, which can be switched on and off (JS-based)* you can switch the content on and off* when hidden, it is completely hidden* works with newer Adobe Acrobat/Viewer; in most other browsers the content is not hidden* even some new Acrobat versions can't handle the buttons|- align="left" valign="top" | <texcode>\starteffect[hidden] % In MkIVMy secret hidden for Adam's apple ;)\stopeffect</texcode>| * makes transparent fonts* no JavaScript* pretty safe for different viewers* only text is hidden, but not images, rules, ...|- align="left" valign="top"| [[LayersHiding Content#The plain TeX way|the plain TeX way]] | * puts a blank box instead of its content (letter)* absolutely no content in the document, not even hidden (only blank space)* only works for letters and whitespace, no macros, no figures, ...|} == The plain TeX way == This example was adapted from the TeXBOOK. However, it can only handle usual text. Forget about macros, forget about graphics ... I hope and still believe that it is possible to extend this macro to make it work in general case. This would also be a preferred solution as it doesn't depend on the viewer's JavaScript ''in''capabilities. <texcode>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% the portion of code adapted from the TeXBOOK, Excercise 11.5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \def\dolist{\afterassignment\dodolist\let\next= }\def\dodolist{\ifx\next\endlist\let\next\relax \else \\\let\next\dolist \fi\next}\def\endlist{\endlist} \def\\{\if\space\next\ % assume that \next is unexpandable\else\setbox0=\hbox{\next}\setbox1=\hbox{}% \dp1=\dp0\ht1=\ht0\wd1=\wd0\box1\fi} \def\demobox#1{{\dolist#1\endlist}} </texcode>
Probably for your [[Presentations|slides]], probably for some [[Animation|animation]] or for whatever reason you may want it: you can hide some content from the document, while leaving exactly the same amount of <context> \def\dolist{\afterassignment\dodolist\let\next= }\def\dodolist{\ifx\next\endlist\let\next\relax \else \\\let\next\dolist \fi\next}\def\endlist{\endlist} \def\\{\if\space as \next\ % assume that content would need \next is unexpandable\else\setbox0=\hbox{\next}\setbox1=\hbox{}% \dp1=\dp0\ht1=\ht0\wd1=\wd0\box1\fi} \def\demobox#1{{\dolist#1\endlist}} Please write something more interesting on this place\demobox{if typeset in the usual wayyou are visiting this page and getting bored.}Thanks. Please write something more interesting on this placeif you are visiting this page and getting bored.Thanks. </context> == Layer: state=top ==
You can try something like:
</context>
This can be compared to the non-hidden version, which is:
 
<context>
I don't tell this to everybody:
{\quotation{\ConTeXt\ goes beyond the limits of imagination, that's why I love it!}}
You'll understand that once you get to know it better.
</context>
 
== Final Remarks ==
<b>* Just as a hint</b>: Dondon't ever think about hiding your secrets or solutions to the problems for your students that this way!<br>If you happen to have . Readers with Adobe Acrobat Professional, you can select <i>''Layers</i> '' on the left and switch the hidden layer on again.<br>You have been warned.<font color="red">YOU HAVE BEEN WARNED!</font>* Kerning could cause miniscule differences in the exact placement of the (hidden) content.
[[httpCategory://archive.contextgarden.net/thread/20050707.223338.a9169811.htmlLayout]][[Category:Presentation]]

Navigation menu