Il s'agit de l'image de commande qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS.
PROGRAMME:
Nom
pic - compiler des images pour troff ou TeX
SYNOPSIS
pic [ -nvCSU ] [ nom de fichier ...]
pic -t [ -cvzCSU ] [ nom de fichier ...]
DESCRIPTION
Cette page de manuel décrit la version GNU de pic, qui fait partie du document groff
système de formatage. pic compile des descriptions d'images intégrées dans trof ou TeX
saisir des fichiers dans des commandes comprises par TeX ou trof. Chaque image commence par un
ligne commençant par . PS et se termine par une ligne commençant par .PE. Tout en dehors de . PS
et mes .PE est passé sans changement.
Il est de la responsabilité de l'utilisateur de fournir des définitions appropriées des PS et mes PE
macro. Lorsque le package de macros utilisé ne fournit pas de telles définitions (par exemple,
anciennes versions de -ms), des définitions appropriées peuvent être obtenues avec -mpique: ceux-ci seront
centrez chaque image.
OPTIONS
Les options qui ne prennent pas d'arguments peuvent être regroupées derrière un seul -. L'option spéciale
-- peut être utilisé pour marquer la fin des options. Un nom de fichier de - fait référence à la norme
contribution.
-C Reconnaître . PS et mes .PE même lorsqu'il est suivi d'un caractère autre qu'un espace ou
nouvelle ligne.
-S Mode plus sûr ; ne pas exécuter sh commandes. Cela peut être utile lors de l'utilisation de
entrée non fiable (activée par défaut).
-U Mode non sécurisé ; revenir à l'option par défaut -S.
-n N'utilisez pas les extensions groff pour les commandes de dessin troff. Tu devrais utiliser ça
si vous utilisez un postprocesseur qui ne prend pas en charge ces extensions. Les
les extensions sont décrites dans groff_out(5). le -n l'option provoque également pic ne pas utiliser
des lignes de longueur nulle pour dessiner des points en mode troff.
-t Mode TeX.
-c Soyez plus compatible avec sujet. Implique -t. Lignes commençant par \ ne sont pas passés
à travers de manière transparente. Lignes commençant par . sont passés par l'initiale
. changé en \. Une ligne commençant par .ps bénéficie d'un traitement particulier : il faut
argument entier facultatif spécifiant l'épaisseur de la ligne (taille du stylo) en millipouces ;
un argument manquant restaure l'épaisseur de ligne précédente ; l'épaisseur de ligne par défaut
est de 8 millipouces. L'épaisseur de trait ainsi spécifiée ne prend effet que lorsqu'un
l'épaisseur de ligne négative n'a pas été spécifiée par l'utilisation du épaisseur attribut ou
en définissant le épaisseur de ligne variable.
-v Imprimez le numéro de version.
-z En mode TeX, dessinez des points en utilisant des lignes de longueur nulle.
Les options suivantes prises en charge par d'autres versions de pic sont ignorés :
-D Dessinez toutes les lignes en utilisant la séquence d'échappement \D. pic fait toujours ça.
-T dev Générer une sortie pour le trof dispositif dev. Ceci est inutile car le trof
sortie générée par pic est indépendant de l'appareil.
UTILISATION
Cette section décrit uniquement les différences entre GNU pic et la version originale de
pic. Beaucoup de ces différences s'appliquent également aux nouvelles versions d'Unix pic. Complet
la documentation est disponible dans le dossier
/usr/share/doc/groff-base/pic.ms.gz
Texas mode
Le mode TeX est activé par le -t option. En mode TeX, pic va définir une vbox appelée \graphique
pour chaque image. Utilisez le nom de la figue commande pour changer le nom de la vbox. Vous devez
imprimez vous-même cette vbox en utilisant, par exemple, la commande
\centerline{\box\graph}
En fait, puisque la vbox a une hauteur de zéro (elle est définie avec \vtop), cela produira
espace légèrement plus vertical au-dessus de l'image qu'en dessous;
\centerline{\augmenter 1em\boîte\graphique}
éviterait cela.
Pour que la vbox ait une hauteur positive et une profondeur de zéro (comme utilisé par exemple par LaTeX
graphiques.sty), définissez la macro suivante dans votre document :
\def\gpicbox#1{%
\vbox{\unvbox\csname #1\endcsname\kern 0pt}}
Maintenant, vous pouvez simplement dire \gpicbox{graphique} au lieu de \box\graph.
Vous devez utiliser un pilote TeX qui prend en charge le sujet spéciaux, version 2.
Lignes commençant par \ sont passés de manière transparente ; une % est ajouté à la fin du
ligne pour éviter les espaces indésirables. Vous pouvez utiliser cette fonction en toute sécurité pour modifier les polices ou pour
changer la valeur de \baselineskip. Tout le reste peut très bien produire des résultats indésirables ;
À utiliser à vos risques et périls. Les lignes commençant par un point ne bénéficient d'aucun traitement particulier.
Commandes
pour variable = expression1 à expression2 [by [*]expression3] do X corps X
Ensemble variable à expression1. Alors que la valeur de variable est inférieur ou égal à expression2,
do corps et incrémenter variable by expression3; si by n'est pas donné, incrémenter variable by
1. Si expression3 est préfixé par * puis variable sera plutôt multiplié par expression3.
La valeur de expression3 peut être négatif pour le cas additif ; variable est ensuite testé
s'il est supérieur ou égal à expression2. Pour le cas multiplicatif, expression3
doit être supérieur à zéro. Si les contraintes ne sont pas respectées, la boucle n'est pas exécutée.
X peut être n'importe quel caractère n'apparaissant pas dans corps.
if expr puis X si vrai X [d'autre Y si-faux Y]
Évaluer expr; s'il est différent de zéro alors faites si vrai, sinon faites si-faux. X peuvent être
tout caractère n'apparaissant pas dans si vrai. Y peut être n'importe quel caractère n'apparaissant pas dans
si-faux.
impression arg
Concaténez les arguments et imprimez sous forme de ligne sur stderr. Chaque arg doit être un
expression, une position ou un texte. Ceci est utile pour le débogage.
commander arg
Concaténez les arguments et transmettez-les sous forme de ligne à troff ou TeX. Chaque
arg doit être une expression, une position ou un texte. Cela a un effet similaire à un
ligne commençant par . or \, mais permet de passer les valeurs des variables
par. Par exemple,
. PS
x = 14
commander ".ds un magnifique x is " x "."
.PE
\*[chaîne de caractères]
impressions
x is 14.
sh X commander X
Passé commander à une coquille. X peut être n'importe quel caractère n'apparaissant pas dans commander.
copier "nom de fichier"
Inclure nom de fichier à ce stade du fichier.
copier ["nom de fichier"] thru X corps X [jusqu'au "mot"]
copier ["nom de fichier"] thru macro [jusqu'au "mot"]
Cette construction fait corps une fois pour chaque ligne de nom de fichier; la ligne est divisée en
mots délimités par des blancs et occurrences de $i in corps, Pour i entre 1 et 9, sont
remplacé par le i-ième mot de la ligne. Si nom de fichier n'est pas donné, les lignes sont prises
de l'entrée actuelle jusqu'à .PE. Si un jusqu'au clause est spécifiée, les lignes seront
lecture seule jusqu'à une ligne dont le premier mot est mot; cette ligne sera alors
mis au rebut. X peut être n'importe quel caractère n'apparaissant pas dans corps. Par exemple,
. PS
copier thru % cercle at (1 $, 2 $) % jusqu'au "FINIR"
1 2
3 4
5 6
FIN
boîte
.PE
équivaut à
. PS
cercle at (1,2)
cercle at (3,4)
cercle at (5,6)
boîte
.PE
Les commandes à exécuter pour chaque ligne peuvent également être extraites d'une macro définie
plus tôt en donnant le nom de la macro comme argument à thru.
réinitialiser
réinitialiser variable1[,] variable2
Réinitialiser les variables prédéfinies variable1, variable2 ... à leurs valeurs par défaut. Si
aucun argument n'est donné, réinitialise toutes les variables prédéfinies à leurs valeurs par défaut.
Notez que l'attribution d'une valeur à en échelon provoque également toutes les variables prédéfinies qui
les dimensions de contrôle doivent être réinitialisées à leurs valeurs par défaut multipliées par la nouvelle valeur de
majeure.
parcelle expr ["texte"]
Il s'agit d'un objet texte qui est construit en utilisant texte comme chaîne de format pour
sprintf avec un argument de expr. Si texte est omis une chaîne de format de "%g" is
utilisé. Les attributs peuvent être spécifiés de la même manière que pour un objet texte normal. Être
faites très attention à ce que vous spécifiiez une chaîne de format appropriée ; pic ne fait que très
vérification limitée de la chaîne. Ceci est déprécié en faveur de sprintf.
variable := expr
Ceci est similaire à = sauf variable doit déjà être défini, et expr sera
assigné à variable sans créer de variable locale au bloc courant. (Par
contraste, = définit la variable dans le bloc courant si elle n'est pas déjà définie
là, puis modifie la valeur dans le bloc actuel uniquement.) Par exemple, le
Suivante à la suite:
. PS
x = 3
y = 3
[
x := 5
y = 5
]
impression x " " y
.PE
impressions
5 3
Arguments de forme
X quoi que ce soit d'artificiel X
sont également autorisés à être de la forme
{ quoi que ce soit d'artificiel }
Dans ce cas, quoi que ce soit d'artificiel peut contenir des occurrences équilibrées de { et mes }. Les chaînes peuvent contenir X
ou des occurrences déséquilibrées de { et mes }.
Expressions
La syntaxe des expressions a été considérablement étendue :
x ^ y (exponentiation)
péché(x)
cos (x)
atan2(y, x)
Journal(x) (base 10)
exp (x) (base 10, soit 10^x)
carré(x)
int (x)
rand () (renvoie un nombre aléatoire entre 0 et 1)
rand(x) (renvoie un nombre aléatoire entre 1 et x; obsolète)
srand(x) (définir la graine de nombre aléatoire)
maximum(e1, e2)
min (e1, e2)
!e
e1 && e2
e1 || e2
e1 == e2
e1 != e2
e1 >= e2
e1 > e2
e1 <= e2
e1 < e2
"str1" == "str2"
"str1" != "str2"
Les expressions de comparaison de chaînes doivent être entre parenthèses dans certains contextes pour éviter toute ambiguïté.
Autres Modifications
Une expression nue, expr, est acceptable en tant qu'attribut ; c'est équivalent à dir expr,
où dir est la direction actuelle. Par exemple
en ligne 2i
signifie tracer une ligne de 2 pouces de long dans la direction actuelle. Le caractère 'i' (ou 'I') est
ignoré; pour utiliser une autre unité de mesure, réglez le en échelon variable à une valeur appropriée.
La largeur et la hauteur maximales de l'image sont tirées des variables maxpswid et mes
maxpsht. Initialement, ceux-ci ont les valeurs 8.5 et 11.
La notation scientifique est autorisée pour les nombres. Par exemple
x = 5e-2
Les attributs de texte peuvent être composés. Par exemple,
"toto" au dessus de juste
est valable.
Il n'y a pas de limite à la profondeur à laquelle les blocs peuvent être examinés. Par exemple,
[UNE: [B : [C : boîte ]]] avec .ABCsw at 1,2
cercle at dernier [].ABC
est acceptable.
Les arcs ont maintenant des points cardinaux déterminés par le cercle dont l'arc fait partie.
Les cercles, les ellipses et les arcs peuvent être en pointillés ou en tirets. En mode TeX, les splines peuvent être en pointillés ou
en pointillé aussi.
Les boîtes peuvent avoir des coins arrondis. Les rad attribut spécifie le rayon du quart-
cercles à chaque coin. Sinon rad or diamètre attribut est donné, un rayon de boxrad est utilisé.
Dans un premier temps, boxrad a une valeur de 0. Une case avec des coins arrondis peut être en pointillés ou en tirets.
Les boîtes peuvent avoir des côtés inclinés. Cela change effectivement la forme d'une boîte d'un
rectangle à un parallélogramme arbitraire. Les x incliné et mes y en biais les attributs spécifient le
décalage x et y du coin supérieur droit de la boîte par rapport à sa position par défaut.
Pour . PS line peut avoir un deuxième argument spécifiant une hauteur maximale pour l'image. Si
la largeur de zéro est spécifiée la largeur sera ignorée dans le calcul du facteur d'échelle
pour la photo. Notez que GNU pic mettra toujours une image à l'échelle du même montant
aussi bien verticalement qu'horizontalement. Ceci est différent du DWB 2.0 pic qui peut
redimensionner une image d'une quantité différente verticalement qu'horizontalement si une hauteur est
spécifié.
Chaque objet texte est associé à une boîte invisible. Les points cardinaux d'un texte
objet sont déterminés par cette boîte. Le mouvement implicite associé à l'objet est également
déterminé par cette case. Les dimensions de cette boîte sont prises à partir de la largeur et de la hauteur
les attributs; si l'attribut width n'est pas fourni alors la largeur sera considérée comme étant
largeur de texte; si l'attribut de hauteur n'est pas fourni, la hauteur sera considérée comme la
nombre de chaînes de texte associées à l'objet fois texte. Initialement largeur de texte et mes
texte avoir une valeur de 0.
Dans (presque tous) les endroits où une chaîne de texte entre guillemets peut être utilisée, une expression de la forme
sprintf("le format", arg, )
peut également être utilisé; cela produira les arguments formatés selon le format, Qui
doit être une chaîne comme décrit dans printf(3) adapté au nombre d'arguments
fourni.
L'épaisseur des lignes utilisées pour dessiner les objets est contrôlée par le épaisseur de ligne variable.
Cela donne l'épaisseur des lignes en points. Une valeur négative signifie utiliser la valeur par défaut
épaisseur : en mode de sortie TeX, cela signifie utiliser une épaisseur de 8 millipouces ; en sortie TeX
mode avec le -c option, cela signifie utiliser l'épaisseur de ligne spécifiée par .ps lignes; dans
mode de sortie troff, cela signifie utiliser une épaisseur proportionnelle à la taille du point. Une valeur nulle
signifie tracer la ligne la plus fine possible prise en charge par le périphérique de sortie. Au départ, il a un
valeur de -1. Il y a aussi épaisse[ness] attribut. Par exemple,
cercle épaisseur 1.5
tracerait un cercle à l'aide d'une ligne d'une épaisseur de 1.5 points. L'épaisseur des lignes
n'est pas affecté par la valeur du en échelon variable, ni par la largeur ou la hauteur donnée dans
le . PS ligne.
Les boîtes (y compris les boîtes aux coins arrondis ou aux côtés inclinés), les cercles et les ellipses peuvent être
rempli en leur donnant un attribut de remplir[ed]. Cela prend un argument optionnel d'un
expression avec une valeur comprise entre 0 et 1 ; 0 le remplira de blanc, 1 de noir, des valeurs
entre les deux avec une nuance proportionnellement grise. Une valeur supérieure à 1 peut également être utilisée :
cela signifie remplir avec la nuance de gris actuellement utilisée pour le texte et les lignes.
Normalement, ce sera noir, mais les périphériques de sortie peuvent fournir un mécanisme pour changer cela.
Sans argument, alors la valeur de la variable valeur de remplissage sera utilisé. Au départ ce
a une valeur de 0.5. L'attribut invisible n'affecte pas le remplissage des objets. Tout
le texte associé à un objet rempli sera ajouté une fois l'objet rempli, donc
que le texte ne sera pas obscurci par le remplissage.
Trois modificateurs supplémentaires sont disponibles pour spécifier des objets colorés : contour[d] définit le
couleur du contour, ombragé la couleur de remplissage, et colo[u]r[ed] définit les deux. Tous les trois
les mots-clés attendent un suffixe spécifiant la couleur, par exemple
cercle ombragé "Green" contour "noir"
Actuellement, la prise en charge des couleurs n'est pas disponible en mode TeX. Noms de couleurs prédéfinis pour groff
sont dans les fichiers de macro de l'appareil, par exemple ps.tmac; des couleurs supplémentaires peuvent être définies avec
le .defcolor demande (voir la page de manuel de trof(1) pour plus de détails).
Pour changer le nom de la vbox en mode TeX, définissez la pseudo-variable nom de la figue (lequel est
en fait une commande spécialement analysée) dans une image. Exemple:
. PS
nom de la figue = barre de pied ;
.PE
La photo est alors disponible dans la boite \foobar.
pic suppose qu'au début d'une image, le glyphe et la couleur de remplissage sont définis sur la
valeur par défaut.
Les pointes de flèche seront dessinées comme des triangles pleins si la variable pointe de flèche est non nul et
soit le mode TeX est activé, soit le -n l'option n'a pas été donnée. Initialement pointe de flèche possède de
valeur de 1. Notez que les pointes de flèches pleines sont toujours remplies de la couleur de contour actuelle.
La sortie troff de pic est indépendant de l'appareil. Les -T L'option est donc redondante. Tous
les nombres sont considérés comme étant en pouces ; les nombres ne sont jamais interprétés comme étant dans la machine troff
unités.
Les objets peuvent avoir un aligné attribut. Cela ne fonctionnera que si le postprocesseur est tâtons,
or gropdf. Tout texte associé à un objet ayant le aligné l'attribut sera
tourné autour du centre de l'objet de sorte qu'il soit aligné dans la direction de la
point de départ au point d'arrivée de l'objet. Notez que cet attribut n'aura aucun effet
pour les objets dont les points de départ et d'arrivée coïncident.
Dans des endroits où nth est autorisée »expr'e est également autorisé. Noter que 'e est un jeton unique :
aucun espace n'est autorisé entre les » et de la th. Par exemple,
pour i = 1 à 4 do {
en ligne de 'i'th boîte.nw à 'i+1'ème box.se
}
CONVERSION
Pour obtenir une image autonome à partir d'un pic dossier, joignez votre pic coder avec . PS et mes .PE
demandes ; roff des commandes de configuration peuvent être ajoutées au début du fichier, mais aucune
roff texte.
Il faut alimenter ce fichier dans groff sans ajouter d'informations sur la page, vous
doit vérifier quel . PS et mes .PE les requêtes sont effectivement appelées. Par exemple, la macro mm
package ajoute un numéro de page, ce qui est très ennuyeux. Pour le moment, appel standard groff
sans aucun package de macro fonctionne. Alternativement, vous pouvez définir vos propres demandes, par exemple pour
ne fais rien:
. De PS
..
. De PE
..
groff lui-même ne fournit pas de conversion directe dans d'autres formats de fichiers graphiques. Mais
il y a beaucoup de possibilités si vous transformez d'abord votre image en PostScript®
formater à l'aide du groff option -Tps. Depuis cela ps-file manque d'informations BoundingBox il
n'est pas très utile en soi, mais il peut être introduit dans d'autres programmes de conversion, généralement
nommé ps2autre or pstoautre ou similaire. De plus, l'interpréteur PostScript script fantôme
(gs) a des périphériques de conversion graphique intégrés qui sont appelés avec l'option
gs -sAPPAREIL=
Appeler
gs --Aidez-moi
pour une liste des appareils disponibles.
Une alternative peut être d'utiliser le -Tpdf possibilité de convertir votre image directement en PDF
format. La MediaBox du fichier produit peut être contrôlée en passant un -Pp taille de papier
à grof.
En tant que format de fichier PostScript encapsulé EPS devient de plus en plus important, et le
la conversion n'était pas considérée comme triviale dans le passé, vous pourriez être intéressé de savoir qu'il y a
est un outil de conversion nommé ps2eps qui fait le bon travail. C'est bien mieux que le
outil ps2epsi emballé avec gs.
Pour les formats graphiques bitmap, vous devez utiliser pstopnm; le résultat (intermédiaire) PNM
peut ensuite être converti en pratiquement n'importe quel format graphique à l'aide des outils du netpbm
paquet .
Utilisez la photo en ligne à l'aide des services onworks.net