Re: Problema TeXnico: parsing di righe

#55784
Up
0
Down
::


Grazie Enrico.
Traggo spunto dalla tua precedente soluzione e dal post http://guit.sssup.it/phpbb/viewtopic.php?t=9713 in cui si parla di suddivisione del materiale all’interno di una vbox.
A questo punto, come si modifica la macro \pprows in modo da suddividere la lista degli indirizzi in più scatole di assegnata altezza?
Nel codice seguente:
`\documentclass{minimal}
\usepackage{ifthen}
\usepackage{lipsum}

\makeatletter
\newcount\r@wcount
\newcount\@ddrcount
\def\pp@sentinel{\hfuzz}
\newcommand\pprows[1][1]{\begingroup
\r@wcount=\z@
\chardef\@ddrnum=#1\relax
\parindent=\z@\endlinechar=\m@ne\ppr@ws}
\def\ppr@ws#1{\ppr@w#1\\\hfuzz\\}
\def\ppr@w#1\\{%
% controlliamo se siamo alla fine
\def\temp{#1}%
\ifx\temp\pp@sentinel
\expandafter\endgroup
\else
\processr@w{#1}\expandafter\ppr@w
\fi}

\def\pppr@fix{%
\ifnum\@ddrcount<\@ddrnum \tom@rk \else \ifnum\@ddrcount=\@ddrnum \ccm@rk \fi \fi \advance\@ddrcount\@ne} \def\processr@w#1{\advance\r@wcount\@ne \ifx\temp\@empty \r@wcount=\z@ \strut\par \else \ifcase\r@wcount\or \pppr@fix\textbf{#1}\par\or \textit{#1}\par\else #1\par \fi \fi} \def\tom@rk{\makebox[0pt][r]{A: }} \def\ccm@rk{\makebox[0pt][r]{E, p.c.: }} \makeatother \newlength{\larghezza} \setlength{\larghezza}{12cm} \newlength{\altezza} \setlength{\altezza}{7cm} \newbox\mybox \newbox\myboxa \newcommand\Separa[1]{% \par\begingroup\vbadness=10000 \setbox\mybox=\vbox{\hsize=\larghezza #1} \loop\ifdim\ht\mybox > \altezza
\setbox\myboxa=\vsplit\mybox to \altezza
\vbox{\unvbox\myboxa}\hrule
\repeat
\vbox{\unvbox\mybox}\hrule\endgroup
}

\begin{document}

\Separa{\lipsum[1-5]}
\bigskip

\Separa{\pprows{%
Servizio Politiche di Inclusione Sociale\\
Centro comunale di accoglienza per senza fissa dimora ex dormitorio pubblico Via Giuseppe De Blasiis, 10\\
Luigi Pratolin\\
\\
Servizio Giovani\\
Sede di Bagnoli Via Cicerone, 18\\
Gino Viglio Crippa\\
\\
Servizio Politiche per i Minori, l'Infanzia e l'Adolescenza\\
Ufficio provvedimenti autorità giudiziaria minorile\\
Giuseppe Pace\\
\\
Servizio Dipartimentale Consiglio Comunale\\
Attività connesse alle funzioni ispettive del Consiglio Comunale\\
Gino Giorgetto\\
\\
Servizio Reti Tecnologiche Interne\\
Rete fonia dati\\
Luigi Sicilia\\
\\
Servizio Politiche per i Minori, l'Infanzia e l'Adolescenza\\
Ufficio interventi integrativi\\
Rosaria Dinevoli\\
\\
Municipalità 1 – Organi Politici\\
Commissioni Consiliari: segreteria e conferenza dei Presidenti\\
Eugenio Izzo Aiazzone\\
\\
Direttore della I Municipalità Chiaia — San Ferdinando — Posillipo\\
Segreteria della direzione\\
\\
Servizio Archivi Storici\\
Referente visite guidate, Real Casa Santa dell'Annunziata: ramo esposti\\
Lucia Renzulli\\
\\
U.O.A. Elaborazione degli Stipendi\\
Ufficio cessioni e prestiti\\
Vittoria Cecatiello\\
\\
Direttore della Municipalità 1\\
\\
Direttore della Municipalità 2\\
Segreteria della direzione\\
Rosalia Cozzolino\\
\\
Direttore della Municipalità 3\\
Segreteria della direzione\\
Rosalia Cozzolino\\
\\
Direttore della Municipalità 4\\
Segreteria della direzione\\
Rosalia Cozzolino\\
\\
Direttore della Municipalità 5\\
Segreteria della direzione\\
Rosalia Cozzolino\\
\\
Direttore della Municipalità 6\\
Segreteria della direzione\\
Rosalia Cozzolino\\
\\
Direttore della Municipalità 7\\
Segreteria della direzione\\
Rosalia Cozzolino
}}
\end{document}
`
ho chiamato \pprows all’interno di \Separa. In questa situazione \pprows non lavora come ci si aspetterebbe.

Ciao,
Agostino

Go to top