Cambia lo stile della tabella in modalità org solo per l'esportazione LaTeX


10

Sto cercando di personalizzare lo stile delle mie tabelle in modalità org quando esportate in Latex. Devo cambiare la faccia del carattere, la dimensione del carattere, il colore di sfondo dell'intestazione e il colore di sfondo di ogni altra riga.

Vedo molte discussioni su come fare queste cose in puro LaTeX, usando (o meno) pacchetti aggiuntivi come pgfplotstable. Ma vorrei mantenere il mio documento il più possibile in stile "modalità org" (per leggibilità e perché esporto anche in HTML).

Esistono modi per specificare le opzioni di base tramite l'attributo, ma non mi porterà abbastanza lontano: http://orgmode.org/manual/LaTeX-specific-attributes.html#LaTeX-specific-attributes

Esiste un modo per specificare in un documento in modalità org che le tabelle dovrebbero usare un formato / struttura particolare (forse in un file .sty esterno) quando si esporta in LaTeX senza incasinare la tabella di stile in modalità org di base per altre esportazioni?

Grazie

Risposte:


8

Sto facendo principalmente le tabelle con i pacchetti di lattice #+LaTeX_HEADER: \usepackage{booktabs}, \usepackage{xcolor}, \usepackage{colortbl}e \usepackage{siunitx}. Insieme agli attributi di esportazione. Per esempio:

#+LATEX: \definecolor{contiYellow}{RGB}{255,165,0} #+LATEX: \rowcolors[]{2}{contiYellow!5}{contiYellow!20} #+ATTR_LATEX: :align rS | *Type* | *Stiffness* in N/mm | |--------------------------------------------+---------------------| | Two bearings SKF in radial dir. (supplier) | 167800 | | Measurement bearings + rotor + device | 8398 | | Measurement device | 14753 | | Calculation rotor + bearings | 19500 | |--------------------------------------------+---------------------| | Sim. Rotor + "bearings" (package solid) | 50900 | | Sim. Rotor + "joints" (package solid) | 33320 | | Sim. Shaft + "bearings" (without package) | 12000 | | Sim. Shaft + "bearings" 10 mm | 20030 | #+TBLFM: @2$2=2*8.39e4 mi da

inserisci qui la descrizione dell'immagine


impossibile riprodurre il tuo output. Hai bisogno di qualcos'altro per eseguire questo? In particolare il lattice si lamenta della \rowcolors[]{2}{contiYellow!5}{contiYellow!20}sequenza di controllo indefinita. Ho installato i 3 pacchetti sopra.
DJJ,

@DJJ: mi dispiace di aver dimenticato i pacchetti giusti, ho aggiornato la risposta.
Dieter.Wilhelm,

Grazie molto. Ma non riesco ancora a riprodurre l'output. Ho fatto lo stesso errore. Immagino che l'indizio potrebbe essere :align rS. Non so che cosa significhi la S. Quando si utilizza il colortablepacchetto è necessario inserire `\ rowcolors [`, su ogni riga. Hai trovato un modo per scorrere tra le file?
DJJ,

Questo Sserve per allineare i numeri in modo corretto, a scopo di test che potresti usare lo giù di lì. Potrebbe essere necessario \usepackage{siunitx}per esso
Dieter.Wilhelm

1
Grazie. Penso di aver trovato il colpevole. Con \usepackage[table]{xcolor}funziona come previsto. Mille grazie ancora
DJJ,

3

A seconda della quantità di modifica del LaTeX esportata di cui hai bisogno, potresti essere in grado di utilizzare un filtro, ad esempio se tutto ciò che devi fare è avvolgere il lattice in alcuni LaTeX aggiuntivi: http://orgmode.org/worg/exporter/filter -markup.html

Se le modifiche sono più complesse, sembra che tu abbia bisogno di un esportatore personalizzato, ad esempio http://orgmode.org/worg/dev/org-export-reference.html dove potresti definire una funzione che genera il codice in lattice che desideri un tavolo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.