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