HPGS - HPGl Script
Data Fields
hpgs_reader_st Struct Reference

A HPGL interpreter. More...

#include <hpgsreader.h>

Data Fields

hpgs_istreamin
 
hpgs_devicedevice
 
hpgs_deviceplotsize_device
 
int current_page
 
int verbosity
 
double lw_factor
 
double x_size
 
double y_size
 
double frame_x
 
double frame_y
 
hpgs_point P1
 
hpgs_point P2
 
hpgs_point delta_P
 
int rotation
 
int sc_type
 
double sc_xmin
 
double sc_xmax
 
double sc_ymin
 
double sc_ymax
 
double sc_left
 
double sc_bottom
 
int rop3
 
hpgs_bool src_transparency
 
hpgs_bool pattern_transparency
 
hpgs_matrix world_matrix
 
double world_scale
 
hpgs_matrix page_matrix
 
double page_scale
 
hpgs_matrix total_matrix
 
double total_scale
 
int page_mode
 
double page_width
 
double page_height
 
double page_angle
 
double page_border
 
hpgs_bbox page_bbox
 
hpgs_bbox content_bbox
 
void * page_asset_ctxt
 
hpgs_reader_asset_func_t page_asset_func
 
void * frame_asset_ctxt
 
hpgs_reader_asset_func_t frame_asset_func
 
int linetype_nsegs [17]
 
float linetype_segs [17][20]
 
int npens
 
double * pen_widths
 
hpgs_colorpen_colors
 
hpgs_color min_color
 
hpgs_color max_color
 
char label_term
 
int label_term_ignore
 
int polygon_mode
 
hpgs_reader_poly_pointpoly_buffer
 
int poly_buffer_size
 
int poly_buffer_alloc_size
 
int polygon_open
 
int pen_width_relative
 
int pen_down
 
int current_pen
 
int current_linetype
 
int absolute_plotting
 
int have_current_point
 
hpgs_point current_point
 
hpgs_point first_path_point
 
hpgs_point min_path_point
 
hpgs_point max_path_point
 
hpgs_point anchor_point
 
int current_ft
 
double ft3_angle
 
double ft3_spacing
 
double ft4_angle
 
double ft4_spacing
 
double ft10_level
 
int default_encoding
 
int default_face
 
int default_spacing
 
double default_pitch
 
double default_height
 
int default_posture
 
int default_weight
 
int alternate_encoding
 
int alternate_face
 
int alternate_spacing
 
double alternate_pitch
 
double alternate_height
 
int alternate_posture
 
int alternate_weight
 
int alternate_font
 
hpgs_point cr_point
 
hpgs_point current_char_size
 
hpgs_point current_extra_space
 
double current_slant
 
int current_label_origin
 
int current_text_path
 
int current_text_line
 
double current_label_angle
 
double pcl_scale
 
double pcl_hmi
 
double pcl_vmi
 
hpgs_point pcl_point
 
hpgs_reader_pcl_bitmap_font ** pcl_bitmap_fonts
 
size_t pcl_bitmap_fonts_alloc_size
 
size_t pcl_bitmap_fonts_size
 
int pcl_current_bitmap_font_id
 
hpgs_reader_pcl_bitmap_fontpcl_current_bitmap_font
 
hpgs_reader_pcl_bitmap_fontpcl_primary_bitmap_font
 
int pcl_current_character_code
 
hpgs_reader_pcl_palette ** pcl_palettes
 
size_t pcl_n_palettes
 
int pcl_i_palette
 
int pcl_pattern
 
hpgs_palette_color pcl_foreground_color
 
int pcl_raster_mode
 
int pcl_raster_presentation
 
int pcl_raster_src_width
 
int pcl_raster_src_height
 
int pcl_raster_dest_width
 
int pcl_raster_dest_height
 
int pcl_raster_res
 
int pcl_raster_compression
 
int pcl_raster_y_offset
 
int pcl_raster_plane
 
int pcl_raster_line
 
unsigned char * pcl_raster_data [8]
 
int pcl_raster_data_size
 
int pcl_raster_planes
 
hpgs_imagepcl_image
 
int png_dump_count
 
char * png_dump_filename
 
int clipsave_depth
 
int last_byte
 
int bytes_ignored
 
int eoc
 
hpgs_bool interrupted
 

Detailed Description

A HPGL interpreter.

This structure holds all the states used during the interpretation of a HPGL stream. Users of the library usually don't have to cope with details of this structure.

Field Documentation

◆ absolute_plotting

