- Questo topic ha 11 risposte, 2 partecipanti ed è stato aggiornato l'ultima volta 18 anni, 8 mesi fa da
egreg9.
-
CreatoreTopic
-
30 Dicembre 2007 alle 8:41 #20233::
ciao a tutti
sto scrivendo un documento in cui, ad un certo punto, ho la necessità di scrivere una lista (itemize) a fianco di una tabella.
In pratica ho pensato di usare il pacchetto parallel e poi mettere la tabella sulla colonna di sx e tutta la lista sull’altra colonna. Il fatto è che il pacchetto parallel funziona “male” con le tabelle, con minipage e altro (l’ho letto nella documentazione stessa del pacchetto!!) e in effetti non ottengo quello che voglio!C’è qualcuno che conosce un altro pacchetto che mi permette di srivere autonomamente sulla colonna di fianco alla tabella??
Grazie!!sandra
-
CreatoreTopic
-
AutoreRisposte
-
-
30 Dicembre 2007 alle 10:08 #20234::
ciao a tutti
sto scrivendo un documento in cui, ad un certo punto, ho la necessità di scrivere una lista (itemize) a fianco di una tabella.
In pratica ho pensato di usare il pacchetto parallel e poi mettere la tabella sulla colonna di sx e tutta la lista sull’altra colonna. Il fatto è che il pacchetto parallel funziona “male” con le tabelle, con minipage e altro (l’ho letto nella documentazione stessa del pacchetto!!) e in effetti non ottengo quello che voglio!C’è qualcuno che conosce un altro pacchetto che mi permette di scrivere autonomamente sulla colonna di fianco alla tabella??
Non è molto chiaro il motivo che ti “obbliga” a questa scelta; per esempio, come fai a essere sicura che la tabella e la lista avranno altezze paragonabili? Se ce l’hanno, probabilmente il modo più semplice è di usare due minipage. Un problema potrebbe essere quello di determinare la larghezza della tabella, lo risolviamo usando un paio di trucchi. Si deve caricare il pacchetto calc e, nel preambolo, definire
`\newsavebox{\mytabbox}
\newlength{\mytablen}`
Poi possiamo usare un ambiente center per annullare il rientro, ma siccome useremo l’intera riga non ci sono problemi:
`\begin{center}
\begin{lrbox}{\mytabbox}
\begin{tabular}{…}
…
\end{tabular}
\end{lrbox}%
\setlength{\mytablen}{\wd\mytabbox}%
\usebox{\mytabbox}%
\hspace{2em}%
\begin{minipage}{\columnwidth-\mytablen}
\begin{itemize}
\item …
…
\end{itemize}
\end{minipage}
\end{center}`
Se vuoi che la tabella e la lista siano allineate rispetto alle loro prime righe, usa \begin{tabular}[t]{…} e \begin{minipage}[t]{…}.Spiegazione: inserisco la tabella in una “scatola”, di cui misuro la larghezza (\wd\mytabbox), lascio uno spazio di 2em e compongo una minipage della larghezza che avanza sulla riga.
Ciao
Enrico
-
30 Dicembre 2007 alle 17:04 #20235::
ciao e grazie dei consigli!!in realtà non c’è nulla che mi obbliga a fare come ho detto io….cioè io devo scrivere una tabella a sx e una lista a dx. Così ho pensato al pacchetto parallel per scrivere sulle due colonne….ma il pacchetto non funziona…allora cercavo un altro modo….
Tutto è valido!! proverò come mi consigli!!
buona serata!!
-
2 Gennaio 2008 alle 21:58 #20236
-
2 Gennaio 2008 alle 22:26 #20237::
purtoppo continuo ad avere dei problemi…
non riesco ad avere tabella e lista allineate
inoltre ora si è aggiunta la necessità di inserire una immagine sopra la lista…come si fa a postare il codice così vi facio vedere cosa voglio fare??
Che significa per te “allineate”? E dov’è il problema per l’immagine? 😉 (Vedi sotto.)
`\begin{center}
\begin{lrbox}{\mytabbox}
\begin{tabular}[t]{ll}
aaa & bbb\\
aaa & bbb\\
aaa & bbb\\
aaa & bbb\\
aaa & bbb\\
aaa & bbb\\
aaa & bbb\\
aaa & bbb\\
aaa & bbb\\
aaa & bbb
\end{tabular}
\end{lrbox}%
\setlength{\mytablen}{\wd\mytabbox}%
\usebox{\mytabbox}%
\hspace{1em}%
\begin{minipage}[t]{\columnwidth-\mytablen-1em}
\myincludegraphics[width=.8\hsize]{nome}
\begin{itemize}
\item aaa
\item aaa
\item aaa
\item aaa
\item aaa
\item aaa
\item aaa
\end{itemize}
\end{minipage}
\end{center}`
Per allineare tutto rispetto alla testa della tabella e della lista con la figura all’inizio, bisogna fare un incantesimo:
`\newcommand{\myincludegraphics}[2][1]{%
\vtop{\centering\hrule height0pt\includegraphics[#1]{#2}}}`
Consiglio di esprimere la larghezza della figura in termini di \hsize, che è la larghezza della minipage in cui è composta la lista. Ma puoi passare a \myincludegraphics tutto ciò che puoi passare al solito \includegraphics.Ciao
Enrico
-
3 Gennaio 2008 alle 18:17 #20238::
niente da fare!!
non sono brava a fare gli incantesimi!!forse c’è bisogno di un miracolo!!!
io faccio così:
\documentclass[10pt,a4paper,twoside]{report}
\usepackage[latin2]{inputenc}
\usepackage {color}\title{\begin{Huge} \center XXXXXX \end{Huge}}
\author{XXXXX}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage {graphicx}
\usepackage{amssymb}
\usepackage[pdftex]{hyperref}
\usepackage{parallel}
\usepackage{calc}\textwidth 14cm
\textheight 23cm
\newsavebox{\mytabbox}
\newlength{\mytablen}
\newcommand{\myincludegraphics}[2][1]{\vtop{\center\hrule height0pt \includegraphics[#1]{#2}}}\begin{document}
\maketitle {}
……
…..
…..
\newpage
\textcolor{blue}{\textbf{\begin{Large}TITOLO DI QUESTA PAGINA\end{Large}}} \\
\begin{center}
\begin{lrbox}{\mytabbox}\begin{tabular} [t]{|c|c|} \hline
XXXX & aa \\ \hline XXXX & aa \\ \hline XXXX & aa \\ \hline
XXXX & aa \\ \hline XXXX & aa \\ \hline XXXX & aa \\ \hline
XXXX & aa \\ \hline XXXX & aa \\ \hline XXXX & aa \\ \hline
XXXX & aa \\ \hline XXXX & aa \\ \hline XXXX & aa \\ \hline
XXXX & aa \ \hline XXXX & aa \\ \hline XXXX & aa \\ \hline
XXXX & aa \\ \hline XXXX & aa \\ \hline
\end{tabular}
\end{lrbox}%
\setlength{\mytablen}{\wd\mytabbox} %
\usebox{\mytabbox} %
\hspace{1em}%
\begin{minipage}[t]{\columnwidth-\mytablen-1em}
\myincludegraphics [width=.8\hsize]{nome_figura}\begin{itemize}
\item vvvvv \item vvvvv \item vvvvv
\end{itemize}
\end{minipage}
\end{center}in pratica ottengo sotto al titolo un enorme spazio vuoto (che assolutamente non voglio!!) poi ho la tabella
centrata orizzontalmente mentre in una nuova pagine ottengo l’immagine con sotto la lista,
sempre centrata orizzontalmente…..
-
3 Gennaio 2008 alle 18:26 #20239
-
3 Gennaio 2008 alle 18:39 #20240::
io in realtà sto usando MiKTeX…
però credo che il mio sia proprio un problema di codice, indipendente dal programma…ecco perchè ho postato qui e non nella sezione “altri programmi”…
forse sbaglio??Sai dov’è il problema? In due apparentemente inoffensivi spazi prima di %:
`\setlength{\mytablen}{\wd\mytabbox} %
\usebox{\mytabbox} %`
Quegli spazi non ci devono essere: lo scopo di % è proprio di evitare lo spazio che sarebbe inserito dal fine riga; se lo spazio ce lo metti tu, il % è inutile.Ovviamente, se dovessi avere molte costruzioni del genere, sarebbe il caso di definirsi una macro apposita.
Già che ci sono, ti sconsiglio vivamente le tabelle riquadrate. Consulta la documentazione del pacchetto booktabs, oppure la Breve guida
C’è anche un’altra correzione:
`\textcolor{blue}{\bfseries\Large TITOLO DI QUESTA PAGINA}`
è più che sufficiente.Ciao
Enrico
-
3 Gennaio 2008 alle 21:57 #20241::
mammamia!!
non ci sarei mai arrivata!!ti ringrazio tanto e faccio tesoro dei tuoi consigli…
sai quale è un altro problema??? ho inizato con una cosa troppo “difficile” !! non avevo mai usato il LateX e mi sono messa a fare un lavorone complicato…
ecco perchè sto incontrando mille difficoltà!!ora provo a levare lo spazio e vedo che succede
nel frattempo ti dico cosa leggo nella finestra Log File:
PRIMA COSA
l.381 \myincludegraphics [width=0.1\textwidth]
{nome_immagine}
Dimensions can be in units of em, ex, in, pt, pc,
cm, mm, dd, cc, nd, nc, bp, or sp; but yours is a new one!
I’ll assume that you meant to say pt, for printer’s points.
To recover gracefully from this error, it’s best to
delete the erroneous units; e.g., type `2′ to deleteSECONDA COSA
in corrispondenza di
\newcommand{\myincludegraphics}[1][2]{\vtop{\center\hrule height0pt \includegraphics
[#1]{#2} } } mi dice illegal paremeter number
-
3 Gennaio 2008 alle 22:02 #20242::
mammamia!!
non ci sarei mai arrivata!!ti ringrazio tanto e faccio tesoro dei tuoi consigli…
sai quale è un altro problema??? ho inizato con una cosa troppo “difficile” !! non avevo mai usato il LateX e mi sono messa a fare un lavorone complicato…
ecco perchè sto incontrando mille difficoltà!!ora provo a levare lo spazio e vedo che succede
nel frattempo ti dico cosa leggo nella finestra Log File:
PRIMA COSA
l.381 \myincludegraphics [width=0.1\textwidth]
{nome_immagine}
Dimensions can be in units of em, ex, in, pt, pc,
cm, mm, dd, cc, nd, nc, bp, or sp; but yours is a new one!
I’ll assume that you meant to say pt, for printer’s points.
To recover gracefully from this error, it’s best to
delete the erroneous units; e.g., type `2′ to deleteSECONDA COSA
in corrispondenza di
\newcommand{\myincludegraphics}[1][2]{\vtop{\center\hrule height0pt \includegraphics
[#1]{#2} } } mi dice illegal paremeter numberErrore (ma ce n’è uno anche mio):
`\newcommand{\myincludegraphics}[2][]{%
\vtop{\centering\hrule height0pt\includegraphics[#1]{#2}}}`
È chiaro che da questo (avevi scambiato 1 con 2, ma quell’1 non ci doveva andare) dipende anche il messaggio di errore.Cerca di copiare meglio! 🙂 Per esempio, non \center, ma \centering.
Ciao
Enrico
-
4 Gennaio 2008 alle 8:43 #20243
-
4 Gennaio 2008 alle 11:03 #20244::
OK!!!!!
ora funziona!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 😀 😀
ho tolto lo spazio e ora fa quello che voglio!!! perfetto!!!Imparare a tuffarsi cominciando con un doppio avvitamento e doppio salto mortale e mezzo non è proprio il modo giusto. 🙂
Con un word processor abbastanza evoluto quella costruzione è certamente possibile, anche se non alla portata di tutti. Il vantaggio di LaTeX è che la costruzione non richiede di memorizzare scelte da menù e pulsanti da premere: il codice necessario è scritto e fa parte del documento. Se ti serve qualcosa di analogo, sai dove cercarlo.
In ogni caso, è meglio se cominci dalle cose semplici. La (mica tanto) breve introduzione spiega bene la faccenda degli spazi.
Ciao
Enrico
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.