NAME¶
pstext - To plot text on maps
SYNOPSIS¶
pstext textfile -Jparameters
-Rwest/east/south/north [r] [
-B tickinfo ] [
-Cdx/dy ]
-D[j]
dx/dy[v[red/green/blue] ] [
-E azimuth/elevation ] [
-G red/green/blue ] [
-H[nrec ] ] [ -K ] [
-L ] [ -M[flag] ] [ -N
] [ -O ] [ -P ] [
-Spen ] [
-U[/dx/dy/][ label] ] [
-V ] [
-W[red/green/blue][o|O|c|C
[pen ]] ] [ -Xx-shift ] [
-Yy-shift ] [
-Zzlevel ] [
-ccopies ] [ -: ]
DESCRIPTION¶
pstext plots textstrings of variable size, font type, and orientation.
Various map projections are provided, with the option to draw and annotate the
map boundaries.
PostScript code is written to standard output. Greek
characters, subscript, superscript, and small caps are supported as follows:
The sequence @~ toggles between the selected font and Greek (Symbol). @%
no% sets the font to
no; @%% resets the font to the starting
font, @- toggles subscripts on/off, @+ toggles superscript on/off, and @#
toggles small caps on/off. @@ prints the @ sign. @e, @o, @a, @E, @O, @A give
the accented Scandinavian characters. Composite characters (overstrike) may be
indicated with the @!<char1><char2> sequence, which will print the
two characters on top of each other. To learn the octal codes for symbols not
available on the keyboard and some accented European characters, see Section
4.16 and Appendix F in the
GMT Technical Reference and Cookbook. Note
that WANT_EURO_FONT must be set to TRUE in your .gmtdefaults file in order to
use the accented characters. Using the
-W option, a colored rectangle
underlying the text may be plotted (Does not work for strings with sub/super
scripts, symbols, or composite characters, except in paragraph mode (
-M)).
- textfile
- This file contains 1 or more records with (x, y, size, angle, fontno,
justify, text). If no file is given, pstext will read standard
input. size is text size in points, angle is measured in
degrees counter-clockwise from horizontal, fontno sets the font
type, justify sets the alignment. If fontno is not an
integer, then it is taken to be a textstring with the desired fontname.
See the gmtdefaults man page for names and numbers of avaiable
fonts (or run pstext -L). The alignment refers to the part of the
textstring that will be mapped onto the ( x,y) point. Choose a 2
character combination of L, C, R (for left, center, or right) and T, M, B
for top, middle, or bottom. e.g., BL for lower left.
- -J
- Selects the map projection. Scale is UNIT/degree, 1:xxxxx, or width in
UNIT (upper case modifier). UNIT is cm, inch, or m, depending on the
MEASURE_UNIT setting in .gmtdefaults, but this can be overridden on the
command line by appending the c, i, or m to the scale/width value.
CYLINDRICAL PROJECTIONS:
-Jclon0/lat0/scale (Cassini)
-Jjlon0/scale (Miller)
-Jmscale (Mercator - Greenwich and Equator as origin)
-Jmlon0/lat0/scale (Mercator - Give meridian and standard
parallel)
-Joalon0/lat0/azimuth/scale (Oblique Mercator - point and
azimuth)
-Joblon0/lat0/lon1/lat1/scale (Oblique Mercator - two points)
-Joclon0/lat0/lonp/latp/scale (Oblique Mercator - point and
pole)
-Jqlon0/scale (Equidistant Cylindrical Projection (Plate
Carree))
-Jtlon0/scale (TM - Transverse Mercator, with Equator as y =
0)
-Jtlon0/lat0/scale (TM - Transverse Mercator, set origin)
-Juzone/scale (UTM - Universal Transverse Mercator)
-Jylon0/lats/scale (Basic Cylindrical Projection)
AZIMUTHAL PROJECTIONS:
-Jalon0/lat0/scale (Lambert).
-Jelon0/lat0/scale (Equidistant).
-Jflon0/lat0/horizon/scale (Gnomonic).
-Jglon0/lat0/scale (Orthographic).
-Jslon0/lat0/[slat/]scale (General
Stereographic)
CONIC PROJECTIONS:
-Jblon0/lat0/lat1/lat2/scale (Albers)
-Jdlon0/lat0/lat1/lat2/scale (Equidistant)
-Jllon0/lat0/lat1/lat2/scale (Lambert)
MISCELLANEOUS PROJECTIONS:
-Jhlon0/scale (Hammer)
-Jilon0/scale (Sinusoidal)
-Jk[f|s]lon0/scale (Eckert IV (f) and VI (s))
-Jnlon0/scale (Robinson)
-Jrlon0/scale (Winkel Tripel)
-Jvlon0/scale (Van der Grinten)
-Jwlon0/scale (Mollweide)
NON-GEOGRAPHICAL PROJECTIONS:
-Jp[a]scale[/origin] (polar (theta,r)
coordinates, optional a for azimuths and offset theta [0])
-Jxx-scale[l|ppow][/y-scale[l|ppow]]
(Linear, log, and power scaling)
More details can be found in the psbasemap manpages.
- -Jz
- Sets the vertical scaling (for 3-D maps). Same syntax as -Jx.
- -R
- west, east, south, and north specify the Region of interest.
To specify boundaries in degrees and minutes [and seconds], use the
dd:mm[:ss] format. Append r if lower left and upper right map
coordinates are given instead of wesn.
OPTIONS¶
No space between the option flag and the associated arguments.
- -B
- Sets map boundary tickmark intervals. See psbasemap for
details.
- -C
- Sets the clearance between the text and the surrounding box
[0.15c/0.15 c (or 0.05i/0.05i)]. Only used if
-W is specified.
- -D
- Offsets the text from the projected (x,y) point by dx,dy
[0/0]. Use -Dj to offset the text away from the point instead (i.e.
the text's justification' will determine the direction of the shift). In
paragraph mode ( -M), one may append v which will draw a
line from the original point to the shifted point. Optionally append a
pen for this line.
- -E
- Sets the viewpoint's azimuth and elevation (for perspective view)
[180/90].' (Not implemented for paragraph mode).
- -G
- Sets the gray-shade (0-255) or color (r/g/b, each 0-255) used for drawing
the text. [Default is black]
- -H
- Input file(s) has Header record(s). Number of header records can be
changed by editing your .gmtdefaults file. If used, GMT default is
1 header record.
- -K
- More PostScript code will be appended later [Default terminates the
plot system].
- -L
- Lists the font-numbers and font-names available, then exits.
- -M
- Paragraph mode. Files must be multiple segment files. Segments are
separated by a special record whose first character must be flag
[Default is '>']. Starting in the 3rd column, we expect to find
information pertaining to the typesetting of a text paragraph (the
remaining lines until next segment header). The information expected is (x
y size angle fontno justify linespace parwidth parjust), where x y size
angle fontno justify are defined above, while linespace and
parwidth are the linespacing and paragraph width, respectively. The
justification of the text paragraph is governed by parjust which
may be l(eft), c(enter), r(ight), or
j(ustified). The segment header is followed by one or more lines
with paragraph text. Text may contain the escape sequences discussed above
as well as three more: @; r/g/b; changes the font color (@;; resets
it), @: size: changes the font size (@:: resets it), and @_ toggles
underline on/off. Separate paragraphs with a blank line.
- -N
- Do NOT clip text at map boundaries [Default will clip].
- -bo
- Selects binary output. Append s for single precision [Default is
double].
- -P
- Selects Portrait plotting mode [GMT Default is Landscape, see
gmtdefaults to change this].
- -S
- Draw text outline. Append pen attributes. (Not implemented for paragraph
mode).
- -U
- Draw Unix System time stamp on plot. User may specify where the lower left
corner of the stamp should fall on the page relative to lower left corner
of plot. Optionally, append a label, or c (which will plot the
command string.). The GMT parameters UNIX_TIME and UNIX_TIME_POS can
affect the appearance; see the gmtdefaults man page for
details.
- -V
- Selects verbose mode, which will send progress reports to stderr [Default
runs "silently"].
- -W
- Paint a rectangle beneath the text string. Set color [Default is no fill].
Append o to draw rectangle outline, add a pen to specify pen
attributes [1/0/0/0]. Choose upper case O to get a rounded
rectangle (only in paragraph mode). Choose lower case c to get a
concave rectangle (only in paragraph mode). Choose upper case C to
get a convex rectangle (only in paragraph mode).
- -X -Y
- Shift origin of plot by (x-shift,y-shift). Prepend a for
absolute coordinates; the default ( r) will reset plot origin.
- -Z
- For 3-D projections: Sets the z-level of the basemap [0]. (Not implemented
for paragraph mode).
- -:
- Toggles between (longitude,latitude) and (latitude,longitude)
input/output. [Default is (longitude,latitude)]. Applies to geographic
coordinates only.
- -c
- Specifies the number of plot copies. [Default is 1]
EXAMPLES¶
To plot the outlines of the textstrings stored in the file text.d on a Mercator
plot with the given specifications, try
pstext text.d
-R-30/30/-10/20
-Jm0.1
i -P -B5
-S0.5
p > plot.ps
To add a typeset figure caption for a 3-inch wide illustration, try
pstext
-R0/3/0/5
-JX3
i -O -H -M -N << EOF
>> figure.ps
This is an optional header record
> 0 -0.5 12 0 4 LT 13p 3i j
@%5%Figure 1.@%% This illustration shows nothing useful, but it still needs
a figure caption. Highlighted in @;255/0/0;red@;; you can see the locations
of cities where it is @_impossible@_ to get any good Thai food; these are to be
avoided.
EOF
BUGS¶
Except for paragraph mode, the horizontal justification of surrounding
rectangles does not work when Greek symbols, sub- and superscripts, and/or
composite characters are imbedded in the textstring. In paragraph mode, the
presence of composite characters and other escape sequences may lead to
unfortunate word splitting. Finally, the outline option does not work with the
escape sequences.
The
-N option does not adjust the BoundingBox information so you may have
to post-process the PostScript outout with epstool or ps2epsi to obtain a
correct BoundingBox.
SEE ALSO¶
gmt(1gmt),
psbasemap(1gmt)