summaryrefslogtreecommitdiff
path: root/pl
diff options
context:
space:
mode:
authorHenry Stiles <henry.stiles@artifex.com>2012-01-07 21:58:50 -0700
committerHenry Stiles <henry.stiles@artifex.com>2012-01-09 11:08:42 -0700
commit3687f6b4cbafd91d5f29c604f86a56a5b118001f (patch)
treeb75b2ae8ea66966811c34641f426e7bfc943bd38 /pl
parent275066d79d9f01a90f0fd91bc8448c5746cbac2c (diff)
Support the geometry option on the command line, note this really
duplicates the functionality of setting a media size using PJL, but we implement it anyway because users prefer the familiarity of the option.
Diffstat (limited to 'pl')
-rw-r--r--pl/plmain.c3
-rw-r--r--pl/plmain.h1
-rw-r--r--pl/pltop.h1
3 files changed, 5 insertions, 0 deletions
diff --git a/pl/plmain.c b/pl/plmain.c
index 492d41e4c..3012353e1 100644
--- a/pl/plmain.c
+++ b/pl/plmain.c
@@ -723,6 +723,7 @@ pl_main_universe_select(
/* NB fix me, these parameters should not be passed this way */
universe->curr_instance->pcl_personality = pti->pcl_personality;
universe->curr_instance->interpolate = pti->interpolate;
+ universe->curr_instance->page_set_on_command_line = pti->page_set_on_command_line;
/* Select curr/new device into PDL instance */
if ( pl_set_device(universe->curr_instance, universe->curr_device) < 0 ) {
@@ -790,6 +791,7 @@ pl_main_init_instance(pl_main_instance_t *pti, gs_memory_t *mem)
pti->page_count = 0;
pti->saved_hwres = false;
pti->interpolate = false;
+ pti->page_set_on_command_line = false;
strncpy(&pti->pcl_personality[0], "PCL", sizeof(pti->pcl_personality)-1);
}
@@ -998,6 +1000,7 @@ pl_main_process_options(pl_main_instance_t *pmi, arg_list *pal,
ia.size = 2;
ia.persistent = false;
code = param_write_int_array((gs_param_list *)params, "HWSize", &ia);
+ pmi->page_set_on_command_line = true;
}
break;
case 'h':
diff --git a/pl/plmain.h b/pl/plmain.h
index 700f743a7..8b5edfcae 100644
--- a/pl/plmain.h
+++ b/pl/plmain.h
@@ -53,6 +53,7 @@ typedef struct pl_main_instance_s {
personality - rtl, pcl5c, pcl5e, and
pcl == default. NB doesn't belong here. */
bool interpolate;
+ bool page_set_on_command_line;
} pl_main_instance_t;
/* initialize gs_stdin, gs_stdout, and gs_stderr. Eventually the gs
diff --git a/pl/pltop.h b/pl/pltop.h
index cca93ae63..65afcfd10 100644
--- a/pl/pltop.h
+++ b/pl/pltop.h
@@ -41,6 +41,7 @@ typedef struct pl_interp_instance_s {
vm_spaces spaces; /* spaces for GC */
char * pcl_personality;
bool interpolate;
+ bool page_set_on_command_line;
} pl_interp_instance_t;
/* Param data types */