- Questo topic ha 53 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 3 anni, 3 mesi fa da
Sara.
-
CreatoreTopic
-
12 Aprile 2023 alle 14:34 #121552
-
CreatoreTopic
-
AutoreRisposte
-
-
12 Aprile 2023 alle 19:49 #121553::
Quegli esempi sono tutti compilabili con il pacchetto amsmath che fa uso anche dei font amsa e amsb; (li carica quasi da solo,ma aggingi anche il pacchetto amssymb, per accedere ai font in modo migliore) hai solo l’imbarazzo della scelta, ma devi leggerti la documentazione di amsmath (terminale: texdoc amsmath. e analogamente per amssymb.
Il pacchetto e i suoi font è molto potente e chiunque scriva matematica con LaTeX dovrebbe farne uso quasi obbligatoriamente; forse non tanto per la matematica a livello di scuola media, ma dal livello del ginnasio o del liceo in su fino al dottorato di ricerca e alla ricerca scientifica direi che sa proprio obbligatorio. Il prefisso AMS sta per American Mathematical Society, lassociazione professionale del matematici statunitensi; ora la manutenzione di quei pacchetti e della loro documentazione è curata dal LaTeX Project Team.A occhio direi che gli esempi cui ti riferisci sono stati composti con amsmath 🙂
-
12 Aprile 2023 alle 21:10 #121554
-
13 Aprile 2023 alle 9:17 #121555
-
13 Aprile 2023 alle 15:25 #121556
-
13 Aprile 2023 alle 21:57 #121557::
A me sembrano semplici frazioni; se ti sembra che la riga orizzontale sia sottile,o spessa, se ti sembra che gli spazi de simboli e riga siano troppo larghi o troppo stretti puoi sempre modificarli; e in ogni caso amsmath mette a disposizione il comando \genfrac con il quale puoi personalizzare questi aspetti come vuoi; senza dover ogni volta specificare tutti i parametri, ti basta definire un comando, ]er esempio \sequent, e mettere una volta per tutte qui parametri dento il tuo nuovo comando, così da non doverli ripetere ogi volta.Se non ti piace, puoi semrpre andare nel sito di CTAN e cercare per argomento i pacchetti che trattano i sequents (devi usare l’inglese); secondo me perdimeno tempo a create in prima persona la macro che ti dicevo; forse devis sperimentare n poco poer torovare gli spazi e gli spessori giusti, ma ne vale la pena. Io, almeon, penso che ne valga la pena.
-
14 Aprile 2023 alle 13:05 #121558::
Ho optato per l’utilizzo del pacchetto bussproofs e mi sembra valido, grazie!Ora vorrei creare una sorta di tabella con tutte le varie regole, raggruppate in base a certi criteri.
In particolare vorrei che il numero di celle della tabella fosse variabile a seconda delle righe e vorrei poter specificare su ciascuna riga in che modo (ad esempio in percentuale) è distribuita la larghezza tra le varie celle della riga (allego immagine di esempio).
Mi dareste qualche dritta su come farlo?PS: visto che in un certo senso questa è un’altra richiesta rispetto al messaggio precedente, se lo ritenete più idoneo apro un nuovo thread.
Attachments:
You must be logged in to view attached files. -
14 Aprile 2023 alle 16:56 #121559::
riga per riga dovresti usare multicolumn nel modo più adatto; per esempio hai righe che cotengono celle di 1/4 della larghezza. altre di 1/2, altre di un terzo; il un multiplo dei denominatori è 12 , quindi definisci una tabella di 12 colonne; dentro ogni riga ci metti \per esempio [code}\multicolumn6{c}{cella da mezza larghezza}&\multicolumn 13{c}{ cella da 1/4 di larghetta}&\multicolumn3c{cella da 1/4}\\
\multicolumn(12}{c}{cella da larghezza intera}\\
\multicolumn4{c}{cella da 1/3}&\multicolumn4{c}{cella da 1/3}&\multicolumn4{c}{cella da 1/3}[/code]
Fai attenzione che i numeri di celle occupate a un \multicolumn deve essere un numero intero, quindi fai attenzione al multiplo giusto.
-
18 Aprile 2023 alle 13:47 #121560::
Ho creato una table con multicolumn come mi hai suggerito:
`
\begin{table}[]
\centering
\begin{tabular}{clllclclclll}
\multicolumn{4}{c}{ax1} & \multicolumn{4}{c}{ax2} & \multicolumn{4}{c}{ax3}\\
\multicolumn{6}{c}{e s} & \multicolumn{6}{c}{e d}\\
\multicolumn{6}{c}{o s} & \multicolumn{3}{c}{o d 1} & \multicolumn{3}{l}{o d 2}\\
\multicolumn{6}{c}{implica s} & \multicolumn{6}{c}{implica d}\\
\multicolumn{6}{c}{neg s} & \multicolumn{6}{c}{neg d}\\
\multicolumn{12}{c}{scambio}
\end{tabular}
\end{table}
`
Fin qui tutto bene.
Ho anche scritto una dimostrazione tramite calcolo dei sequenti con il package bussproofs:
`
\begin{prooftree}
\AxiomC{$\Gamma, \phi, \psi \vdash \gamma$}
\UnaryInfC{$\Gamma, \phi \wedge \psi \vdash \gamma$}
\end{prooftree}
`
Anche qui tutto bene.
Il problema nasce quando vado ad inserire la dimostrazione all’interno della multicolumn:
`
\begin{table}[]
\centering
\begin{tabular}{clllclclclll}
\multicolumn{4}{c}{ax1} & \multicolumn{4}{c}{ax2} & \multicolumn{4}{c}{ax3}\\
\multicolumn{6}{c}{
\begin{prooftree}
\AxiomC{$\Gamma, \phi, \psi \vdash \gamma$}
\UnaryInfC{$\Gamma, \phi \wedge \psi \vdash \gamma$}
\end{prooftree}
} & \multicolumn{6}{c}{e d}\\
\multicolumn{6}{c}{o s} & \multicolumn{3}{c}{o d 1} & \multicolumn{3}{l}{o d 2}\\
\multicolumn{6}{c}{implica s} & \multicolumn{6}{c}{implica d}\\
\multicolumn{6}{c}{neg s} & \multicolumn{6}{c}{neg d}\\
\multicolumn{12}{c}{scambio}
\end{tabular}
\end{table}
`
In fase di compilazione ottengo l’errore:! LaTeX Error: Something’s wrong–perhaps a missing \item.
See the LaTeX manual or LaTeX Companion for explanation.
Type Hfor immediate help.
…l.74 }
& \multicolumn{6}{c}{e d}\\
?
Quale può essere il problema?
-
18 Aprile 2023 alle 21:15 #121561::
Non sono riuscito a capire che cosa impedisca all’ambiente prooftree ad essere incorporato in una tabella; nemmeno se inscatolato in una minipage; se dovessi farlo io, ricorrerei ad un artificio complicatissimo; comporrei la dimostrazione in un’immagine, cioè un un file pdof smarginato e importerei quel pdf come se fosse un’immagine. ma la cosa richiede grosse complicazioni. Tramite il pacchetto pdfcrop si riesce a fare qualcosa; anche il pacchetto standalone riesce a fare un buon lavoro, tuttavia la cosa è un po’ acrobatica.
-
19 Aprile 2023 alle 13:36 #121562
-
19 Aprile 2023 alle 15:54 #121563::
è possibile che esistano altri pacchetti oltre a bussproofs, ma per crcarli bisogna cercare epr argometo nel sito di CTAN che ti ho indicato.Come ti ho detto io farei con standalone. ma certo bisogna impratichirsene; non è difficile, ma richiede pazienza e precisione perché le operazioni sono delicate.
-
21 Aprile 2023 alle 22:56 #121564::
Penso di aver risolto il problema pur mantenendo il pacchetto bussproofs, anzichè utilizzare l’ambiente prooftree ho inserito i sequenti in linea e dopo ogni sequente ho aggiunto il comando \DisplayProof nel modo seguente:
`
\AxiomC{}
\UnaryInfC{$\Gamma, \phi, \Gamma' \vdash \phi$}
\DisplayProof
`Ora ho scritto il seguente codice:
`
\section{Logica proposizionale intuizionista}AAAAAAAAAAAAAAAAAAAAAAAAA
\begin{table}[]
\centering
\begin{tabular}{cccccccccccc}
\multicolumn{4}{c}{
\AxiomC{}
\UnaryInfC{$\Gamma, \phi, \Gamma' \vdash \phi$}
\DisplayProof
} & \multicolumn{4}{c}{
\AxiomC{}
\UnaryInfC{$\Gamma, \bot, \Gamma' \vdash \phi$}
\DisplayProof
} & \multicolumn{4}{c}{
\AxiomC{}
\UnaryInfC{$\Gamma \vdash \top$}
\DisplayProof
}\\
\multicolumn{6}{c}{
\AxiomC{$\Gamma, \phi, \psi \vdash \gamma$}
\UnaryInfC{$\Gamma, \phi \wedge \psi \vdash \gamma$}
\DisplayProof
} & \multicolumn{6}{c}{
\AxiomC{$\Gamma \vdash \phi$}
\AxiomC{$\Gamma \vdash \psi$}
\BinaryInfC{$\Gamma \vdash \phi \wedge \psi$}
\DisplayProof
}\\
\multicolumn{6}{c}{
\AxiomC{$\Gamma, \phi \vdash \gamma$}
\AxiomC{$\Gamma, \psi \vdash \gamma$}
\BinaryInfC{$\Gamma, \phi \vee \psi \vdash \gamma$}
\DisplayProof
} & \multicolumn{3}{c}{
\AxiomC{$\Gamma \vdash \phi$}
\UnaryInfC{$\Gamma \vdash \phi \vee \psi$}
\DisplayProof
} & \multicolumn{3}{c}{
\AxiomC{$\Gamma \vdash \psi$}
\UnaryInfC{$\Gamma \vdash \phi \vee \psi$}
\DisplayProof
}\\
\multicolumn{6}{c}{
\AxiomC{$\Gamma, \phi \rightarrow \psi \vdash \phi$}
\AxiomC{$\Gamma, \psi \vdash \gamma$}
\BinaryInfC{$\Gamma, \phi \rightarrow \psi \vdash \gamma$}
\DisplayProof
} & \multicolumn{6}{c}{
\AxiomC{$\Gamma, \phi \vdash \psi$}
\UnaryInfC{$\Gamma \vdash \phi \rightarrow \psi$}
\DisplayProof
}\\
\multicolumn{6}{c}{
\AxiomC{$\Gamma, \neg \phi \vdash \phi$}
\UnaryInfC{$\Gamma, \neg \phi \vdash \psi$}
\DisplayProof
} & \multicolumn{6}{c}{
\AxiomC{$\Gamma, \phi \vdash$}
\UnaryInfC{$\Gamma \vdash \neg \phi$}
\DisplayProof
}\\
\multicolumn{12}{c}{
\AxiomC{$\Sigma, \Gamma, \Theta, \Gamma', \Sigma' \vdash \phi$}
\UnaryInfC{$\Sigma, \Gamma', \Theta, \Gamma, \Sigma' \vdash \phi$}
\DisplayProof
}
\end{tabular}
\end{table}BBBBBBBBBBBBBBBBBBBBBBBBBBB
\section{Logica proposizionale classica}
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
\begin{table}[]
\centering
\begin{tabular}{cccccc}
\multicolumn{2}{c}{
\AxiomC{}
\UnaryInfC{$\Gamma, \phi, \Gamma' \vdash \Delta, \phi, \Delta'$}
\DisplayProof
} & \multicolumn{2}{c}{
\AxiomC{}
\UnaryInfC{$\Gamma, \bot, \Gamma' \vdash \Delta$}
\DisplayProof
} & \multicolumn{2}{c}{
\AxiomC{}
\UnaryInfC{$\Gamma \vdash \Delta, \top, \Delta'$}
\DisplayProof
}\\
\multicolumn{3}{c}{
\AxiomC{$\Gamma, \phi, \psi \vdash \Delta$}
\UnaryInfC{$\Gamma, \phi \wedge \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{c}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\AxiomC{$\Gamma \vdash \psi, \Delta$}
\BinaryInfC{$\Gamma \vdash \phi \wedge \psi, \Delta$}
\DisplayProof
}\\
\multicolumn{3}{c}{
\AxiomC{$\Gamma, \phi \vdash \Delta$}
\AxiomC{$\Gamma, \psi \vdash \Delta$}
\BinaryInfC{$\Gamma, \phi \vee \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{c}{
\AxiomC{$\Gamma \vdash \phi, \psi, \Delta$}
\UnaryInfC{$\Gamma \vdash \phi \vee \psi, \Delta$}
\DisplayProof
}\\
\multicolumn{3}{c}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\AxiomC{$\Gamma, \psi \vdash \Delta$}
\BinaryInfC{$\Gamma, \phi \rightarrow \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{c}{
\AxiomC{$\Gamma, \phi \vdash \psi, \Delta$}
\UnaryInfC{$\Gamma \vdash \phi \rightarrow \psi, \Delta$}
\DisplayProof
}\\
\multicolumn{3}{c}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\UnaryInfC{$\Gamma, \neg \phi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{c}{
\AxiomC{$\Gamma, \phi \vdash \Delta$}
\UnaryInfC{$\Gamma\vdash \neg \phi, \Delta$}
\DisplayProof
}\\
\multicolumn{3}{c}{
\AxiomC{$\Sigma, \Gamma, \Theta, \Gamma', \Sigma' \vdash \Delta$}
\UnaryInfC{$\Sigma, \Gamma', \Theta, \Gamma, \Sigma' \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{c}{
\AxiomC{$\Gamma \vdash \Sigma, \Delta, \Theta, \Delta', \Sigma'$}
\UnaryInfC{$\Gamma \vdash \Sigma, \Delta', \Theta, \Delta, \Sigma'$}
\DisplayProof
}
\end{tabular}
\end{table}DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
`
La prima tabella dovrebbe comparire tra la riga di A e la riga di B, la seconda tabella dovrebbe comparire tra la riga di C e la riga di D e invece…allego il risultato che ottengo.[attachment]C:\fakepath\anteprima.png[/attachment]
-
21 Aprile 2023 alle 23:01 #121565
-
22 Aprile 2023 alle 23:22 #121566::
Ho risolto, utilizzando comunque il pacchetto bussproofs: anzichè utilizzare l’ambiente prooftree ho messo i comandi per generare i sequenti “sciolti” dentro la tabella e ho aggiunto alla fine di ognuno il comando \DisplayProof.
`
\begin{center}
\begin{tabular}{cccccc}
\hline
\multicolumn{2}{|c|}{
\AxiomC{}
\UnaryInfC{$\Gamma, \phi, \Gamma' \vdash \Delta, \phi, \Delta'$}
\DisplayProof
} & \multicolumn{2}{|c|}{
\AxiomC{}
\UnaryInfC{$\Gamma, \bot, \Gamma' \vdash \Delta$}
\DisplayProof
} & \multicolumn{2}{|c|}{
\AxiomC{}
\UnaryInfC{$\Gamma \vdash \Delta, \top, \Delta'$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Gamma, \phi, \psi \vdash \Delta$}
\UnaryInfC{$\Gamma, \phi \wedge \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\AxiomC{$\Gamma \vdash \psi, \Delta$}
\BinaryInfC{$\Gamma \vdash \phi \wedge \psi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Gamma, \phi \vdash \Delta$}
\AxiomC{$\Gamma, \psi \vdash \Delta$}
\BinaryInfC{$\Gamma, \phi \vee \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \psi, \Delta$}
\UnaryInfC{$\Gamma \vdash \phi \vee \psi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\AxiomC{$\Gamma, \psi \vdash \Delta$}
\BinaryInfC{$\Gamma, \phi \rightarrow \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma, \phi \vdash \psi, \Delta$}
\UnaryInfC{$\Gamma \vdash \phi \rightarrow \psi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\UnaryInfC{$\Gamma, \neg \phi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma, \phi \vdash \Delta$}
\UnaryInfC{$\Gamma\vdash \neg \phi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Sigma, \Gamma, \Theta, \Gamma', \Sigma' \vdash \Delta$}
\UnaryInfC{$\Sigma, \Gamma', \Theta, \Gamma, \Sigma' \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \Sigma, \Delta, \Theta, \Delta', \Sigma'$}
\UnaryInfC{$\Gamma \vdash \Sigma, \Delta', \Theta, \Delta, \Sigma'$}
\DisplayProof
}\\
\hline
\end{tabular}
\end{center}
`
L’unica cosa che ora non mi torna è come mai ora la prima riga della tabella (che è composta da tre celle) ha la prima cella più larga delle altre due, nonostante nel codice siano tutte e tre multicolumn{2}…[attachment=2740]tabella.pdf[/attachment]
Attachments:
You must be logged in to view attached files. -
24 Aprile 2023 alle 5:35 #121567::
È normale che sia così.
il comando \multicolumn dice quanti & deve “saltare” per cominciare un’altra cella, ma il descrittore di cela non dice quando deve essere larga, dice solo se il contenuto deve essere allineato a sinistra o a destra o se debba essere centrato.
Nel tuo caso la prima cella della prima riga è più larga delle altre due perché il contenuto è più largo.Se proprio volessi specificare anche le larghezze delle celle, semplici o multiple, dovresti usare i descrittori p{…}, oppure, usando il pacchetto array, m{…} o b{…} per l’allineamento verticale e i comandi >{…} per gli allineamenti orizzontali. Ovviamente molto più complesso, anche se ti permette di regolare le larghezze delle celle al millimetro, anzi al milionesimo di millimetro, tanto è preciso il sistema TeX nella gestione delle misure.
-
24 Aprile 2023 alle 5:39 #121568::
vsara” post=122137Ho risolto, utilizzando comunque il pacchetto bussproofs: anzichè utilizzare l’ambiente prooftree ho messo i comandi per generare i sequenti “sciolti” dentro la tabella e ho aggiunto alla fine di ognuno il comando \DisplayProof.
`
\begin{center}
\begin{tabular}{cccccc}
\hline
\multicolumn{2}{|c|}{
\AxiomC{}
\UnaryInfC{$\Gamma, \phi, \Gamma' \vdash \Delta, \phi, \Delta'$}
\DisplayProof
} & \multicolumn{2}{|c|}{
\AxiomC{}
\UnaryInfC{$\Gamma, \bot, \Gamma' \vdash \Delta$}
\DisplayProof
} & \multicolumn{2}{|c|}{
\AxiomC{}
\UnaryInfC{$\Gamma \vdash \Delta, \top, \Delta'$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Gamma, \phi, \psi \vdash \Delta$}
\UnaryInfC{$\Gamma, \phi \wedge \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\AxiomC{$\Gamma \vdash \psi, \Delta$}
\BinaryInfC{$\Gamma \vdash \phi \wedge \psi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Gamma, \phi \vdash \Delta$}
\AxiomC{$\Gamma, \psi \vdash \Delta$}
\BinaryInfC{$\Gamma, \phi \vee \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \psi, \Delta$}
\UnaryInfC{$\Gamma \vdash \phi \vee \psi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\AxiomC{$\Gamma, \psi \vdash \Delta$}
\BinaryInfC{$\Gamma, \phi \rightarrow \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma, \phi \vdash \psi, \Delta$}
\UnaryInfC{$\Gamma \vdash \phi \rightarrow \psi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\UnaryInfC{$\Gamma, \neg \phi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma, \phi \vdash \Delta$}
\UnaryInfC{$\Gamma\vdash \neg \phi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Sigma, \Gamma, \Theta, \Gamma', \Sigma' \vdash \Delta$}
\UnaryInfC{$\Sigma, \Gamma', \Theta, \Gamma, \Sigma' \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \Sigma, \Delta, \Theta, \Delta', \Sigma'$}
\UnaryInfC{$\Gamma \vdash \Sigma, \Delta', \Theta, \Delta, \Sigma'$}
\DisplayProof
}\\
\hline
\end{tabular}
\end{center}
`
L’unica cosa che ora non mi torna è come mai ora la prima riga della tabella (che è composta da tre celle) ha la prima cella più larga delle altre due, nonostante nel codice siano tutte e tre multicolumn{2}…[attachment=2740]tabella.pdf[/attachment]
Ciao.
L’ambiente tabular è progettato per lasciare un piccolo spazio a sinistra della prima cella e a destra dell’ultima, per ciascuna riga.
Nei descrittori di colonna esiste la possibilità di azzerare questo spazio.
Può darsi che sia questo che evita l’allineamento che lamenti.
Vedi anche messaggio precedente di OldClaudio.
R.
-
25 Aprile 2023 alle 10:53 #121569::
Senza specificare una larghezza assoluta delle multicolumn, è possibile fare in modo che la tabella si allarghi automaticamente fino a che ogni riga abbia tutte le multicolumn tutte larghe uguali?E riguardo la possibilità di azzerare lo spazio a sinistra della prima cella e a destra dell’ultima, come lo posso specificare nei descrittori di colonna?
-
25 Aprile 2023 alle 20:43 #121570::
Certo che c’è il modo di togliere o di aggiungere spazio sia in orizzontale sia in verticale; siccome è lungo da spiegare, bisognrebbe che @vsara leggesse con attenzione la guida tematica tabelle da scaricare dalla sezione Documentazione di questo forum; tutto si può aggiustare compreso quello di specificare la larghezza delle celle con descrittori di colonne specifici che si possono vedere in funzione leggendo la documetazione del pacchetto array (texdoc array);poi c’è il pacchetto lacui documentazione si legge con texdoc widetable; poi per gliamanti di LuaLaTeX c\è il pacchetto tabularray, formidabile, persino eccessivo; alsolito al documentazioe si legge con texdoc tabularray.
-
26 Aprile 2023 alle 10:17 #121571
-
26 Aprile 2023 alle 13:12 #121572::
Avrei dovuto farlo l’ultima volta che ti ho scritto. Ti chiedo scusa se lo faccio adesso.Ho copiato l’ultimo file che hai allegato col quale avresti voluto dimostrare che le tre celle della prima riga venivano di larghezza diversa; ne avevi mandato anche una immagine, da cui sembrava che fosse proprio così.
Oggi o copiato quel file sorgente;o aggiunto quelle poche che mancavano per realizzare un EMC (esempio minimo compilabile; perché non lo fai tu? risparmieresti a chi ti vuole aiutare non solo pochi minuti, ma anche l’imbarazzo di indovinare quello che stai facendo tu prima e dopo la tabella che non ti viene). Ti allego qui il file completo dell’EMC che ho confezionato; certamante il preambolo è diverso dal tuto, perché è essenziale`\documentclass[12pt]{book}
\usepackage{%array,
bussproofs}\begin{document}
\begin{center}
\begin{tabular}{*6c}
\hline
\multicolumn{2}{|c|}{
\AxiomC{}
\UnaryInfC{$\Gamma, \phi, \Gamma' \vdash \Delta, \phi, \Delta'$}
\DisplayProof
} & \multicolumn{2}{|c|}{
\AxiomC{}
\UnaryInfC{$\Gamma, \bot, \Gamma' \vdash \Delta$}
\DisplayProof
} & \multicolumn{2}{|c|}{
\AxiomC{}
\UnaryInfC{$\Gamma \vdash \Delta, \top, \Delta'$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Gamma, \phi, \psi \vdash \Delta$}
\UnaryInfC{$\Gamma, \phi \wedge \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\AxiomC{$\Gamma \vdash \psi, \Delta$}
\BinaryInfC{$\Gamma \vdash \phi \wedge \psi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Gamma, \phi \vdash \Delta$}
\AxiomC{$\Gamma, \psi \vdash \Delta$}
\BinaryInfC{$\Gamma, \phi \vee \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \psi, \Delta$}
\UnaryInfC{$\Gamma \vdash \phi \vee \psi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\AxiomC{$\Gamma, \psi \vdash \Delta$}
\BinaryInfC{$\Gamma, \phi \rightarrow \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma, \phi \vdash \psi, \Delta$}
\UnaryInfC{$\Gamma \vdash \phi \rightarrow \psi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\UnaryInfC{$\Gamma, \neg \phi \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma, \phi \vdash \Delta$}
\UnaryInfC{$\Gamma\vdash \neg \phi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{3}{|c|}{
\AxiomC{$\Sigma, \Gamma, \Theta, \Gamma', \Sigma' \vdash \Delta$}
\UnaryInfC{$\Sigma, \Gamma', \Theta, \Gamma, \Sigma' \vdash \Delta$}
\DisplayProof
} & \multicolumn{3}{|c|}{
\AxiomC{$\Gamma \vdash \Sigma, \Delta, \Theta, \Delta', \Sigma'$}
\UnaryInfC{$\Gamma \vdash \Sigma, \Delta', \Theta, \Delta, \Sigma'$}
\DisplayProof
}\\
\hline
\end{tabular}
\end{center}\end{document}
`A me le tre celle della prima riga vengono larghe uguali ! 😯Non so se la pagina che ti allego viene effettivamante allegata al messaggio, ma se viene, constati che le tre larghezze sono uguali.
Io uso TeX Live completo e aggiornato, installato nel mio portatile; sistema operativo Mac OS X.
Tu usi una versione di TeX Live completa e aggiornata? oppure di MiKTeX completo e non di base?, oppure lavori su Overleaf?[attachment=2742]Sequents-2.pdf[/attachment]
Attachments:
You must be logged in to view attached files. -
26 Aprile 2023 alle 14:52 #121573::
Scusami tu, effettivamente avevo riportato un frammento di codice e non un EMC.Nel pdf che hai allegato al messaggio, vedo che la prima cella della prima riga è considerevolmente più larga delle altre due (probabilmente a causa del fatto che il suo contenuto è più largo rispetto al contenuto delle altre due). Mi sembra strano che visualizziamo il pdf in modi diversi, ma se me lo confermi posso riportare uno screenshot di come io visualizzo il tuo pdf.
PS: utilizzo TexLive su Windows, non so se sia aggiornato, come posso verificarlo?
-
27 Aprile 2023 alle 15:27 #121574::
Guarda se questo sporco trucco ti risolve il problema`
\documentclass[12pt]{book}\usepackage{%array,
bussproofs}\begin{document}
\begin{center}\def\spazio{\hspace*{12mm}}
\begin{tabular}{*8{c}}
\spazio&\spazio&\spazio&\spazio&\spazio&\spazio&\spazio&\spazio\\
\hline
\multicolumn{4}{|c|}{\centering
\AxiomC{}
\UnaryInfC{$\Gamma, \phi, \Gamma' \vdash \Delta, \phi, \Delta'$}
\DisplayProof
} & \multicolumn{2}{c|}{\centering
\AxiomC{}
\UnaryInfC{$\Gamma, \bot, \Gamma' \vdash \Delta$}
\DisplayProof
} & \multicolumn{2}{c|}{\centering
\AxiomC{}
\UnaryInfC{$\Gamma \vdash \Delta, \top, \Delta'$}
\DisplayProof
}\\
\hline
\multicolumn{4}{|c|}{
\AxiomC{$\Gamma, \phi, \psi \vdash \Delta$}
\UnaryInfC{$\Gamma, \phi \wedge \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{4}{c|}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\AxiomC{$\Gamma \vdash \psi, \Delta$}
\BinaryInfC{$\Gamma \vdash \phi \wedge \psi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{4}{|c|}{
\AxiomC{$\Gamma, \phi \vdash \Delta$}
\AxiomC{$\Gamma, \psi \vdash \Delta$}
\BinaryInfC{$\Gamma, \phi \vee \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{4}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \psi, \Delta$}
\UnaryInfC{$\Gamma \vdash \phi \vee \psi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{4}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\AxiomC{$\Gamma, \psi \vdash \Delta$}
\BinaryInfC{$\Gamma, \phi \rightarrow \psi \vdash \Delta$}
\DisplayProof
} & \multicolumn{4}{|c|}{
\AxiomC{$\Gamma, \phi \vdash \psi, \Delta$}
\UnaryInfC{$\Gamma \vdash \phi \rightarrow \psi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{4}{|c|}{
\AxiomC{$\Gamma \vdash \phi, \Delta$}
\UnaryInfC{$\Gamma, \neg \phi \vdash \Delta$}
\DisplayProof
} & \multicolumn{4}{|c|}{
\AxiomC{$\Gamma, \phi \vdash \Delta$}
\UnaryInfC{$\Gamma\vdash \neg \phi, \Delta$}
\DisplayProof
}\\
\hline
\multicolumn{4}{|c|}{
\AxiomC{$\Sigma, \Gamma, \Theta, \Gamma', \Sigma' \vdash \Delta$}
\UnaryInfC{$\Sigma, \Gamma', \Theta, \Gamma, \Sigma' \vdash \Delta$}
\DisplayProof
} & \multicolumn{4}{|c|}{
\AxiomC{$\Gamma \vdash \Sigma, \Delta, \Theta, \Delta', \Sigma'$}
\UnaryInfC{$\Gamma \vdash \Sigma, \Delta', \Theta, \Delta, \Sigma'$}
\DisplayProof
}\\
\hline
\end{tabular}
\end{center}\end{document}
`
-
27 Aprile 2023 alle 20:40 #121575
-
28 Aprile 2023 alle 5:15 #121576::
Ho messo nella tabella una [rima riga invisibile che contiene solo degli spazi in ciascuna delle 8 celle, imponendo quindi alle celle di cambiare dimensione; la riga non si vede, mac’è e quando inserisci la tabella nel tuo testo vedi che sopra ciè dello spazio vuotoche primanon c’era. puoi annullarloconl’insermetodi spazionegati prima della tabella, per esempio `\begin{center}\vspace*{-\baselineskip}\begin{{tabular}{…}
…
\end{tabular}
\end{center}`Puoi anche regolareun poco la larghezza del tutto modificando il numer contenuto dentro al\\la definzioe di \spazio{…}
-
28 Aprile 2023 alle 5:23 #121577::
OldClaudio” post=122149Ho messo nella tabella una [rima riga invisibile che contiene solo degli spazi in ciascuna delle 8 celle, imponendo quindi alle celle di cambiare dimensione; la riga non si vede, mac’è e quando inserisci la tabella nel tuo testo vedi che sopra ciè dello spazio vuoto che priman on c’era. puoi annullarlo con l’insermeto di spazio negativo prima della tabella, per esempio ` \begin{center}\vspace*{-\baselineskip}
\begin{{tabular}{…}
…
\end{tabular}
\end{center} `Puoi anche regolareun poco la larghezza del tutto modificando il numer contenuto dentro al\\la definzioe di \spazio{…}
-
28 Aprile 2023 alle 15:00 #121578
-
29 Aprile 2023 alle 20:24 #121579::
Non vedo come si possa fare diversamente, lasciando che la tabella non fori fuori dai margini il contenuto d\puù largoe della prima colonne è di 40mm; aggiungici almeno 6mm (3 a sinistra e 3 a destra, venfono 46mm e se abbiamo tre colonne larghe uguale, vengono 138mm, che è di iù della giustezza della gabbia della pagina A4 con la classe book. certo puoi rimiccolirla componento l’itera tabba i \small o i \footnotesize. Ma a quel punto inviede di usare multicolum per pa prima riga fisse tre colonne con i descrittori p{40mm); e sudi \peer le righe dopo la prima un \multicolun(2c{espressione logica} e nelle celle delle righe dopo la prim ti resterà un mucchio di spaziobianco.. Vedi tu…
-
1 Maggio 2023 alle 15:26 #121580
-
1 Maggio 2023 alle 15:35 #121581::
Homosrato la figura della pagina A4 sullo schermo in modo che la larghezza fosse esattamante di 210mm, che è appunto la larghezza del foglio; ocn un righello ho miuralo al più larga delle formule della pima colona, ho aggio 2mm per lato e ho diviso per 4; poi ho provatodiversi valori atoroalvaloreche avevo ottenuto e ho arrotonf=dato ad un numero inerodi millimeri,Rozzo, ma efficace.
-
2 Maggio 2023 alle 8:40 #121582::
Chiarissimo, grazie.Per curiosità, se il contenuto delle mie multicolumn fosse più piccolo (ad esempio, “uno”, “due”, “tre”), ci sarebbe un modo di dire a LaTeX di allargare la tabella fino a fargli occupare il 100% della larghezza (che mi sembra di capire si chiami gabbia) e di rendere tutte e tre le multicolumn larghe uguali?
-
2 Maggio 2023 alle 21:16 #121583::
Si usando il pacchetto tabularx e il descrittore di colona X; probabilmente bisogna dirgli di centrare il contenuto in tutte le celle, cosa che si può fare con i comandi speciali della pacchetto array, ma non è detto che un terzo di riga sia sufficiente per tutte le formule da inserirci dentro; basta provare. Se poi la tabella così compost contenesse tutti i sequenti ma fosse solo un pochino più larga della giustezza, si può sempre centrarla dento una scatola costruita con \makebox.
Insomma LaTeX è una scatola di attrezzi; c’è l’imbarazzo della scelta per trovare gli strumenti giusti. Ma prima bisogna sempre analizzare il problema; in particolare bisogna sapere quanti millimetri è largoilcontenuto di ogni oggetto da incasellare in colonna e provvedere con calcoli ragionevoli prima di prendere la prima soluzione che viene in mente.
-
3 Maggio 2023 alle 8:18 #121584::
Ho letto la documentazione di tabularx ed ho provato a costruire qualche tabella.
Il codice seguente crea una tabella che si adatta alle dimensioni del contenuto, ed è quindi “stretta”:
`
\documentclass[a4paper,11pt]{book}\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}\usepackage{tabularx}
\begin{document}
\begin{tabularx}{\columnwidth}{XX}
\hline
\multicolumn{2}{|c|}{Ciao}\\
\hline
\multicolumn{1}{|c|}{ciao} & \multicolumn{1}{c|}{ciao} \\
\hline
\multicolumn{1}{|c|}{ciao} & \multicolumn{1}{c|}{ciao} \\
\hline
\multicolumn{1}{|c|}{ciao} & \multicolumn{1}{c|}{ciao} \\
\hline
\multicolumn{1}{|c|}{ciao} & \multicolumn{1}{c|}{ciao} \\
\hline
\end{tabularx}\end{document}
`
Ho allora usato il trucchetto di aggiungere una riga vuota all’inizio:
`
\documentclass[a4paper,11pt]{book}\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}\usepackage{tabularx}
\begin{document}
\begin{tabularx}{\columnwidth}{XX}
& \\
\hline
\multicolumn{2}{|c|}{Ciao}\\
\hline
\multicolumn{1}{|c|}{ciao} & \multicolumn{1}{c|}{ciao} \\
\hline
\multicolumn{1}{|c|}{ciao} & \multicolumn{1}{c|}{ciao} \\
\hline
\multicolumn{1}{|c|}{ciao} & \multicolumn{1}{c|}{ciao} \\
\hline
\multicolumn{1}{|c|}{ciao} & \multicolumn{1}{c|}{ciao} \\
\hline
\end{tabularx}\end{document}
`
In questo modo la tabella si allarga fino ad occupare la larghezza della griglia, ma c’è un modo più corretto per ottenere questo risultato?
-
3 Maggio 2023 alle 20:01 #121585::
Devi suare la colonna di tipo C anche dentro la tabella; e devi cominciarne il contenenuto con \centering a meno che, usando il pacchetto array tu non usi una rigaddi apertura di tabularx così`\begin{tabularx{{\linewudth}{*2{>{\centering}X}}`Nota: il comando \linewidth è molto comodo a una colonna equivale a ]textwidt e a due colonne, per una tabella che deve stare solo dentro una colonna, \linewidth equivale a \columnwidth. Io uso sistematicamente \linewidth e non mi chiedo più in quale modalità sto componendo.
-
4 Maggio 2023 alle 23:12 #121586::
In che senso devo usare la colonna di tipo C? Cioè usare la C maiuscola al posto della minuscola?Ho usato il pacchetto array e aggiunto la riga di apertura di tabularx che mi hai indicato ma il problema non si è risolto:
`
\documentclass[a4paper,11pt]{book}\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}\usepackage{array}
\usepackage{tabularx}\begin{document}
\begin{tabularx}{\linewidth}{*2{>{\centering}X}}
%& \\
\hline
\multicolumn{2}{|c|}{Ciao}\\
\hline
\multicolumn{1}{|c|}{ciao} & \multicolumn{1}{c|}{ciao} \\
\hline
\multicolumn{1}{|c|}{ciao} & \multicolumn{1}{c|}{ciao} \\
\hline
\multicolumn{1}{|c|}{ciao} & \multicolumn{1}{c|}{ciao} \\
\hline
\multicolumn{1}{|c|}{ciao} & \multicolumn{1}{c|}{ciao} \\
\hline
\end{tabularx}\end{document}
`
-
5 Maggio 2023 alle 4:59 #121587::
Mi sono evidentemente spiegato male.Questo è il codice che funziona`% !TEX encoding = UTF-8 Unicode
% !TEX TS-program = pdflatex% La prima riga “magica” è per l'editor, se è un editor moderno, altrimenti
% serve solo all'utente per ricordarsi che con TeX Live moderno o MiKTeX
% moderno questa è e la codifica preimpostata\documentclass[a4paper,11pt]{book}
\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}% pleonastico: UTF* è preimpostato\usepackage{array}
\usepackage{tabularx}\begin{document}
\hrule
\bigskip\noindent
\begin{tabularx}{\linewidth}{|*2{>{\centering}X|}}
%
\hline
\multicolumn{2}{|c|}{Ciao}\tabularnewline
\hline
ciao & ciao \tabularnewline
\hline
ciao & ciao \tabularnewline
\hline
ciao & ciao \tabularnewline
\hline
ciao & ciao \tabularnewline
\hline
\end{tabularx}\end{document}
`
Dopo [tt]\begin{document}[/tt] ho inserito il comando \hrule che traccia una linea orizzontale attraverso la giustezza corrente; \bigskip è per spaziala da quel che viene dopo. \noindent serve a evitare che la tabella, larga quanto la giustezza, cominci un nuovo capoverso; sarebbe inutile se la tabella fosse dentro un ambiente (flottante) table, perché dentro table e figure il rientro è nullo per impostazione predefinita. Prova a togliere \noindent e vedi che cosa succede.
-
5 Maggio 2023 alle 10:46 #121588::
Fantastico, grazie!Un’ultima cosa…ho notato che se inserisco dei sequenti al posto della scritta “ciao” (o anche semplicemente se inserisco una scritta con lettere maiuscole) questi “toccano” la linea superiore della tabella, c’è un modo per aggiustare la spaziatura in modo che questo non succeda?
[attachment=2744]tabellasequenti.png[/attachment]
Attachments:
You must be logged in to view attached files. -
5 Maggio 2023 alle 21:21 #121589
-
7 Maggio 2023 alle 12:54 #121590::
Ho utilizzato
`\setlength\extrarowheight{15pt}`
ed ora il risultato è quasi esattamente quello che volevo.
L’unica cosa che manca sarebbe allineare verticalmente il contenuto di ogni cella al centro della cella, qualche suggerimento?[attachment=2747]tabellasequentibis.png[/attachment]
Attachments:
You must be logged in to view attached files. -
7 Maggio 2023 alle 15:44 #121591::
A me la tua tabella pare che i contenuti siano perfettamente centrato; se non li vuoi cenrati non usare i descrittooc ma o il descrittore l per alinearli a sinistra e r per allinearli a destra.Inve io userei la ridefinizionizio di \arraystretch, per esempio [tt]\def\arraystretich{1.5}[/tt]; questo ampllia il pilastrino che stainilsce l’altezza della riga di 1.5 volte;, quindi viene un po’ di spazio sia sopra sia sotto. Naturalmente il valore giusto del coefficiente va provato per tentativi. Vedi pagina 30 della guida sulle tabelle. Nella pagina 35 c’è un esempio. Dalla pagina 41in poi ci sono diverse applicazioni di questa ridefinizione per disegnare una tbella strana, quelle della cassa tipografica. Nelle pagine 65 e 66 c’è l’applicazione ad un tipo specile di tabella costituit da una matrice matemematic. Nell’esempio 8.2 c’è l’applicazione ad una lung tabelle che occuoa due pagine.
Insomma la gita sulle tabelle contiene quasi tutto quello che bisogna sapre sulle tabelle. Volendo ci si potrebbe aggingere ltro, ma quello che serve a te c’è tutto.
-
8 Maggio 2023 alle 10:18 #121592::
Si si, l’allineamento orizzontale era perfetto.
Ho comunque sostituito la soluzione che utilizzava \extrarowheight con quella che mi hai suggerito che utilizza arraystretch.
`
\documentclass[a4paper,11pt]{book}\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}\usepackage{array}
\usepackage{tabularx}
\usepackage{bussproofs}\begin{document}
\hrule
\bigskip\noindent
%\setlength\extrarowheight{15pt}
\renewcommand\arraystretch{3}
\begin{tabularx}{\linewidth}{|*2{>{\centering}X|}}
\hline
\multicolumn{2}{|c|}{
\AxiomC{$\Gamma, \phi, \psi \vdash \Delta$}
\UnaryInfC{$\Gamma, \phi \wedge \psi \vdash \Delta$}
\DisplayProof
}\tabularnewline
\hline
\AxiomC{$\Gamma, \phi, \psi \vdash \Delta$} \DisplayProof & ciao \tabularnewline
\hline
ciao & ciao \tabularnewline
\hline
\AxiomC{$\Gamma, \phi, \psi \vdash \Delta$}
\UnaryInfC{$\Gamma, \phi \wedge \psi \vdash \Delta$}
\DisplayProof & ciao \tabularnewline
\hline
ciao & ciao \tabularnewline
\hline
\end{tabularx}\end{document}
`
Quello che ti chiedevo nel post precedente era se c’è un modo per centrare il contenuto delle celle orizzontalmente, nel senso che attualmente all’interno delle celle c’è molto più spazio sopra che sotto rispetto al contenuto.
-
8 Maggio 2023 alle 16:59 #121593::
Prova questo
`\documentclass[a4paper,11pt]{book}\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}\usepackage{array}
\usepackage{tabularx}
\usepackage{bussproofs}\begin{document}
\hrule
\bigskip\noindent
\setlength\extrarowheight{-4pt}
\renewcommand\arraystretch{4}
\begin{tabularx}{\linewidth}{|*2{>{\centering}X|}}
\hline
\multicolumn{2}{|c|}{
\AxiomC{$\Gamma, \phi, \psi \vdash \Delta$}
\UnaryInfC{$\Gamma, \phi \wedge \psi \vdash \Delta$}
\DisplayProof
}\tabularnewline
\hline
\AxiomC{$\Gamma, \phi, \psi \vdash \Delta$} \DisplayProof & ciao \tabularnewline
\hline
ciao & ciao \tabularnewline
\hline
\AxiomC{$\Gamma, \phi, \psi \vdash \Delta$}
\UnaryInfC{$\Gamma, \phi \wedge \psi \vdash \Delta$}
\DisplayProof & ciao \tabularnewline
\hline
ciao & ciao \tabularnewline
\hline
\end{tabularx}\end{document}`
-
9 Maggio 2023 alle 10:48 #121594::
Fantastico!A voler essere pignoli rimarrebbe da capire perchè la linea orizzontale ottenuta con \hrule è un po più a sinistra rispetto alle linee orizzontali della tabella ottenute con \hline, anche se questa è davvero una sottigliezza.
[attachment=2748]tabellasequentitris.png[/attachment]
Attachments:
You must be logged in to view attached files. -
9 Maggio 2023 alle 16:31 #121595
-
9 Maggio 2023 alle 23:42 #121596
-
18 Maggio 2023 alle 13:29 #121597::
Mi sa che qualcosa mi sfugge ancora…ho scritto questo emc:`
\documentclass[a4paper,11pt]{book}\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}\usepackage{array}
\usepackage{tabularx}\begin{document}
\begin{tabularx}{\linewidth}{|*4{>{\centering}X|}}
\multicolumn{2}{|c|}{doppia} & singola & singola
\end{tabularx}\end{document}
`Come mai la multicolumn contenente il testo “doppia” non è larga il doppio rispetto alle celle contenenti il testo “singola”? Allego l’output.
[attachment=2751]tabularx.pdf[/attachment]
Attachments:
You must be logged in to view attached files. -
18 Maggio 2023 alle 20:40 #121598
-
19 Maggio 2023 alle 0:26 #121599::
Ho fatto come mi hai detto ma ancora la multicolumn non è larga il doppio delle altre due celle.`
\documentclass[a4paper,11pt]{book}\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}\usepackage{array}
\usepackage{tabularx}\begin{document}
\begin{tabularx}{\linewidth}{|*4{>{\centering}X|}}
\multicolumn{2}{|X|}{doppia} & singola & singola
\end{tabularx}\end{document}
`[attachment=2752]tabularx1.pdf[/attachment]
Attachments:
You must be logged in to view attached files. -
19 Maggio 2023 alle 5:11 #121600
-
20 Maggio 2023 alle 9:32 #121601
-
21 Maggio 2023 alle 19:39 #121602
-
22 Maggio 2023 alle 13:54 #121603::
Così va meglio. Mi rimane un mistero il perchè in una tabella da 4 colonne che occupano l’intera larghezza della griglia una multicolumn{2} non occupi automaticamente metà della larghezza della griglia, comunque il trucco di usare 0.475 dal punto di vista pratico funziona.Invece tornando alla questione del pacchetto bussproofs per la scrittura delle dimostrazioni, ho notato che se viene inserita una regola nella forma
`
\AxiomC{Ipotesi 1}
\UnaryInfC{Tesi 1}
`
tutto funziona bene, mentre se viene inserita una regola senza ipotesi nella forma
`
\AxiomC{} %RIGA CHE NON OCCUPA SPAZIO
\UnaryInfC{Tesi 2}
`
lo spazio vuoto che dovrebbe essere lasciato sopra per mostrare che non ci sono ipotesi viene ignorato.Riporto un EMC che chiarisce meglio la situazione:
`
\documentclass[a4paper,11pt]{book}\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}\usepackage{array}
\usepackage{tabularx}
\usepackage{bussproofs}\begin{document}
\begin{tabularx}{\linewidth}{*1{>{\centering}X}}
\AxiomC{Ipotesi 1}
\UnaryInfC{Tesi 1}
\DisplayProof
\\
\AxiomC{} %RIGA CHE NON OCCUPA SPAZIO
\UnaryInfC{Tesi 2}
\DisplayProof
\\
\AxiomC{Ipotesi 3}
\UnaryInfC{Tesi 3}
\DisplayProof
\end{tabularx}\end{document}
`Avevo provato a mettere come ipotesi
`
\AxiomC{\null}
`
ma non cambia nulla, c’è qualche carattere “invisibile” che posso mettere perchè venga rispettato lo spazio vuoto nel posto dove devono andare le ipotesi?[attachment=2753]bussproofs.pdf[/attachment]
Attachments:
You must be logged in to view attached files. -
22 Maggio 2023 alle 15:37 #121604::
Anch’io avre pensato a un carattere invisibile, \null che è qualcosa di invisibile, è sinonimo di \hbox{}. Conoscendoil sottostante interpreteTeX, si capisce che \hbox è un comando primitivo che sembra piuttost limitato; Proverei a metteri \mbox{}; se non bastasse proverei con \makebox[1em}{}; oppure con \quad, oppure con \qquad. Insomma ci sono vari modi di inserire qualcosa di invisibile.
-
22 Maggio 2023 alle 15:44 #121605
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.