int hpgs_reader_st::absolute_plotting

Are PU and PD coordinates absoulte, because a PA statement is in effect?

◆ alternate_encoding

int hpgs_reader_st::alternate_encoding

the text state for the alternate font.

◆ alternate_font

int hpgs_reader_st::alternate_font

do we use the alternate font?

◆ anchor_point

hpgs_point hpgs_reader_st::anchor_point

The anchor point for fill patterns.

◆ bytes_ignored

int hpgs_reader_st::bytes_ignored

A byte counter for various purposes.

Referenced by hpgs_reader_do_PCL(), and hpgs_reader_do_PJL().

◆ clipsave_depth

int hpgs_reader_st::clipsave_depth

how many clipsaves have been issued?

◆ content_bbox

hpgs_bbox hpgs_reader_st::content_bbox

The bounding box of the HPGL content of the current page.

◆ cr_point

hpgs_point hpgs_reader_st::cr_point

text attributes set through special commands.

◆ current_ft

int hpgs_reader_st::current_ft

The fill type currently in effect.

◆ current_linetype

int hpgs_reader_st::current_linetype

Number of the current linetype.

◆ current_page

int hpgs_reader_st::current_page

The number of the current page. -1...single page mode.

Referenced by hpgs_new_reader(), and hpgs_reader_imbue().

◆ current_pen

int hpgs_reader_st::current_pen

Number of the current pen.

Referenced by hpgs_reader_get_current_pen().

◆ current_point

hpgs_point hpgs_reader_st::current_point

The current pen position in PostScript pt (1/72 inch), if have_current_point is true.

Referenced by hpgs_reader_do_PCL().

◆ default_encoding

int hpgs_reader_st::default_encoding

the text state for the standard font.

◆ delta_P

hpgs_point hpgs_reader_st::delta_P

The difference of P2-P1 as set by the IP command.

◆ device

hpgs_device* hpgs_reader_st::device

The current output device.

Referenced by hpgs_destroy_reader(), hpgs_new_reader(), hpgs_reader_imbue(), and hpgs_reader_stamp().

◆ eoc

int hpgs_reader_st::eoc

◆ first_path_point

hpgs_point hpgs_reader_st::first_path_point

The first point in a path, if polygon_open is true.

◆ frame_asset_ctxt

void* hpgs_reader_st::frame_asset_ctxt

A callback for rendering additional frame assets before frame advance/showpage.

◆ frame_asset_func

hpgs_reader_asset_func_t hpgs_reader_st::frame_asset_func

A callback for rendering additional frame asset before frame advance/showpage.

◆ frame_x

double hpgs_reader_st::frame_x

The frame advance vector in PostScript pt (1/72 inch).

◆ ft10_level

double hpgs_reader_st::ft10_level

The current color level for fill type 10.

◆ ft3_angle

double hpgs_reader_st::ft3_angle

The current pattern angle of fill type 3.

◆ ft3_spacing

double hpgs_reader_st::ft3_spacing

The current pattern spacing of fill type 3.

◆ ft4_angle

double hpgs_reader_st::ft4_angle

The current pattern angle of fill type 4.

◆ ft4_spacing

double hpgs_reader_st::ft4_spacing

The current pattern spacing of fill type 4.

◆ have_current_point

int hpgs_reader_st::have_current_point

Do we have a current pen position, aka current_point is a valid position.

◆ in

hpgs_istream* hpgs_reader_st::in

◆ interrupted

hpgs_bool hpgs_reader_st::interrupted

Did someone call hpgs_reader_interrupt ?

Referenced by hpgs_reader_do_PCL(), and hpgs_reader_interrupt().

◆ label_term

char hpgs_reader_st::label_term

label terminator settings

◆ last_byte

int hpgs_reader_st::last_byte

◆ linetype_nsegs

int hpgs_reader_st::linetype_nsegs[17]

linetype settings. (-8,...8) stored from 0...16

◆ lw_factor

double hpgs_reader_st::lw_factor

The linewidth scaling factor.

Referenced by hpgs_new_reader(), and hpgs_reader_set_lw_factor().

◆ max_color

hpgs_color hpgs_reader_st::max_color

The maximal RGB values.

◆ max_path_point

hpgs_point hpgs_reader_st::max_path_point

The maximal x/y coordinates of all points in an open path.

◆ min_color

hpgs_color hpgs_reader_st::min_color

The minimal RGB values.

◆ min_path_point

hpgs_point hpgs_reader_st::min_path_point

The minimal x/y coordinates of all points in an open path.

