34 #ifndef __HPGS_READER_H__
35 #define __HPGS_READER_H__
51 #define MM_TO_PT (72.0 / 25.4)
52 #define HP_TO_PT (72.0 / (25.4 * 40.0))
54 #define MAKE_COMMAND(a,b) (((int)(a) << 8) + (b))
56 #define AA_CMD MAKE_COMMAND('A','A')
57 #define AC_CMD MAKE_COMMAND('A','C')
58 #define AD_CMD MAKE_COMMAND('A','D')
59 #define AR_CMD MAKE_COMMAND('A','R')
60 #define AT_CMD MAKE_COMMAND('A','T')
61 #define BP_CMD MAKE_COMMAND('B','P')
62 #define BR_CMD MAKE_COMMAND('B','R')
63 #define BZ_CMD MAKE_COMMAND('B','Z')
64 #define CI_CMD MAKE_COMMAND('C','I')
65 #define CO_CMD MAKE_COMMAND('C','O')
66 #define CP_CMD MAKE_COMMAND('C','P')
67 #define CR_CMD MAKE_COMMAND('C','R')
68 #define DI_CMD MAKE_COMMAND('D','I')
69 #define DR_CMD MAKE_COMMAND('D','R')
70 #define DT_CMD MAKE_COMMAND('D','T')
71 #define DV_CMD MAKE_COMMAND('D','V')
72 #define EA_CMD MAKE_COMMAND('E','A')
73 #define EP_CMD MAKE_COMMAND('E','P')
74 #define ER_CMD MAKE_COMMAND('E','R')
75 #define ES_CMD MAKE_COMMAND('E','S')
76 #define EW_CMD MAKE_COMMAND('E','W')
77 #define FP_CMD MAKE_COMMAND('F','P')
78 #define FR_CMD MAKE_COMMAND('F','R')
79 #define FT_CMD MAKE_COMMAND('F','T')
80 #define IN_CMD MAKE_COMMAND('I','N')
81 #define IP_CMD MAKE_COMMAND('I','P')
82 #define IR_CMD MAKE_COMMAND('I','R')
83 #define IW_CMD MAKE_COMMAND('I','W')
84 #define LA_CMD MAKE_COMMAND('L','A')
85 #define LB_CMD MAKE_COMMAND('L','B')
86 #define LO_CMD MAKE_COMMAND('L','O')
87 #define LT_CMD MAKE_COMMAND('L','T')
88 #define MC_CMD MAKE_COMMAND('M','C')
89 #define MG_CMD MAKE_COMMAND('M','G')
90 #define NP_CMD MAKE_COMMAND('N','P')
91 #define PA_CMD MAKE_COMMAND('P','A')
92 #define PC_CMD MAKE_COMMAND('P','C')
93 #define PD_CMD MAKE_COMMAND('P','D')
94 #define PE_CMD MAKE_COMMAND('P','E')
95 #define PG_CMD MAKE_COMMAND('P','G')
96 #define PM_CMD MAKE_COMMAND('P','M')
97 #define PP_CMD MAKE_COMMAND('P','P')
98 #define PR_CMD MAKE_COMMAND('P','R')
99 #define PS_CMD MAKE_COMMAND('P','S')
100 #define PU_CMD MAKE_COMMAND('P','U')
101 #define PW_CMD MAKE_COMMAND('P','W')
102 #define RA_CMD MAKE_COMMAND('R','A')
103 #define RO_CMD MAKE_COMMAND('R','O')
104 #define RR_CMD MAKE_COMMAND('R','R')
105 #define RT_CMD MAKE_COMMAND('R','T')
106 #define SA_CMD MAKE_COMMAND('S','A')
107 #define SC_CMD MAKE_COMMAND('S','C')
108 #define SD_CMD MAKE_COMMAND('S','D')
109 #define SI_CMD MAKE_COMMAND('S','I')
110 #define SL_CMD MAKE_COMMAND('S','L')
111 #define SM_CMD MAKE_COMMAND('S','M')
112 #define SP_CMD MAKE_COMMAND('S','P')
113 #define SR_CMD MAKE_COMMAND('S','R')
114 #define SS_CMD MAKE_COMMAND('S','S')
115 #define TR_CMD MAKE_COMMAND('T','R')
116 #define UL_CMD MAKE_COMMAND('U','L')
117 #define WG_CMD MAKE_COMMAND('W','G')
118 #define WU_CMD MAKE_COMMAND('W','U')
226 HPGS_INTERNAL_API
int hpgs_reader_pcl_bitmap_character_render(
hpgs_reader *reader,
306 float linetype_segs[17][20];
322 int label_term_ignore;
330 int poly_buffer_size;
331 int poly_buffer_alloc_size;
360 double default_pitch;
361 double default_height;
370 int alternate_spacing;
371 double alternate_pitch;
372 double alternate_height;
373 int alternate_posture;
374 int alternate_weight;
384 double current_slant;
385 int current_label_origin;
386 int current_text_path;
387 int current_text_line;
388 double current_label_angle;
445 HPGS_INTERNAL_API
int hpgs_reader_check_param_end(
hpgs_reader *reader);
479 HPGS_INTERNAL_API
int hpgs_reader_read_label_string(
hpgs_reader *reader,
char *str);
482 HPGS_INTERNAL_API
void hpgs_reader_set_default_transformation (
hpgs_reader *reader);
483 HPGS_INTERNAL_API
void hpgs_reader_set_default_state (
hpgs_reader *reader);
484 HPGS_INTERNAL_API
void hpgs_reader_set_defaults (
hpgs_reader *reader);
485 HPGS_INTERNAL_API
int hpgs_reader_set_plotsize (
hpgs_reader *reader,
double xs,
double ys);
486 HPGS_INTERNAL_API
int hpgs_reader_showpage (
hpgs_reader *reader,
int ipage);
488 HPGS_INTERNAL_API
void hpgs_reader_set_std_pen_colors(
hpgs_reader *reader,
491 HPGS_INTERNAL_API
int hpgs_reader_checkpath(
hpgs_reader *reader);
495 HPGS_INTERNAL_API
int hpgs_reader_curveto(
hpgs_reader *reader,
497 HPGS_INTERNAL_API
int hpgs_reader_stroke(
hpgs_reader *reader);
498 HPGS_INTERNAL_API
int hpgs_reader_fill(
hpgs_reader *reader, hpgs_bool winding);
499 HPGS_INTERNAL_API
int hpgs_reader_closepath(
hpgs_reader *reader);
501 HPGS_INTERNAL_API
int hpgs_reader_do_setpen(
hpgs_reader *reader,
int pen);
509 HPGS_INTERNAL_API
int hpgs_reader_label(
hpgs_reader *reader,
510 const char *str,
int str_len,
519 HPGS_INTERNAL_API
int hpgs_device_label(
hpgs_device *dev,
521 const char *str,
int str_len,
523 const char *encoding,
530 typedef int (*hpgs_reader_hpglcmd_func_t)(
hpgs_reader *reader);
535 HPGS_INTERNAL_API
int hpgs_reader_push_pcl_palette (
hpgs_reader *reader);
536 HPGS_INTERNAL_API
int hpgs_reader_pop_pcl_palette (
hpgs_reader *reader);
538 HPGS_INTERNAL_API
int hpgs_reader_pcl_cmd_font_id (
hpgs_reader *reader,
int arg);
539 HPGS_INTERNAL_API
int hpgs_reader_pcl_cmd_font_header (
hpgs_reader *reader,
int arg);
540 HPGS_INTERNAL_API
int hpgs_reader_pcl_cmd_select_font_id (
hpgs_reader *reader,
int arg);
541 HPGS_INTERNAL_API
int hpgs_reader_pcl_cmd_character_definition (
hpgs_reader *reader,
int arg);
543 HPGS_INTERNAL_API
int hpgs_reader_do_AA(
hpgs_reader *reader);
544 HPGS_INTERNAL_API
int hpgs_reader_do_AC(
hpgs_reader *reader);
545 HPGS_INTERNAL_API
int hpgs_reader_do_AD(
hpgs_reader *reader);
546 HPGS_INTERNAL_API
int hpgs_reader_do_AR(
hpgs_reader *reader);
547 HPGS_INTERNAL_API
int hpgs_reader_do_AT(
hpgs_reader *reader);
548 HPGS_INTERNAL_API
int hpgs_reader_do_BP(
hpgs_reader *reader);
549 HPGS_INTERNAL_API
int hpgs_reader_do_BR(
hpgs_reader *reader);
550 HPGS_INTERNAL_API
int hpgs_reader_do_BZ(
hpgs_reader *reader);
551 HPGS_INTERNAL_API
int hpgs_reader_do_CI(
hpgs_reader *reader);
552 HPGS_INTERNAL_API
int hpgs_reader_do_CO(
hpgs_reader *reader);
553 HPGS_INTERNAL_API
int hpgs_reader_do_CP(
hpgs_reader *reader);
554 HPGS_INTERNAL_API
int hpgs_reader_do_CR(
hpgs_reader *reader);
555 HPGS_INTERNAL_API
int hpgs_reader_do_DI(
hpgs_reader *reader);
556 HPGS_INTERNAL_API
int hpgs_reader_do_DR(
hpgs_reader *reader);
557 HPGS_INTERNAL_API
int hpgs_reader_do_DT(
hpgs_reader *reader);
558 HPGS_INTERNAL_API
int hpgs_reader_do_DV(
hpgs_reader *reader);
559 HPGS_INTERNAL_API
int hpgs_reader_do_EA(
hpgs_reader *reader);
560 HPGS_INTERNAL_API
int hpgs_reader_do_EP(
hpgs_reader *reader);
561 HPGS_INTERNAL_API
int hpgs_reader_do_ER(
hpgs_reader *reader);
562 HPGS_INTERNAL_API
int hpgs_reader_do_ES(
hpgs_reader *reader);
563 HPGS_INTERNAL_API
int hpgs_reader_do_EW(
hpgs_reader *reader);
564 HPGS_INTERNAL_API
int hpgs_reader_do_FP(
hpgs_reader *reader);
565 HPGS_INTERNAL_API
int hpgs_reader_do_FR(
hpgs_reader *reader);
566 HPGS_INTERNAL_API
int hpgs_reader_do_FT(
hpgs_reader *reader);
567 HPGS_INTERNAL_API
int hpgs_reader_do_IN(
hpgs_reader *reader);
568 HPGS_INTERNAL_API
int hpgs_reader_do_IP(
hpgs_reader *reader);
569 HPGS_INTERNAL_API
int hpgs_reader_do_IR(
hpgs_reader *reader);
570 HPGS_INTERNAL_API
int hpgs_reader_do_IW(
hpgs_reader *reader);
571 HPGS_INTERNAL_API
int hpgs_reader_do_LA(
hpgs_reader *reader);
572 HPGS_INTERNAL_API
int hpgs_reader_do_LB(
hpgs_reader *reader);
573 HPGS_INTERNAL_API
int hpgs_reader_do_LO(
hpgs_reader *reader);
574 HPGS_INTERNAL_API
int hpgs_reader_do_LT(
hpgs_reader *reader);
575 HPGS_INTERNAL_API
int hpgs_reader_do_MC(
hpgs_reader *reader);
576 HPGS_INTERNAL_API
int hpgs_reader_do_MG(
hpgs_reader *reader);
577 HPGS_INTERNAL_API
int hpgs_reader_do_NP(
hpgs_reader *reader);
578 HPGS_INTERNAL_API
int hpgs_reader_do_PC(
hpgs_reader *reader);
579 HPGS_INTERNAL_API
int hpgs_reader_do_PA(
hpgs_reader *reader);
580 HPGS_INTERNAL_API
int hpgs_reader_do_PD(
hpgs_reader *reader);
581 HPGS_INTERNAL_API
int hpgs_reader_do_PE(
hpgs_reader *reader);
582 HPGS_INTERNAL_API
int hpgs_reader_do_PG(
hpgs_reader *reader);
583 HPGS_INTERNAL_API
int hpgs_reader_do_PM(
hpgs_reader *reader);
584 HPGS_INTERNAL_API
int hpgs_reader_do_PP(
hpgs_reader *reader);
585 HPGS_INTERNAL_API
int hpgs_reader_do_PR(
hpgs_reader *reader);
586 HPGS_INTERNAL_API
int hpgs_reader_do_PS(
hpgs_reader *reader);
587 HPGS_INTERNAL_API
int hpgs_reader_do_PU(
hpgs_reader *reader);
588 HPGS_INTERNAL_API
int hpgs_reader_do_PW(
hpgs_reader *reader);
589 HPGS_INTERNAL_API
int hpgs_reader_do_RA(
hpgs_reader *reader);
590 HPGS_INTERNAL_API
int hpgs_reader_do_RO(
hpgs_reader *reader);
591 HPGS_INTERNAL_API
int hpgs_reader_do_RR(
hpgs_reader *reader);
592 HPGS_INTERNAL_API
int hpgs_reader_do_RT(
hpgs_reader *reader);
593 HPGS_INTERNAL_API
int hpgs_reader_do_SA(
hpgs_reader *reader);
594 HPGS_INTERNAL_API
int hpgs_reader_do_SC(
hpgs_reader *reader);
595 HPGS_INTERNAL_API
int hpgs_reader_do_SD(
hpgs_reader *reader);
596 HPGS_INTERNAL_API
int hpgs_reader_do_SI(
hpgs_reader *reader);
597 HPGS_INTERNAL_API
int hpgs_reader_do_SL(
hpgs_reader *reader);
598 HPGS_INTERNAL_API
int hpgs_reader_do_SM(
hpgs_reader *reader);
599 HPGS_INTERNAL_API
int hpgs_reader_do_SP(
hpgs_reader *reader);
600 HPGS_INTERNAL_API
int hpgs_reader_do_SR(
hpgs_reader *reader);
601 HPGS_INTERNAL_API
int hpgs_reader_do_SS(
hpgs_reader *reader);
602 HPGS_INTERNAL_API
int hpgs_reader_do_TR(
hpgs_reader *reader);
603 HPGS_INTERNAL_API
int hpgs_reader_do_UL(
hpgs_reader *reader);
604 HPGS_INTERNAL_API
int hpgs_reader_do_WG(
hpgs_reader *reader);
605 HPGS_INTERNAL_API
int hpgs_reader_do_WU(
hpgs_reader *reader);
613 #endif // ! __HPGS_READER_H__