PSTricks est une distribution de plusieurs extensions. L'extension de base est codice_1, d'autres extensions peuvent être chargées selon les besoins. L'extension codice_1 charge automatiquement l'extension codice_3, la couleur est donc automatiquement prise en compte.
L'utilisation de PSTricks nécessite de passer par du PostScript, on ne peut donc pas compiler avec codice_4/codice_5. On peut toutefois obtenir un fichier PDF à partir du fichier PostScript en utilisant, par exemple, codice_6. Signalons que l'extension PDFtricks permet de placer directement des commandes PSTricks dans un document écrit pour pdflatex (voir ci-après).
Les unités par défaut sont le centimètre pour les longueurs et le degré pour les angles. On peut toutefois utiliser des longueurs avec unité.
Contrairement aux commandes de codice_7, les commandes de PSTricks peuvent être utilisées en dehors d'un environnement graphique, ce sont alors des objets de « largeur nulle » (le caractère suivant est écrit comme s'il n'y avait pas de dessin). Par exemple, si l'on veut rayer un mot, on peut créer la commande suivante :
\newcommand{\rayer}[1]{%
\settowidth{\longueurmot}{#1}%
(voir aussi ici une autre solution).
Environnement codice_8.
Si l'on veut que LaTeX prenne en compte le graphique pour placer le texte, il faut placer les instructions dans un environnement codice_8. On passe en paramètre les coordonnées du point en haut à droite, le point (0,0) étant au point de référence (sur la ligne de base là où serait le prochain caractère) :
 \begin{pspicture}("x"1,"y"1)
on peut aussi indiquer les coordonnées du point en bas à gauche : 
 \begin{pspicture}("x"0,"y"0)("x"1,"y"1)
cela décale la position du point (0,0), mais ne change pas l'emplacement de la boîte. Les dimensions de la boîte sont ("x"1-"x"0)×("y"1-"y"0).
On peut mettre l'environnement codice_8 dans une figure flottante (environnement codice_11).
Objets de base.
Segments et lignes brisées.
Un segment de droite s'obtiennent avec
 \psline("x"0,"y"0)("x"1,"y"1)
Pour tracer un vecteur :
 \psline{->}("x"0,"y"0)("x"1,"y"1)
Une ligne brisée s'obtient en mettant les points les uns à la suite des autres
 \psline("x"0,"y"0)("x"1,"y"1)("x"2,"y"3)…("xn","yn")
On peut tracer une ligne brisée aux angles arrondis avec l'option codice_12, la "valeur" en question étant le rayon de courbure.
\psline[linearc=0.2,->](0,0)(0.5,0.5)(1,1)
Rectangles.
Pour tracer un rectangle, on utilise la commande codice_13, en indiquant les coordonnées des deux coins en bas à gauche et en haut à droite :
 \psframe("x"0,"y"0)("x"1,"y"1)
La commande codice_14 a la même syntaxe donne un rectangle rempli.
On peut tracer des rectangles aux angles arrondis avec l'option codice_15, la "valeur" en question étant le rayon de courbure.
\psframe[framearc=0.2](0,0)(1,1)
Polygones.
Les polygones sont toujours fermés. Ils sont décrits avec la commande codice_16 et ont la même syntaxe que codice_17 :
 \pspolygon("x"0,"y"0)("x"1,"y"1)("x"2,"y"3)…("xn","yn")
La commande codice_18 donne un polygone rempli. 
On peut tracer des polygones aux angles arrondis avec l'option codice_12, la "valeur" en question étant le rayon de courbure.
\pspolygon[linearc=0.2](0,0)(0.5,0.5)(1,1)
Cercles, arcs de cercle, portions de disque et ellipses.
Les cercles se tracent avec la commande codice_20 :
où ("x","y") sont les coordonnées du cercle et "r" est son rayon. La commande codice_21 donne un disque plein.
On peut tracer un arc de cercle avec la commande codice_22 :
où "angle"1 et "angle"2 sont les angles limitant de l'arc, selon la convention trigonométrique. La commande codice_23 donne une portion de disque pleine délimitée par l'arc et la corde.
On peut tracer une portion de disque façon « part de camembert » avec la commande codice_24, qui a une syntaxe similaire à codice_22. La commande codice_26 trace une portion pleine.
Les ellipses se tracent avec la commande codice_27 :
 \psellipse("x","y")("axe_horizontal","axe_vertical")
où ("axe_horizontal","axe_vertical") sont les longueurs des axes. La commande codice_28 donne une ellipse pleine.
Courbes.
Paraboles.
On peut tracer un arc de parabole de direction asymptotique verticale avec la commande codice_29 :
 \psparabola("x"0,"y"0)("x"1,"y"1)
le sommet de la parabole est en ("x"1,"y"1), elle passe par ("x"0,"y"0) et s'arrête à ce point, et les deux branches sont symétriques.
La commande codice_30 donne un portion de plan pleine délimitée par l'arc et la corde.
Courbes de Bézier.
La commande codice_31 permet de tracer une courbe de Bézier avec un nombre arbitraire de points de contrôle, mais composée d'arcs ayant au plus quatre points de contrôle. L'option codice_32 permet d'afficher les points de contrôle ainsi que les tangentes. La commande codice_33 donne une surface pleine délimitée par la courbe et la droite joignant les points extrêmes.
Courbe d'interpolation.
La commande codice_34 crée une courbe passant par tous les points indiqués. La commande codice_35 ne trace pas les premier et dernier arcs, mais prend en compte les points extrêmes pour le calcul de la courbure ; cela permet de s'affranchir d'effets de bord en « forçant » la courbure ou la tangente aux extrémités tracées.
Les commandes étoilées codice_36 et codice_37 tracent des surfaces pleines délimitées par la courbe et la droite joignant les points extrêmes.
Texte.
On peut écrire du texte à un point donné avec la commande codice_38 :
On peut faire tourner le texte d'un angle donné :
On peut passer en option le point de la boîte de texte qui sera au point ("x","y") désigné :
On peut aussi utiliser la commande codice_48, qui elle place le texte en décalé par rapport au point indiqué :
va placer le texte à une distance donnée dans une direction donnée (définie par un angle) par rapport à ("x","y"). On peut aussi faire tourner le texte d'un angle donné :
PSTricks propose plusieurs encadrements pour le texte :
Les versions étoilées donnent un cadre plein.
L'extension codice_56 permet de faire en sorte que le texte épouse une ligne, par exemple obtenue avec codice_17, codice_16, codice_34, … On utilise pour cela la commande codice_60 :
Mais il faut auparavant annuler le tracé des lignes avec codice_61 si l'on veut avoir le texte seul.
\begin{pspicture}(5,5)
Quadrillage et axes.
La commande codice_62 crée un quadrillage sur toute l'image (dans un environnement codice_8), avec un pas de 0,2 ( par défaut). On peut lui adjoindre des paramètres :
On peut utiliser les options suivantes :
\psgrid[griddots=5, subgriddiv=0, gridlabels=0pt](-1,-1)(5,5)
Si l'on veut placer des axes, il faut utiliser l'extension codice_83 qui fournit la commande codice_84 :
 \psaxes("xmin","ymin")("xmax","ymax")
 \psaxes("x"0,"y"0)("xmin","ymin")("xmax","ymax")
où ("xmin","ymin") et ("xmax","ymax") sont les extrêmes des axes, et ("x"0,"y"0) est le point où se coupent les axes.
On peut ajouter des options : 
Par ailleurs, comme pour les segments, codice_88 permet de mettre des flèches aux axes.
\begin{pspicture}(-1,-1)(5,5)
\psaxes[comma,Dx=0.5,Dy=0.5]{->}(0,0)(3,3)
Paramètres généraux.
Toutes les figures.
On peut ajouter des paramètres optionnels de traits, entre crochet :
Par exemple
Si des paramètres s'appliquent à plusieurs figures, on peut les définir avec la commande codice_109, par exemple
Cette commande permet également de changer l'unité par défaut avec les paramètres :
"valeur" étant un nombre avec ou sans unité. Cela permet de changer l'échelle d'un dessin, de bénéficier de la graduation automatique des axes, et ne modifie pas l'épaisseur des traits.
Figures ouvertes.
On peut définir l'extrémité d'une figure ouverte (segment, ligne brisée, arc, …) avec un paramètre optionnel, sous la forme :
\psline{"extrémité0"-"extrémité1"}("x"0,"y"0)("x"1,"y"1)
Les différentes extrémités sont :
Par exemple : codice_127, codice_128, codice_129, codice_130.
Figures fermées.
Pour les figures fermées, on peut définir le type de remplissage :
Par exemple
Placement des objets.
Les commandes codice_144 et codice_48 peuvent en fait servir à translater n'importe quel objet.
\begin{pspicture}(5,5)
\psline{->}(0,0)(1,1)
\begin{pspicture}(5,5)
\psline{->}(0,0)(1,1)
\psline{->}(1,1)(2,2)
On peut répéter le placement avec la commande codice_146 :
où ("décalage_x","décalage_y") est le vecteur séparant deux objets placés consécutivement. On peut ajouter les mêmes options qu'avec codice_144 (point de référence et angle de rotation) :
S'il n'y a pas de texte mais uniquement des objets graphiques, on peut utiliser la commande codice_148 :
Extension PDFTricks.
L'extension PDFTricks permet d'utiliser PSTricks avec codice_5. Pour cela, il faut
Le fichier codice_153 ressemblera à
 \begin{pspicture}(0,0)(10,10)
[...]
Pour autoriser le lancement d'une commande en ligne, on lance la compilation avec l'option codice_154 :
Exercices.
Dans les exercices suivants, le but est de :
Exercice 1.
Réaliser la molécule de benzène ci-contre (format 2×2). On utilisera la géométrie pour avoir un placement exact des segments. On donnera deux solutions :
Le rayon du cercle central est arbitraire et ajusté par essai-erreur « pour faire joli ».
Habituellement, on représente plutôt la groupement « debout » (tourné d'un sixième de tour par rapport au dessin présent). Pour le dessin des molécules, mieux vaut utiliser PPChTeX.
Exercice 2.
Réaliser l'écrou ci-contre (représentation de type dessin technique, format 2×2). Pour l'hexagone, on utilisera la première solution évoquée ci-dessus.
Le trait fort a une épaisseur de , soit codice_157 en unité par défaut ; le trait fin a une épaisseur de , soit codice_158 en unité par défaut.
Notez que les dimensions ne correspondent pas à un écrou normalisé : le but n'étant pas de générer un dessin exact mais d'apprendre à maîtriser PSTricks, on utilise volonteairement des valeurs simples.
Exercice 3.
Réaliser l'organigramme ci-contre (format 5×5).
L'extension codice_159 permet de simplifier la réalisation de ce type de diagrammes, comme on le verra plus loin.
Exercice 4.
Réaliser le document ci-contre.
Exercice 5.
Réaliser le document ci-contre, en créant des commandes personnelles pour les objets présents plusieurs fois.
L'image fait 5×5 (unité par défaut), on laisse une marge de 1 en haut, en bas et à droite de la parabole pour pouvoir placer les indications. La tangente aux extrémités faisant un angle supérieur à par rapport à l'horizontale, le vecteur "vx" est plus petit que le vecteur "vy" , mais la valeur exacte importe peu pour cette représentation schématique.
On placera les éléments de texte relativement aux points particuliers du dessin (extrémités ou milieu des vecteurs, sommet de la parabole).