[Tex-nl] ovalbox met uitsparing

Piet van Oostrum piet at vanoostrum.org
Tue Jan 17 11:56:50 CET 2012


Koen Wybo wrote:

 > 
 > Opdracht : voor mijn leerlingen maak ik een opvallende box in mijn
 > cursus die tot doel heeft om te 'bijbelen'.  Met ovalbox lukt het me
 > redelijk om een commando te maken die de nodige 'ingrediënten' heeft
 > :
 > 
 >   \newcommand \bijbel[2]{
 > \bigskip
 > \ovalbox{
 > \begin{minipage}[b]{\linewidth}\begin{minipage}[l]{0.3\linewidth} 
 > \includegraphics[width=20mm]{beelden/bijbel3}    \end{minipage}
 >      \hspace{0.4cm} \begin{minipage}[r]{0.6\linewidth}\vspace{2mm}
 >    {\LARGE #1} \\ #2
 > \vspace{2mm} \end{minipage}
 >          \end{minipage} } \bigskip }
 > 
 > 
 > Maar een mens wil net dat ietsje meer en de puntjes op de
 > spreekwoordelijke i zetten. In bijlage toont de bovenste afbeelding
 > wat ik zo ongeveer bereik. Graag zou ik echter het effect van de
 > onderste afbeelding verkrijgen. Het betreft voornamelijk de foto van
 > de bijbel.  Daar zou ik graag de bovenste bolle hoek mee laten
 > uitsnijden zodat het een mooi geheel vormt. Weet iemand hoe ik dit in
 > LaTeX (pstricks, tikz, ...) voor elkaar krijg?

Het simpelste zou volgens mij zijn om het plaatje van de bijbel in een tekenprogramma (Gimp, Photoshop, e.d.) aan te passen, dus de ronde hoek er af te snijden. Je moet dan wel even uitkijken dat je de juste volgorde aanhoudt: eerst het plaatje tekenen, dan de \ovalbox eroverheen, anders wordt de linkerbovenhoek van de \ovalbox onzichtbaar door het niet-transparante plaatje.

Clippen kun je niet in standaard TeX, daar heb je een Postscript of PDF laag voor nodig. Met Tikz kan dat dus ook. Het is een beetje tricky omdat je de rounded rectangle twee keer moet tekenen: één keer voor het clippen en één keer om hem te tonen. Vanwege het specificeren van de dikte kan dat niet in één commando. En de volgorde is ook belangrijk om de rectangle over het plaatje te krijgen. Het vervelende is natuurlijk ook dat je op deze manier de afmetingen van de box moet specificeren. Je kun natuurlijk ook de tekst eerst in een box zetten, die opmeten en de afmetingen dan in tikz gebruiken.

\usepackage{tikz, graphicx}

\begin{tikzpicture}

\clip [rounded corners=1.5cm] (0,0) rectangle (14cm,6cm);
\draw (0,6) node [inner sep=0pt,anchor=north west] {\includegraphics[width=4cm, height=4cm]{bijbel}};
\draw [ultra thick,rounded corners=1.5cm] (0,0) rectangle (14cm,6cm);
\draw (5,5) node[right] {\Huge Genesis 1,1 -- 2,4};
\draw (5,3) node[right] {\parbox{8cm}{\huge In den beginne schiep God hemel en aarde}};

\end{tikzpicture}
-- 
Piet van Oostrum <piet at vanoostrum.org>
WWW: http://pietvanoostrum.com/
PGP key: [8DAE142BE17999C4]



More information about the TeX-NL mailing list