Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

ps_translate(3) [php man page]

PS_TRANSLATE(3) 							 1							   PS_TRANSLATE(3)

ps_translate - Sets translation

SYNOPSIS
bool ps_translate (resource $psdoc, float $x, float $y) DESCRIPTION
Sets a new initial point of the coordinate system. PARAMETERS
o $psdoc - Resource identifier of the postscript file as returned by ps_new(3). o $x - x-coordinate of the origin of the translated coordinate system. o $y - y-coordinate of the origin of the translated coordinate system. RETURN VALUES
Returns TRUE on success or FALSE on failure. EXAMPLES
Example #1 Translation of the coordinate system <?php function rectangle($ps) { ps_moveto($ps, 0, 0); ps_lineto($ps, 0, 50); ps_lineto($ps, 50, 50); ps_lineto($ps, 50, 0); ps_lineto($ps, 0, 0); ps_stroke($ps); } $ps = ps_new(); if (!ps_open_file($ps, "translate.ps")) { print "Cannot open PostScript file "; exit; } ps_set_info($ps, "Creator", "translate.php"); ps_set_info($ps, "Author", "Uwe Steinmann"); ps_set_info($ps, "Title", "Translated example"); ps_set_info($ps, "BoundingBox", "0 0 596 842"); $psfont = ps_findfont($ps, "Helvetica", "", 0); ps_begin_page($ps, 596, 842); ps_set_text_pos($ps, 100, 100); ps_translate($ps, 500, 750); rectangle($ps); ps_translate($ps, -500, -750); ps_setfont($ps, $psfont, 8.0); ps_show($ps, "Text at initial position"); ps_end_page($ps); ps_begin_page($ps, 596, 842); ps_set_text_pos($ps, 100, 100); ps_save($ps); ps_translate($ps, 500, 750); rectangle($ps); ps_restore($ps); ps_setfont($ps, $psfont, 8.0); ps_show($ps, "Text at initial position"); ps_end_page($ps); ps_delete($ps); ?> The above example demonstrates two possible ways to place a graphic (in this case just a rectangle) at any position on the page, while the graphic itself uses its own coordinate system. The trick is to change the origin of the current coordinate system before drawing the rectangle. The translation has to be undone after the graphic has been drawn. On the second page a slightly different and more elegant approach is applied. Instead of undoing the translation with a second call of ps_translate(3) the graphics context is saved before modifying the coordinate system and restored after drawing the rectangle. SEE ALSO
ps_scale(3), ps_rotate(3). PHP Documentation Group PS_TRANSLATE(3)

Check Out this Related Man Page

XmStringDraw(3X)														  XmStringDraw(3X)

NAME
XmStringDraw - A compound string function that draws a compound string in an X window SYNOPSIS
#include <Xm/Xm.h> void XmStringDraw (d, w, fontlist, string, gc, x, y, width, alignment, layout_direction, clip) Display * d; Window w; XmFontList fontlist; XmString string; GC gc; Position x; Position y; Dimension width; unsigned char alignment; unsigned char layout_direction; XRectangle * clip; DESCRIPTION
XmStringDraw draws a compound string in an X Window. If a compound string segment uses a font list entry that defines a font set, the graphic context passed to this routine will have the GC font member left in an undefined state. The underlying XmbStringDraw function called by this routine modifies the font id field of the GC passed into it and does not attempt to restore the font id to the incoming value. If the compound string segment is not drawn using a font set, the graphic context must contain a valid font member. Graphic con- texts created by XtGetGC are not valid for this routine; instead, use XtAllocateGC to create a graphic context. Specifies the display. Specifies the window. Specifies the font list. Specifies the string. Specifies the graphics context to use. Specifies a coordinate of the rectangle that will contain the displayed compound string. Specifies a coordinate of the rectangle that will contain the displayed compound string. Specifies the width of the rectangle that will contain the displayed compound string. Specifies how the string will be aligned within the specified rectangle. It is either XmALIGNMENT_BEGINNING, XmALIGNMENT_CENTER, or XmALIGNMENT_END. Controls the direction in which the segments of the compound string will be laid out. It also determines the meaning of the alignment parameter. Allows the application to restrict the area into which the compound string will be drawn. If NULL, no clipping will be done. SEE ALSO
XmStringCreate(3X) XmStringDraw(3X)
Man Page