Modifier le style de table en mode organisation uniquement pour l'exportation LaTeX

10

J'essaie de personnaliser le style de mes tables en mode organisation lors de l'exportation vers Latex. J'ai besoin de changer leur police, leur taille, la couleur d'arrière-plan de l'en-tête et la couleur d'arrière-plan de toutes les autres lignes.

Je vois beaucoup de discussions sur la façon de faire ces choses en pure LaTeX, en utilisant (ou non) des packages supplémentaires comme pgfplotstable. Mais je voudrais garder mon document le plus possible dans le style «org-mode» (pour plus de lisibilité et parce que j'exporte aussi en HTML).

Il existe des moyens de spécifier des options de base via un attribut, mais cela ne me mènera pas assez loin: http://orgmode.org/manual/LaTeX-specific-attributes.html#LaTeX-specific-attributes

Existe-t-il un moyen de spécifier dans un document en mode organisationnel que les tables doivent utiliser un format / structure particulier (peut-être dans un .sty externe) lors de l'exportation vers LaTeX sans gâcher la table de style de mode organisationnel de base pour d'autres exportations?

Merci

xav
la source

Réponses:

8

Je fais principalement des tables avec les paquets de latex #+LaTeX_HEADER: \usepackage{booktabs}, \usepackage{xcolor}, \usepackage{colortbl}et \usepackage{siunitx}. Avec des attributs d'exportation. Par exemple:

#+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 Donne moi

entrez la description de l'image ici

Dieter.Wilhelm
la source
ne peut pas reproduire votre sortie. Avez-vous besoin d'autre chose pour exécuter cela? En particulier, le latex se plaint d'une \rowcolors[]{2}{contiYellow!5}{contiYellow!20}séquence de contrôle non définie. J'ai installé les 3 packages ci-dessus.
DJJ
@DJJ: Je suis désolé d'avoir oublié de vous donner les bons packages, j'ai mis à jour la réponse.
Dieter.Wilhelm
Merci beaucoup. Mais je ne peux toujours pas reproduire la sortie. J'ai la même erreur. Je suppose que l'indice pourrait être :align rS. Je ne sais pas ce que représente le S. Lorsque vous utilisez le colortablepackage, vous devez saisir `\ rowcolors [`, sur chaque ligne. Avez-vous trouvé un moyen de parcourir les lignes?
DJJ
C'est Spour aligner les nombres d'une manière agréable, à des fins de test que vous pourriez utiliser lou plus. Vous pourriez avoir besoin \usepackage{siunitx}pour cela
Dieter.Wilhelm
1
Merci. Je pense avoir trouvé le coupable. Avec \usepackage[table]{xcolor}cela fonctionne comme prévu. Un grand merci encore
DJJ
3

Selon la quantité de modification du LaTeX exporté dont vous avez besoin, vous pourriez être en mesure d'utiliser un filtre, par exemple si tout ce que vous avez à faire est d'envelopper le latex dans du LaTeX supplémentaire: http://orgmode.org/worg/exporters/filter -markup.html

Si les modifications sont plus complexes, il semble que vous ayez besoin d'un exportateur personnalisé, par exemple http://orgmode.org/worg/dev/org-export-reference.html où vous pouvez définir une fonction qui génère le code latex que vous souhaitez pour une table.

John Kitchin
la source