- Questo topic ha 15 risposte, 4 partecipanti ed è stato aggiornato l'ultima volta 13 anni, 4 mesi fa da
Amedeo Giacovelli.
-
CreatoreTopic
-
17 Aprile 2013 alle 11:31 #85007::
Rieccomi con un caso, forse banale, ma che mi sta dando grattacapi. Ho una semplice tabella che contiene in una delle celle una lista di item. La lista degli item risulta disallineata rispetto ai valori delle altre celle poichè parte con un margine superiore che non riesco ad evitare. Lo stesso dicasi, ma è meno importante, per il margine sinistro e inferiore della lista di item (vedasi allegato con l’esito della elaborazione).`
\documentclass{book}
\usepackage{tabularx}
\usepackage{booktabs}\begin{document}
\begin{tabular}{p{4cm}p{4cm}p{4cm}}
\toprule
{T1} & {T2} & {T3} \\
\midrule
{alfa} & {beta} & {gamma} \\
\midrule
{teta} &
{\begin{itemize}
\item testo
\item testo
\item testo
\end{itemize}} &
{omega} \\
\bottomrule
\end{tabular}\end{document}
`C’è modo di allineare il margine superiore della lista a quello della cella?
Grazie in anticipo
-
CreatoreTopic
-
AutoreRisposte
-
-
17 Aprile 2013 alle 12:52 #85008
-
17 Aprile 2013 alle 13:28 #85009
-
17 Aprile 2013 alle 15:03 #85010::
Amedeo” post=84397Rieccomi con un caso, forse banale, ma che mi sta dando grattacapi. Ho una semplice tabella che contiene in una delle celle una lista di item. La lista degli item risulta disallineata rispetto ai valori delle altre celle poichè parte con un margine superiore che non riesco ad evitare. Lo stesso dicasi, ma è meno importante, per il margine sinistro e inferiore della lista di item (vedasi allegato con l’esito della elaborazione).
`
\documentclass{book}
\usepackage{tabularx}
\usepackage{booktabs}\begin{document}
\begin{tabular}{p{4cm}p{4cm}p{4cm}}
\toprule
{T1} & {T2} & {T3} \\
\midrule
{alfa} & {beta} & {gamma} \\
\midrule
{teta} &
{\begin{itemize}
\item testo
\item testo
\item testo
\end{itemize}} &
{omega} \\
\bottomrule
\end{tabular}\end{document}
`C’è modo di allineare il margine superiore della lista a quello della cella?
Grazie in anticipo
Caricando [tt]enumitem[/tt]
`\documentclass{book}
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{enumitem}\begin{document}
\begin{tabular}{p{4cm}p{4cm}p{4cm}}
\toprule
{T1} & {T2} & {T3} \\
\midrule
{alfa} & {beta} & {gamma} \\
\midrule
{teta} &
{\begin{itemize}[leftmargin=*]
\item testo
\item testo
\item testo
\end{itemize}} &
{omega} \\
\bottomrule
\end{tabular}
\end{document} `
-
17 Aprile 2013 alle 15:07 #85011::
Amedeo” post=84401Grazie mille. Mi crea ancora un piccolo difettuccio che però vedrò di risolvere da solo. Sapete anche come fare per il margine sinistro e in basso alla lista degli item?
Per il margine sinistro:
`\documentclass{book}
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{enumitem}\begin{document}
\begin{tabular}{p{4cm}p{4cm}p{4cm}}
\toprule
{T1} & {T2} & {T3} \\
\midrule
{alfa} & {beta} & {gamma} \\
\midrule
{teta} &\vspace*{-1.5\baselineskip}
\begin{itemize}[leftmargin=*]
\item testo
\item testo
\item testo
\end{itemize} &
{omega} \\
\bottomrule
\end{tabular}
\end{document}
`
-
17 Aprile 2013 alle 20:13 #85012::
Si, devi usare il pacchetto enumitem e usare l’opzione align=left
poi magari, se non lo vuoi, poi eliminare lo spazio sotto la lista puntata e anche sopra se, sempre con quel pacchetto, usi le opzioni giuste per togliere gli spazi sopra, sotto e in mezzo agli item.Da terminale texdoc enumitem e hai la documentazione del pacchetto direttamente sullo schermo.
-
18 Aprile 2013 alle 5:10 #85013
-
19 Aprile 2013 alle 8:20 #85014::
Poichè un esempio val più di mille parole, ho ricavato un estratto della tabella che vorrei realizzare. Di seguito il codice e in allegato la pagina prodotta. In sostanza, all’interno di una tabella (nel caso mio è una longtable perchè le righe sono molte) le lista di item (itemize) vengono posizionate con un margine superiore ed inferiore che non riesco ad eliminare. Ne farei a meno ma l’effetto in stampa non mi piace per niente. Qualche suggerimento dai più esperti?`
\documentclass[10pt,a4paper,oneside]{book}
\usepackage[italian]{babel}
\usepackage[utf8x]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{geometry}
\usepackage{enumitem}
\usepackage{calc}
\usepackage{booktabs}
\usepackage{longtable}\newenvironment{McsLongTabThree}[6]{%
\begin{small}
\begin{center}
\begin{longtable}{p{#2}p{#4}p{#6}}
% intestazione iniziale
\toprule
\textbf{\textit{#1}} & \textbf{\textit{#3}} & \textbf{\textit{#5}} \\
\endfirsthead
% intestazione normale
\multicolumn{3}{l}{continua dalla pagina precedente} \\
\toprule
\textbf{\textit{#1}} & \textbf{\textit{#3}} & \textbf{\textit{#5}} \\
\midrule
\endhead
% piede normale
\multicolumn{3}{r}{continua nella prossima pagina} \\
\endfoot
% piede finale
\bottomrule
\multicolumn{3}{r}{si conclude dalla pagina precedente} \\
\endlastfoot
}{%
\end{longtable}
\end{center}
\end{small}
}
\newcommand\McsRigaLongTabThree[3]{%
\midrule
{#1} & {#2} & {#3}\\
}\newenvironment{McsLB}{%
\begin{itemize}[leftmargin=*]
}{%
\end{itemize}
}
\newcommand\McsRigaLB[1]{%
\item {#1}
}\begin{document}
\begin{McsLongTabThree}
{Fattispecie di reato}{.33\textwidth-2\tabcolsep}
{Esempi di casistiche}{.33\textwidth-2\tabcolsep}
{Controlli implementati}{.33\textwidth-2\tabcolsep}
\McsRigaLongTabThree
{Falsità in un documento informatico pubblico o privato avente efficacia
probatoria (art. 491-bis c.p.)}
{\begin{McsLB}
\McsRigaLB {Falsificazione di documenti informatici da parte di
banche/società di servizi}
\McsRigaLB {Cancellazione o alterazione di informazioni a valenza
probatoria presenti sui propri sistemi}
\end{McsLB}}
{\begin{McsLB}
\McsRigaLB {Misure di protezione dell’integrità delle informazioni
messe a disposizione}
\end{McsLB}}
\McsRigaLongTabThree
{Danneggiamento di informazioni, dati e programmi informatici
utilizzati dallo Stato (art. 635-ter c.p.)}
{\begin{McsLB}
\McsRigaLB {Danneggiamento, distruzione o manomissione di documenti
informatici aventi efficacia probatoria}
\end{McsLB}}
{\begin{McsLB}
\McsRigaLB {Formalizzazione di regole per un utilizzo accettabile
delle informazioni}
\McsRigaLB {Procedure per l’etichettatura ed il trattamento delle
informazioni}
\end{McsLB}}
\end{McsLongTabThree}
\end{document}
`
Attachments:
You must be logged in to view attached files. -
19 Aprile 2013 alle 8:25 #85015::
Amedeo” post=84455Poichè un esempio val più di mille parole, ho ricavato un estratto della tabella che vorrei realizzare. Di seguito il codice e in allegato la pagina prodotta. In sostanza, all’interno di una tabella (nel caso mio è una longtable perchè le righe sono molte) le lista di item (itemize) vengono posizionate con un margine superiore ed inferiore che non riesco ad eliminare. Ne farei a meno ma l’effetto in stampa non mi piace per niente. Qualche suggerimento dai più esperti?
`
\documentclass[10pt,a4paper,oneside]{book}
\usepackage[italian]{babel}
\usepackage[utf8x]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{geometry}
\usepackage{enumitem}
\usepackage{calc}
\usepackage{booktabs}
\usepackage{longtable}\newenvironment{McsLongTabThree}[6]{%
\begin{small}
\begin{center}
\begin{longtable}{p{#2}p{#4}p{#6}}
% intestazione iniziale
\toprule
\textbf{\textit{#1}} & \textbf{\textit{#3}} & \textbf{\textit{#5}} \\
\endfirsthead
% intestazione normale
\multicolumn{3}{l}{continua dalla pagina precedente} \\
\toprule
\textbf{\textit{#1}} & \textbf{\textit{#3}} & \textbf{\textit{#5}} \\
\midrule
\endhead
% piede normale
\multicolumn{3}{r}{continua nella prossima pagina} \\
\endfoot
% piede finale
\bottomrule
\multicolumn{3}{r}{si conclude dalla pagina precedente} \\
\endlastfoot
}{%
\end{longtable}
\end{center}
\end{small}
}
\newcommand\McsRigaLongTabThree[3]{%
\midrule
{#1} & {#2} & {#3}\\
}\newenvironment{McsLB}{%
\begin{itemize}[leftmargin=*]
}{%
\end{itemize}
}
\newcommand\McsRigaLB[1]{%
\item {#1}
}\begin{document}
\begin{McsLongTabThree}
{Fattispecie di reato}{.33\textwidth-2\tabcolsep}
{Esempi di casistiche}{.33\textwidth-2\tabcolsep}
{Controlli implementati}{.33\textwidth-2\tabcolsep}
\McsRigaLongTabThree
{Falsità in un documento informatico pubblico o privato avente efficacia
probatoria (art. 491-bis c.p.)}
{\begin{McsLB}
\McsRigaLB {Falsificazione di documenti informatici da parte di
banche/società di servizi}
\McsRigaLB {Cancellazione o alterazione di informazioni a valenza
probatoria presenti sui propri sistemi}
\end{McsLB}}
{\begin{McsLB}
\McsRigaLB {Misure di protezione dell’integrità delle informazioni
messe a disposizione}
\end{McsLB}}
\McsRigaLongTabThree
{Danneggiamento di informazioni, dati e programmi informatici
utilizzati dallo Stato (art. 635-ter c.p.)}
{\begin{McsLB}
\McsRigaLB {Danneggiamento, distruzione o manomissione di documenti
informatici aventi efficacia probatoria}
\end{McsLB}}
{\begin{McsLB}
\McsRigaLB {Formalizzazione di regole per un utilizzo accettabile
delle informazioni}
\McsRigaLB {Procedure per l’etichettatura ed il trattamento delle
informazioni}
\end{McsLB}}
\end{McsLongTabThree}
\end{document}
`Ciao,
ho compilato il codice per curiosità ed ho notato una spazio verticale sopra e sotto le liste.
È voluta questa spaziatura?
R.
-
19 Aprile 2013 alle 8:30 #85016
-
19 Aprile 2013 alle 10:33 #85017::
Amedeo” post=84457E’ proprio lo spazio che voglio eliminare! 🙁
Ciao, come ti ha suggerito OldClaudio se leggi la documentazione del pacchetto [tt]enumitem[/tt] trovi scritto:
The key noitemsep kills the space between items and paragraphs (i.e., itemsep=0pt and parsep=0pt), while nosep kills all vertical spacing.
Saluti
-
19 Aprile 2013 alle 11:26 #85018::
I suggerimenti sono tutti corretti peccato che non funzionino se la lista è posta in una cella di una tabella. Per farvi un esempio, di seguito riporto lo stesso codice precedente contenente anche i vostri suggerimenti. Ho dublicato una delle liste fuori della tabella e come potete vedere dall’esito della compilazione in allegato, nella tabella la lista è preceduta e seguita da un cospicuo margine, mentre fuori della tabella no.
`
\documentclass[10pt,a4paper,oneside]{book}
\usepackage[italian]{babel}
\usepackage[utf8x]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{geometry}
\usepackage{enumitem}
\usepackage{calc}
\usepackage{booktabs}
\usepackage{longtable}%\setlist{nolistsep} % or
%\setlist{noitemsep} %\newenvironment{McsLongTabThree}[6]{%
\begin{longtable}{p{#2}p{#4}p{#6}}
% intestazione iniziale
\toprule
\textbf{\textit{#1}} & \textbf{\textit{#3}} & \textbf{\textit{#5}} \\
\endfirsthead
% intestazione normale
\multicolumn{3}{l}{continua dalla pagina precedente} \\
\toprule
\textbf{\textit{#1}} & \textbf{\textit{#3}} & \textbf{\textit{#5}} \\
\midrule
\endhead
% piede normale
\multicolumn{3}{r}{continua nella prossima pagina} \\
\endfoot
% piede finale
\bottomrule
\multicolumn{3}{r}{si conclude dalla pagina precedente} \\
\endlastfoot
}{%
\end{longtable}
}
\newcommand\McsRigaLongTabThree[3]{%
\midrule
{#1} & {#2} & {#3}\\
}\newenvironment{McsLB}{%
\begin{itemize}[leftmargin=*,noitemsep,topsep=0pt,partopsep=0pt]
}{%
\end{itemize}
}
\newcommand\McsRigaLB[1]{%
\item {#1}
}\begin{document}
Bla bla bla bla bla bla bla bla bla bla bla
\begin{McsLB}
\McsRigaLB {Falsificazione di documenti informatici da parte di
banche/società di servizi}
\McsRigaLB {Cancellazione o alterazione di informazioni a valenza
probatoria presenti sui propri sistemi}
\end{McsLB}
Bla bla bla bla bla bla bla bla bla bla bla
\begin{McsLongTabThree}
{Fattispecie di reato}{.33\textwidth-2\tabcolsep}
{Esempi di casistiche}{.33\textwidth-2\tabcolsep}
{Controlli implementati}{.33\textwidth-2\tabcolsep}
\McsRigaLongTabThree
{Falsità in un documento informatico pubblico o privato avente efficacia
probatoria (art. 491-bis c.p.)}
{\begin{McsLB}
\McsRigaLB {Falsificazione di documenti informatici da parte di
banche/società di servizi}
\McsRigaLB {Cancellazione o alterazione di informazioni a valenza
probatoria presenti sui propri sistemi}
\end{McsLB}}
{\begin{McsLB}
\McsRigaLB {Misure di protezione dell’integrità delle informazioni
messe a disposizione}
\end{McsLB}}
\McsRigaLongTabThree
{Danneggiamento di informazioni, dati e programmi informatici
utilizzati dallo Stato (art. 635-ter c.p.)}
{\begin{McsLB}
\McsRigaLB {Danneggiamento, distruzione o manomissione di documenti
informatici aventi efficacia probatoria}
\end{McsLB}}
{\begin{McsLB}
\McsRigaLB {Formalizzazione di regole per un utilizzo accettabile
delle informazioni}
\McsRigaLB {Procedure per l’etichettatura ed il trattamento delle
informazioni}
\end{McsLB}}
\end{McsLongTabThree}
\end{document}
`
-
19 Aprile 2013 alle 11:35 #85019
-
19 Aprile 2013 alle 12:03 #85020
-
19 Aprile 2013 alle 13:44 #85021::
Amedeo” post=84472Ok. Grazie. Ho inserito [tt]\vspace*{-\baselineskip}[/tt] prime del [tt]\begin{itemize}[/tt] e prima del [tt]\end{itemize}[/tt]
Logicamente sta meglio dopo; può darsi che il risultato finale sia lo stesso; nel senso che con “dopo’ si avrebbe: termina la lista; aggiungi un spazio verticale di fine lista; torna indietro di uno spazio verticale equivalente.
Mentre con il “prima” sarebbe: torna indietro di un spazio verticale equivalente a quello di fine lista; termina la lista, aggiungi uno spazio verticale di fine lista.
-
22 Aprile 2013 alle 6:34 #85022
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.