Provided by: libprima-perl_1.28-1.2_amd64
NAME
Prima::PS::Drawable - PostScript interface to Prima::Drawable
SYNOPSIS
use Prima; use Prima::PS::Drawable; my $x = Prima::PS::Drawable-> create( onSpool => sub { open F, ">> ./test.ps"; print F $_[1]; close F; }); die "error:$@" unless $x-> begin_doc; $x-> font-> size( 30); $x-> text_out( "hello!", 100, 100); $x-> end_doc;
DESCRIPTION
Realizes the Prima library interface to PostScript level 2 document language. The module is designed to be compliant with Prima::Drawable interface. All properties' behavior is as same as Prima::Drawable's, except those described below. Inherited properties ::resolution Can be set while object is in normal stage - cannot be changed if document is opened. Applies to fillPattern realization and general pixel-to-point and vice versa calculations ::region - ::region is not realized ( yet?) Specific properties ::copies amount of copies that PS interpreter should print ::grayscale could be 0 or 1 ::pageSize physical page dimension, in points ::pageMargins non-printable page area, an array of 4 integers: left, bottom, right and top margins in points. ::reversed if 1, a 90 degrees rotated document layout is assumed ::rotate and ::scale along with Prima::Drawable::translate provide PS-specific transformation matrix manipulations. ::rotate is number, measured in degrees, counter-clockwise. ::scale is array of two numbers, respectively x- and y-scale. 1 is 100%, 2 is 200% etc. ::useDeviceFonts 1 by default; optimizes greatly text operations, but takes the risk that a character could be drawn incorrectly or not drawn at all - this behavior depends on a particular PS interpreter. ::useDeviceFontsOnly If 1, the system fonts, available from Prima::Application interfaces can not be used. It is designed for developers and the outside-of-Prima applications that wish to use PS generation module without graphics. If 1, "::useDeviceFonts" is set to 1 automatically. Default value is 0 Internal methods emit Can be called for direct PostScript code injection. Example: $x-> emit('0.314159 setgray'); $x-> bar( 10, 10, 20, 20); pixel2point and point2pixel Helpers for translation from pixel to points and vice versa. fill & stroke Wrappers for PS outline that is expected to be filled or stroked. Apply colors, line and fill styles if necessary. spool Prima::PS::Drawable is not responsible for output of generated document, it just calls ::spool when document is closed through ::end_doc. By default just skips data. Prima::PS::Printer handles spooling logic. fonts Returns Prima::Application::font plus those that defined into Prima::PS::Fonts module.