Re: abbellimento testo

#91765
Up
0
Down
::

FulvioSaccoccia” post=91284Salve a tutti,
ho tre domande da porre, legate alle possibilità di abbellimento di un testo:
1) mi chiedevo se esistono pacchetti che consentano di inserire degli abbellimenti alle pagine di un testo, per esempio, fregi o un piccoli disegni su alcune pagine di un testo;

http://altermundus.com/pages/tkz/ornament/index.html

FulvioSaccoccia” post=91284
2) mi chiedevo quale codice può essere stato usato dall’autore della documentazione di ChemFig per avere un piccolo titolo sulle righe di un box (fig. box1);

[attachment=892]box1.jpg[/attachment]

Secondo me è mdframed (http://www.ctan.org/pkg/mdframed), ma forse oggi è meglio usare tcolorbox (http://www.ctan.org/pkg/tcolorbox). Mi sbagliavo: è “fatto a mano” 😉 `
\newcommand\exemple{%
\begingroup
\parskip\z@
\@makeother\;\@makeother\!\@makeother\?\@makeother\:% neutralise frenchb
\@ifstar{\@exstartrue\exemple@}{\@exstarfalse\exemple@}}

\newcommand\exemple@[2][65]{%
\medbreak\noindent
\begingroup
\let\do\@makeother\dospecials
\make@car@active\ { {}}%
\make@car@active\^^M{\par\leavevmode}%
\make@car@active\,{\leavevmode\kern\z@\string,}%
\make@car@active\-{\leavevmode\kern\z@\string-}%
\make@car@active\>{\leavevmode\kern\z@\string>}%
\make@car@active\<{\leavevmode\kern\z@\string<}% \exemple@@{#1}{#2}% } \newcommand\exemple@@[3]{% \def\@tempa##1#3{\exemple@@@{#1}{#2}{##1}}% \@tempa } \newcommand\exemple@@@[3]{% \xdef\the@code{#3}% \endgroup \if@exstar \begingroup \fboxrule0.4pt \let\breakboxparindent\z@ \def\bkvz@bottom{\hrule\@height\fboxrule}% \let\bkvz@before@breakbox\relax \def\bkvz@set@linewidth{\advance\linewidth\dimexpr-2\fboxrule-2\fboxsep}% \def\bkvz@left{\vrule\@width\fboxrule\hskip\fboxsep}% \def\bkvz@right{\hskip\fboxsep\vrule\@width\fboxrule}% \def\bkvz@top{\hbox to \hsize{% \vrule\@width\fboxrule\@height\fboxrule \leaders\bkvz@bottom\hfill \ECFAugie \fboxsep\z@ \colorbox{black}{\kern0.25em\color{white}\footnotesize\lower0.5ex\hbox{\strut#2}\kern0.25em}% \leaders\bkvz@bottom\hfill \vrule\@width\fboxrule\@height\fboxrule}}% \breakbox \kern.5ex\relax \ttfamily\footnotesize\the@code\par \normalfont \kern3pt \hrule height0.1pt width\linewidth depth0.1pt \vskip5pt \rightskip0pt plus 1fill \everypar{{\color{lightgray}\rlap{\vrule height0.1pt width\linewidth depth0.1pt}}\hskip0pt plus 1fill}% \newlinechar`\^^M\everyeof{\noexpand}\scantokens{#3}\par \endbreakbox \endgroup \else \vskip0.5ex \boxput*(0,1) {\fboxsep\z@ \hbox{\ECFAugie\colorbox{black}{\leavevmode\kern0.25em{\color{white}\footnotesize\strut#2}\kern0.25em}}% }% {\fboxsep5pt \fbox{% $\vcenter{\hsize\dimexpr0.#1\linewidth-\fboxsep-\fboxrule\relax \kern5pt\parskip0pt \ttfamily\footnotesize\the@code}% \vcenter{\kern5pt\hsize\dimexpr\linewidth-0.#1\linewidth-\fboxsep-\fboxrule\relax \everypar{{\color{lightgray}\rlap{\vrule height0.1pt width\dimexpr\linewidth-0.#1\linewidth-\fboxsep-\fboxrule depth0.1pt}}}% \footnotesize\newlinechar`\^^M\everyeof{\noexpand}\scantokens{#3}}$% }% }% \fi \medbreak \endgroup } `

FulvioSaccoccia” post=91284
3) ancora, è possibile inserire una sorta di framebox incompleta, come quella che vi mostro in fig box2?

[attachment=893]box2.jpg[/attachment]

Si, certo. Entrambi i pacchetti che indicavo prima ti permettono di usare metodi, come TikZ, per disegnare quello che ti pare. Un esempio con tcolorbox:`
\documentclass[11pt,a4paper]{article}
\usepackage{tcolorbox,lipsum}
\tcbuselibrary{skins}
\usetikzlibrary{backgrounds}
\pgfdeclarelayer{foreground}
\pgfsetlayers{main,foreground}

\usetikzlibrary{decorations.markings}

\tikzset{insert node/.style args={#1 at #2}{
postaction=decorate,
decoration={
markings,
mark= at position #2
with
{
#1
}
}
}
}

\newtcolorbox{Test}{
width=\textwidth,
title=Testbox,
colback=white,
notitle,
fontupper=\sffamily,
left=1pt, % left space between content text and box
lefttitle=1pt, % left space between
outer arc=0pt,
boxrule=0pt,
skin=freelance,
frame code={
\begin{pgfonlayer}{foreground}% primo comando per debug: scopri dove sono i marcatori
% \path[insert node={\node[fill=blue](a){};} at 0.015,
% insert node={\node[fill=red](b){};} at 0.4,
% insert node={\node[fill=green](c){};} at 0.515,
% insert node={\node[fill=orange](d){};} at 0.9,
% ] (frame.south west) rectangle (frame.north east);
\path[insert node={\node(a){};} at 0.015,
insert node={\node(b){};} at 0.4,
insert node={\node(c){};} at 0.515,
insert node={\node(d){};} at 0.9,
] (frame.south west) rectangle (frame.north east);
\draw (a)|-(d);
\draw (c)|-(b);
\end{pgfonlayer}
},
}

\begin{document}

\begin{Test}
ciao
\end{Test}

\end{document}
` Occhio: è solo per dimostrazione. Funziona solo in quel caso perché la larghezza del riquadro è [tt]textwidth[/tt] e c’è solo una riga di testo.

Ciao
Claudio

Go to top