Indice del forum
Forum del Gruppo Utilizzatori Italiani di TeX

Homepage di GuITHomepage di GuIT
GuidaGuITIntroduzione all'arte della composizione tipografica
ArteLaTeXL'arte di scrivere con LaTeX
lshortUna (mica tanto) breve introduzione a LaTeX2e [IT] - [EN]
l2tabuitElenco dei “peccati” degli utenti di LaTeX2e
itamsldocManuale utente di amsmath
compsymThe Comprehensive LaTeX Symbol List

Aderisci a GuIT
Registrati al ForumRegistrati al Forum
FAQ di phpBBFAQ di phpBB
Netiquette del ForumNetiquette
Lista degli utentiLista degli utenti
ProfiloProfilo
Messaggi PrivatiMessaggi Privati
LoginLogin
Cerca sul sito  
Ricerca Avanzata sul Forum di GuIT

ATTENZIONE

ATTENZIONE

Il Forum si è trasferito al nuovo indirizzo: www.guitex.org. Le vecchie discussioni rimarranno visibili per consultazione. Gli utenti registrati potranno continuare a usare le proprie credenziali d'accesso sul nuovo Forum.

ATTENZIONE

ATTENZIONE


\framedtext su pi\`u pagine

 
Questo forum è chiuso. Non puoi inserire, rispondere o modificare i Topics   Topic chiuso    Indice del forum -> ConTeXt
Precedente :: Successivo  
Autore Messaggio
emanuelesacco
Neofita


Registrato: 28/05/08 17:00
Messaggi: 78

MessaggioInviato: Mer Ott 13, 2010 9:32 pm    Oggetto: \framedtext su pi\`u pagine Rispondi citando

Salve a tutti.

Come da titolo non riesco a fare un framed text che stia su pi\`u pagine usando il comando

\startframedtext
...
\stopframedtext

Qualcuno sa come fare?
Torna in cima
Profilo Messaggio privato
emanuelesacco
Neofita


Registrato: 28/05/08 17:00
Messaggi: 78

MessaggioInviato: Sab Ott 16, 2010 10:09 am    Oggetto: Rispondi citando

Ecco una prima soluzione (ovviamente opera di Luigi) per un testo che si spezza al più su due pagine

Codice:
\newdimen\SpaceLeft
\def\CheckSpace{%
\ifdim\pagetotal=0pt\SpaceLeft=\vsize\else\SpaceLeft=\pagegoal\advance\SpaceLeft
 by -\pagetotal\advance\SpaceLeft by -2\lineheight\fi}%


\setupcolors[state=start]


\long\def\StartBg#1\StopBg{%
\bgroup
\setbox8000=\vbox{\hsize=\dimexpr\textwidth-1em\relax#1}
\CheckSpace% \the\SpaceLeft\the\ht8000 \the\dp8000
\ifdim\dimexpr(\ht8000+\dp8000)>\SpaceLeft\relax
%
\setbox8001=\vsplit8000 to \SpaceLeft%
\setbox8001=\vbox{\unvbox8001}%
%
\setupbackground
[bottomframe=off,
rulethickness=1pt,
rightframe=on,width=\textwidth,
leftframe=on]
\startbackground\unvbox8001\stopbackground%

\setupbackground
[bottomframe=on,
rulethickness=1pt,
rightframe=on,width=\textwidth,
leftframe=on]
\startbackground\unvbox8000\stopbackground%
\else
\setupbackground
[bottomframe=on,
rulethickness=1pt,
rightframe=on,
leftframe=on]
\startbackground #1\stopbackground%
\fi
\egroup
}

\setupbackground
[bottomframe=on,
rulethickness=1pt,
rightframe=on,
leftframe=on]

\starttext

\startbackground
\input knuth
\stopbackground

e poi

\StartBg
\input knuth
\input knuth
\input knuth
\StopBg

\stoptext


Una soluzione alternativa potrebbe essere usare il comando \definetextbackground e settare la variabile mp in modo adeguato.


Codice:
\setupcolors[state=start]
\enableregime[utf]
\def\Linea{\startMPcode
 draw (0,0) -- (\the\textwidth-1,0) withpen pencircle scaled 1bp withcolor red;
\stopMPcode
}
\definetextbackground
[Prova]
[
mp=background:mp,
location=paragraph,
rulethickness=1pt,
width=broad,
leftoffset=1em,
rightoffset=1em,
after={\Linea}
]
\startuseMPgraphic{background:mp}
path p;
for i = 1 upto nofmultipars :
p = (multipars[i]
topenlarged 5pt
bottomenlarged 10pt);
fill p withcolor lightgray ;
draw leftboundary p withpen pencircle scaled 1bp withcolor red ;
draw rightboundary p withpen pencircle scaled 1bp withcolor red ;
endfor;
\stopuseMPgraphic


\starttext

\startProva
\input knuth
\input knuth
\input knuth
\input knuth
\input knuth
\stopProva

\stoptext


Può succedere però che la "\Linea" venga disegnata a pagina nuova Sad
Torna in cima
Profilo Messaggio privato
Mostra prima i messaggi di:   
Questo forum è chiuso. Non puoi inserire, rispondere o modificare i Topics   Topic chiuso    Indice del forum -> ConTeXt Tutti i fusi orari sono GMT + 1 ora
Pagina 1 di 1

 
Merge topics 
Vai a:  
Non puoi inserire nuovi Topic in questo forum
Non puoi rispondere ai Topic in questo forum
Non puoi modificare i tuoi messaggi in questo forum
Non puoi cancellare i tuoi messaggi in questo forum
Non puoi votare nei sondaggi in questo forum


Powered by phpBB © 2001, 2002 phpBB Group
Protetto da Project Honey Pot and phpBB.cc