# PostScript document creation

# Introduction

This module allows to create PostScript documents. It has many similarities with the pdf extension. Actually the API is almost identical and one can in many cases just replace the prefix of each function from pdf_ to ps_. This also works for functions which has no meaning in the PostScript document (like adding hyperlinks) but will have an effect if the document is converted to PDF.

Documents created by this extension are sometimes even superior to documents created with the pdf extension, because pslib's text rendering functions can handle kerning, hyphenation and ligatures which results in much better output of boxed text.

- Installing/Configuring
  - Requirements
  - Installation
  - Resource Types
- Predefined Constants
- PS Functions
  - ps_add_bookmark — Add bookmark to current page
  - ps_add_launchlink — Adds link which launches file
  - ps_add_locallink — Adds link to a page in the same document
  - ps_add_note — Adds note to current page
  - ps_add_pdflink — Adds link to a page in a second pdf document
  - ps_add_weblink — Adds link to a web location
  - ps_arc — Draws an arc counterclockwise
  - ps_arcn — Draws an arc clockwise
  - ps_begin_page — Start a new page
  - ps_begin_pattern — Start a new pattern
  - ps_begin_template — Start a new template
  - ps_circle — Draws a circle
  - ps_clip — Clips drawing to current path
  - ps_close — Closes a PostScript document
  - ps_close_image — Closes image and frees memory
  - ps_closepath — Closes path
  - ps_closepath_stroke — Closes and strokes path
  - ps_continue_text — Continue text in next line
  - ps_curveto — Draws a curve
  - ps_delete — Deletes all resources of a PostScript document
  - ps_end_page — End a page
  - ps_end_pattern — End a pattern
  - ps_end_template — End a template
  - ps_fill — Fills the current path
  - ps_fill_stroke — Fills and strokes the current path
  - ps_findfont — Loads a font
  - ps_get_buffer — Fetches the full buffer containig the generated PS data
  - ps_get_parameter — Gets certain parameters
  - ps_get_value — Gets certain values
  - ps_hyphenate — Hyphenates a word
  - ps_include_file — Reads an external file with raw PostScript code
  - ps_lineto — Draws a line
  - ps_makespotcolor — Create spot color
  - ps_moveto — Sets current point
  - ps_new — Creates a new PostScript document object
  - ps_open_file — Opens a file for output
  - ps_open_image — Reads an image for later placement
  - ps_open_image_file — Opens image from file
  - ps_open_memory_image — Takes an GD image and returns an image for placement in a PS document
  - ps_place_image — Places image on the page
  - ps_rect — Draws a rectangle
  - ps_restore — Restore previously save context
  - ps_rotate — Sets rotation factor
  - ps_save — Save current context
  - ps_scale — Sets scaling factor
  - ps_set_border_color — Sets color of border for annotations
  - ps_set_border_dash — Sets length of dashes for border of annotations
  - ps_set_border_style — Sets border style of annotations
  - ps_set_info — Sets information fields of document
  - ps_set_parameter — Sets certain parameters
  - ps_set_text_pos — Sets position for text output
  - ps_set_value — Sets certain values
  - ps_setcolor — Sets current color
  - ps_setdash — Sets appearance of a dashed line
  - ps_setflat — Sets flatness
  - ps_setfont — Sets font to use for following output
  - ps_setgray — Sets gray value
  - ps_setlinecap — Sets appearance of line ends
  - ps_setlinejoin — Sets how contected lines are joined
  - ps_setlinewidth — Sets width of a line
  - ps_setmiterlimit — Sets the miter limit
  - ps_setoverprintmode — Sets overprint mode
  - ps_setpolydash — Sets appearance of a dashed line
  - ps_shading — Creates a shading for later use
  - ps_shading_pattern — Creates a pattern based on a shading
  - ps_shfill — Fills an area with a shading
  - ps_show — Output text
  - ps_show_boxed — Output text in a box
  - ps_show_xy — Output text at given position
  - ps_show_xy2 — Output text at position
  - ps_show2 — Output a text at current position
  - ps_string_geometry — Gets geometry of a string
  - ps_stringwidth — Gets width of a string
  - ps_stroke — Draws the current path
  - ps_symbol — Output a glyph
  - ps_symbol_name — Gets name of a glyph
  - ps_symbol_width — Gets width of a glyph
  - ps_translate — Sets translation

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open