◆ npens

int hpgs_reader_st::npens

pen settings

◆ P1

hpgs_point hpgs_reader_st::P1

HPGL frame point P1 in PostScript pt (1/72 inch).

◆ P2

hpgs_point hpgs_reader_st::P2

HPGL frame point P2 in PostScript pt (1/72 inch).

◆ page_angle

double hpgs_reader_st::page_angle

The rotation angle of the HPGL content on the page.

Referenced by hpgs_reader_set_dynamic_page(), and hpgs_reader_set_fixed_page().

◆ page_asset_ctxt

void* hpgs_reader_st::page_asset_ctxt

A callback for rendering additional page assets before showpage.

◆ page_asset_func

hpgs_reader_asset_func_t hpgs_reader_st::page_asset_func

A callback for rendering additional page assets before showpage.

◆ page_bbox

hpgs_bbox hpgs_reader_st::page_bbox

The currently active page bounding box.

Referenced by hpgs_new_reader().

◆ page_border

double hpgs_reader_st::page_border

The border of the HPGL border on the page.

Referenced by hpgs_reader_set_dynamic_page(), and hpgs_reader_set_fixed_page().

◆ page_height

double hpgs_reader_st::page_height

The page height or the maximal page height in points.

Referenced by hpgs_reader_set_dynamic_page(), and hpgs_reader_set_fixed_page().

◆ page_matrix

hpgs_matrix hpgs_reader_st::page_matrix

transformation matrix for the transformation of PostScript (world) coordinates usually given in points (1/72 inch) to user defined page-coorindates.

Referenced by hpgs_new_reader(), and hpgs_reader_do_PCL().

◆ page_mode

int hpgs_reader_st::page_mode

0...untransformed, 1...fixed page, 2...dynamic page

Referenced by hpgs_reader_set_dynamic_page(), and hpgs_reader_set_fixed_page().

◆ page_scale

double hpgs_reader_st::page_scale

sqrt(|det(page_matrix)|)

Referenced by hpgs_new_reader().

◆ page_width

double hpgs_reader_st::page_width

The page width or the maximal page width in points.

Referenced by hpgs_reader_set_dynamic_page(), and hpgs_reader_set_fixed_page().

◆ pattern_transparency

hpgs_bool hpgs_reader_st::pattern_transparency

ROP3 pattern transparency.

◆ pcl_bitmap_fonts

hpgs_reader_pcl_bitmap_font** hpgs_reader_st::pcl_bitmap_fonts

The array of PCL bitmap fonts sorted by font ID.

◆ pcl_bitmap_fonts_alloc_size

size_t hpgs_reader_st::pcl_bitmap_fonts_alloc_size

The allocated size of the bitmap font array.

◆ pcl_bitmap_fonts_size

size_t hpgs_reader_st::pcl_bitmap_fonts_size

The allocated size of the palette stack.

Referenced by hpgs_destroy_reader().

◆ pcl_current_bitmap_font

hpgs_reader_pcl_bitmap_font* hpgs_reader_st::pcl_current_bitmap_font

The current PCL bitmap font use for font operations.

◆ pcl_current_bitmap_font_id

int hpgs_reader_st::pcl_current_bitmap_font_id

The ID of the current PCL bitmap font to use for font operations.

◆ pcl_current_character_code

int hpgs_reader_st::pcl_current_character_code

The PCL character code of the next character to be assembled or -1, if not set.

◆ pcl_foreground_color

hpgs_palette_color hpgs_reader_st::pcl_foreground_color

The currently set PCL forground color. Set to black, if no foreground color is set.

◆ pcl_hmi

double hpgs_reader_st::pcl_hmi

PCL horizontal motion index in pt.

◆ pcl_i_palette

int hpgs_reader_st::pcl_i_palette

The number of of the current PCL palette on the stack.

◆ pcl_image

hpgs_image* hpgs_reader_st::pcl_image

The image currently filled by pcl.

◆ pcl_n_palettes

size_t hpgs_reader_st::pcl_n_palettes

The allocated size of the palette stack.

◆ pcl_palettes

hpgs_reader_pcl_palette** hpgs_reader_st::pcl_palettes

The PCL palette stack of palettes for 256 colors.

◆ pcl_pattern

int hpgs_reader_st::pcl_pattern

The current PCL pattern. Default value 0.

◆ pcl_point

hpgs_point hpgs_reader_st::pcl_point

PCL point position in pt.

Referenced by hpgs_reader_do_PCL().

◆ pcl_primary_bitmap_font

