summaryrefslogtreecommitdiff
path: root/pxl
diff options
context:
space:
mode:
authorHenry Stiles <henry.stiles@artifex.com>2007-07-19 05:56:05 +0000
committerHenry Stiles <henry.stiles@artifex.com>2007-07-19 05:56:05 +0000
commit37167cc0642679f560e9a4e9710810d369c0b211 (patch)
treea9777d8a6a603cfaaefa73bc2e761075e2395ccb /pxl
parent9be6fd931d631db7c853dc8359e14fb5b1cea781 (diff)
Provide a special case for the undocumented symbol set 590 (XL only).
This does not appear in any pcl documentation that we have, experimentation on the HP 4600 suggests it a unicode mapping, so no pcl symbol set is required. Testing this exhaustively is not possible at this time. Fixes 689346. git-svn-id: http://svn.ghostscript.com/ghostpcl/trunk/ghostpcl@2869 06663e23-700e-0410-b217-a244a6096597
Diffstat (limited to 'pxl')
-rw-r--r--pxl/pxfont.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/pxl/pxfont.c b/pxl/pxfont.c
index 494041c97..fb64c673e 100644
--- a/pxl/pxfont.c
+++ b/pxl/pxfont.c
@@ -58,7 +58,8 @@ set_symbol_map(px_state_t *pxs)
px_font_t *pxfont = pxgs->base_font;
uint symbol_set = pxgs->symbol_set;
- if ( symbol_set == pxfont->params.symbol_set )
+ if ( ( symbol_set == pxfont->params.symbol_set ) ||
+ ( symbol_set == 590 ) )
{ /* Exact match, no mapping required. */
pxgs->symbol_map = 0;
}
@@ -274,7 +275,7 @@ px_str_to_gschars( px_args_t *par, px_state_t *pxs, gs_char *pchr)
int i;
gs_char chr;
const pl_symbol_map_t *psm = pxs->pxgs->symbol_map;
-
+ uint symbol_set = pxs->pxgs->symbol_set;
for (i=0; i < len; i++) {
if (pstr->type & pxd_ubyte) {
chr = str[i];
@@ -283,7 +284,8 @@ px_str_to_gschars( px_args_t *par, px_state_t *pxs, gs_char *pchr)
}
pchr[i] = pl_map_symbol(psm, chr,
pxs->pxgs->base_font->storage == pxfsInternal,
- false);
+ false,
+ symbol_set == 590);
}
}