Conseils pour jouer au golf à TikZ

13

TikZ est un package Latex utilisé pour dessiner des images précises dans des documents Latex. Il a une spécification massive et une multitude de fonctionnalités qui peuvent être utiles pour questions de style de .

Quels conseils les gens ont-ils pour jouer au golf à TikZ? Comme toujours, les conseils doivent être spécifiques à TikZ (par exemple, "Supprimer les commentaires" n'est pas une réponse) et s'en tenir à un seul conseil par réponse.

Post Rock Garf Hunter
la source
Est-ce que quelqu'un joue au golf à Tikz?
Pavel
@Pavel je fais.
Post Rock Garf Hunter
4
@Serg Il y a beaucoup de conseils sur des questions de contenu similaire sur le site principal. Ceux-ci sont généralement considérés comme sur le sujet.
Post Rock Garf Hunter
2
Pour ceux qui sont intéressés, il y a un manuel tikz / pgf (c'est là que j'ai trouvé les informations pour mes réponses). Version 3.0.1a , Version 2.10
0
1
@ShreevatsaR Je pense que peut-être une nouvelle question devrait être posée pour TeX / LaTeX, tous les conseils ici sont actuellement spécifiques à Tikz, et je peux voir un avantage à les garder séparés.
Post Rock Garf Hunter

Réponses:

5

Utilisation \def

\defest un outil incroyablement puissant en matière de golf. \defvous permet d'assigner quelque chose à une variable.

Cela peut être utilisé simplement avec le pour enregistrer un nombre que vous pouvez utiliser plusieurs fois par exemple

\def\x{1456}

Définira 1456comme \xpour une utilisation future un peu comme la sauvegarde d'une variable dans un langage de programmation.

Cependant, \defest beaucoup plus puissant que cela, car \defne définit pas de variable, il définit un extrait de code à remplacer dans le programme chaque fois qu'il est appelé.

Par exemple, si vous souhaitez dessiner des rectangles à l'aide de, \draw vous pouvez écrire le code suivant:

\draw(0,0)rectangle(3,4)rectangle(8,0);\draw(2,2)rectangle(3,3);

Son utilisation \defpourrait s'écrire:

\def\x{)rectangle(}\draw(0,0\x3,4\x8,0);\draw(2,2\x3,3);
Post Rock Garf Hunter
la source
C'est brillant du point de vue du golf mais aussi très utile pour comprendre plus profondément ces commandes importantes ... vous savez quand ils vous demandent "quelle est la différence entre \ def et \ newcommand" ...
MattAllegro
5

Utilisation \documentclass[tikz]{standalone}

Par hasard, j'ai trouvé ce qui suit dans le manuel de l' standaloneemballage:

Pour les images dessinées avec TikZ, une tikzoption dédiée est fournie qui charge le tikzpackage et configure également l' tikzpictureenvironnement pour créer une seule page recadrée.

Ainsi, au lieu de

\documentclass{standalone}\input tikz\begin{document} ...

on peut écrire

\documentclass[tikz]{standalone}\begin{document} ...

pour économiser 5 octets.

Laikoni
la source
Belle trouvaille! Chaque octet que nous pouvons raser de la plaque de la chaudière est super!
Post Rock Garf Hunter
4

Utiliser à la \tikzplace de l' tikzpictureenvironnement

Au lieu de créer un tikzpicture environnement (36 octets), vous pouvez utiliser la \tikzcommande (7 octets)

Les options globales peuvent être définies entre crochets en utilisant la commande tikz en tant que telle \tikz[options...]{...} . Si le code tikz comporte une ligne, les accolades peuvent être omises, ce qui permet d'économiser deux octets supplémentaires.

Exemple:

Les deux programmes suivants produisent l'image en bas

\documentclass{standalone}\input tikz\begin{document}\tikz{\draw[thick,rounded corners=8pt](0,0)--(0,2)--(1,3.25)--(2,2)--(2,0)--(0,2)--(2,2)--(0,0)--(2,0);\draw(-1.5,0)--(0,1.5);}\end{document}

\documentclass{standalone}\input tikz\begin{document}\begin{tikzpicture}\draw[thick,rounded corners=8pt](0,0)--(0,2)--(1,3.25)--(2,2)--(2,0)--(0,2)--(2,2)--(0,0)--(2,0);\draw(-1.5,0)--(0,1.5);\end{tikzpicture}\end{document}

Exemple

Nous remercions WheatWizard d'avoir compris l'utilisation multiligne de \tikz

0 '
la source