hpgs_reader_pcl_bitmap_font* hpgs_reader_st::pcl_primary_bitmap_font

The primary PCL bitmap font being assembled.

◆ pcl_raster_compression

int hpgs_reader_st::pcl_raster_compression

The PCL raster compression in effect.

◆ pcl_raster_data

unsigned char* hpgs_reader_st::pcl_raster_data[8]

The buffer for the data of the current raster. One pointer per plane.

◆ pcl_raster_data_size

int hpgs_reader_st::pcl_raster_data_size

The size of the raster data buffer.

◆ pcl_raster_dest_height

int hpgs_reader_st::pcl_raster_dest_height

The PCL raster image destination height.

◆ pcl_raster_dest_width

int hpgs_reader_st::pcl_raster_dest_width

The PCL raster image destination width.

◆ pcl_raster_line

int hpgs_reader_st::pcl_raster_line

The number of the raster line currently transferred.

◆ pcl_raster_mode

int hpgs_reader_st::pcl_raster_mode

The PCL ratser mode. -1 no raster graphics, 0 horizontal graphics, 3 vertical graphics

◆ pcl_raster_plane

int hpgs_reader_st::pcl_raster_plane

The current PCL raster plane for transfer data by plane.

◆ pcl_raster_planes

int hpgs_reader_st::pcl_raster_planes

The number of planes of the raster data currently being transferred.

◆ pcl_raster_presentation

int hpgs_reader_st::pcl_raster_presentation

The PCL raster presentation mode.

◆ pcl_raster_res

int hpgs_reader_st::pcl_raster_res

The PCL raster image resolution.

◆ pcl_raster_src_height

int hpgs_reader_st::pcl_raster_src_height

The PCL raster image source height.

◆ pcl_raster_src_width

int hpgs_reader_st::pcl_raster_src_width

The PCL raster image source width.

◆ pcl_raster_y_offset

int hpgs_reader_st::pcl_raster_y_offset

The PCL raster y offset in effect.

◆ pcl_scale

double hpgs_reader_st::pcl_scale

The factor from PCL units to PostScript pt (1/72 inch).

Referenced by hpgs_reader_do_PJL().

◆ pcl_vmi

double hpgs_reader_st::pcl_vmi

PCL vertical motion index in pt.

◆ pen_down

int hpgs_reader_st::pen_down

Is the pen down?

◆ pen_width_relative

int hpgs_reader_st::pen_width_relative

Are pen widths specified relative?

◆ plotsize_device

hpgs_device* hpgs_reader_st::plotsize_device

The current plotsize device.

Referenced by hpgs_destroy_reader(), hpgs_new_reader(), and hpgs_reader_imbue().

◆ png_dump_count

int hpgs_reader_st::png_dump_count

The number of PCL images dumped so far.

◆ png_dump_filename

char* hpgs_reader_st::png_dump_filename

The base filename for dumped PCL images.

Referenced by hpgs_reader_set_png_dump().

◆ poly_buffer

hpgs_reader_poly_point* hpgs_reader_st::poly_buffer

the polygon buffer used in polygon mode.

Referenced by hpgs_destroy_reader().

◆ polygon_mode

int hpgs_reader_st::polygon_mode

Are we in polygon mode?

◆ polygon_open

int hpgs_reader_st::polygon_open

Is a polygon currently open?

◆ rop3

int hpgs_reader_st::rop3

ROP3 operation in effect.

◆ rotation

int hpgs_reader_st::rotation

The current rotation angle (90/180/270/360).

◆ sc_type

int hpgs_reader_st::sc_type

The current effective coordinate scaling of a SC command.

◆ src_transparency

hpgs_bool hpgs_reader_st::src_transparency

ROP3 source transparency.

◆ total_matrix

hpgs_matrix hpgs_reader_st::total_matrix

The concatenation of page_matrix and world_matrix.

◆ total_scale

double hpgs_reader_st::total_scale

sqrt(|det(page_matrix)|)

◆ verbosity

int hpgs_reader_st::verbosity

The verbosity level in effect.

Referenced by hpgs_new_reader().

◆ world_matrix

hpgs_matrix hpgs_reader_st::world_matrix

transformation matrix for the transformation of HPGL to PostScript (world) coordinates usually given in points (1/72 inch).

◆ world_scale

double hpgs_reader_st::world_scale

sqrt(|det(world_matrix)|)

◆ x_size

double hpgs_reader_st::x_size

The paper size in PostScript pt (1/72 inch).


The documentation for this struct was generated from the following file: