summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenry Stiles <henry.stiles@artifex.com>2013-07-05 16:16:27 -0600
committerHenry Stiles <henry.stiles@artifex.com>2013-07-05 16:16:27 -0600
commit27332dab4d0b6ec7bab5cafef86a693c5d600dd7 (patch)
tree0d783ba370a549cc7402733668a2a2c9eefbfc0c
parenta8d0fa19f927d045b81ec0380ea7448de38176d9 (diff)
downloadghostpdl-27332dab4d0b6ec7bab5cafef86a693c5d600dd7.tar.gz
Partially address 694378 - mispositiosed graphics.
Implement the GL Frame Advance (FR) technical extension with a simple page feed.
-rw-r--r--pcl/pgconfig.c9
-rw-r--r--pcl/pgmand.h2
2 files changed, 11 insertions, 0 deletions
diff --git a/pcl/pgconfig.c b/pcl/pgconfig.c
index dc36734b8..db2b4cf39 100644
--- a/pcl/pgconfig.c
+++ b/pcl/pgconfig.c
@@ -482,6 +482,14 @@ hpgl_EC(hpgl_args_t * pargs, hpgl_state_t * pgls)
return e_Unimplemented;
}
+int
+hpgl_FR(hpgl_args_t * pargs, hpgl_state_t * pgls)
+{
+ hpgl_args_t args;
+ hpgl_args_setup(&args);
+ return hpgl_PG(&args, pgls);
+}
+
/* PS; NB this is only a partial implementation. */
int
hpgl_PS(hpgl_args_t * pargs, hpgl_state_t * pgls)
@@ -726,6 +734,7 @@ pgconfig_do_registration(pcl_parser_state_t * pcl_parser_state,
HPGL_COMMAND('C', 'O', hpgl_CO,
hpgl_cdf_polygon | hpgl_cdf_pcl_rtl_both),
HPGL_COMMAND('D', 'F', hpgl_DF, hpgl_cdf_pcl_rtl_both),
+ HPGL_COMMAND('F', 'R', hpgl_FR, hpgl_cdf_rtl),
HPGL_COMMAND('I', 'N', hpgl_IN, hpgl_cdf_pcl_rtl_both),
HPGL_COMMAND('I', 'P', hpgl_IP, hpgl_cdf_pcl_rtl_both),
HPGL_COMMAND('I', 'R', hpgl_IR, hpgl_cdf_pcl_rtl_both),
diff --git a/pcl/pgmand.h b/pcl/pgmand.h
index c58e02bf7..c5e65d20c 100644
--- a/pcl/pgmand.h
+++ b/pcl/pgmand.h
@@ -319,6 +319,8 @@ int hpgl_IR(hpgl_args_t * pargs, hpgl_state_t * pgls);
int hpgl_IW(hpgl_args_t * pargs, hpgl_state_t * pgls);
+int hpgl_FR(hpgl_args_t * pargs, hpgl_state_t * pgls);
+
int hpgl_PG(hpgl_args_t * pargs, hpgl_state_t * pgls);
int hpgl_PS(hpgl_args_t * pargs, hpgl_state_t * pgls);