GhostPCL character chart?
Brian K. White
bw.aljex at gmail.com
Sat Jun 27 15:02:49 PDT 2020
On 6/27/20 5:02 PM, Fairlight via Filepro-list wrote:
> On Sat, Jun 27, 2020 at 03:53:42PM -0400, Brian K. White via Filepro-list thus spoke:
>> I just tried the following on both an old and new box, and go the same
>> output in the pdf, a blank space for chr255
> Probably because 255 is the CP437 character for NBSP.
>
> https://en.wikipedia.org/wiki/Code_page_437#Character_set
>
> m->
Going further, changing the character set by a pcl code does produce
printable characters for chr255 in other charsets.
For instance 'esc ( 0 N' selects Latin1 charset, and produces a y with
two dot for me.
Here is a little gwbasic program to produce PCL to show all chars in a
given characterset (selected by line 40)
You can re-write this in bash pretty easily.
http://www.piclist.com/techref/language/pcl/lj1616.htm
See line 40
That program uses esc(10U which is the same as the printer default
"pc-8" aka cp437
And here is a list of other codes to try in place of "10U"
https://www.pclviewer.com/de/resources/pcl_symbolset.html
Note, this page shows lowercase letters like 10u instead of 10U.
PCL escape codes may be combined into a single escape sequence where it
starts with a single escape character followed by any number of
commands, and the way it knows when to end the escape processing is it
terminate when it sees a capital letter.
So if the "10u" is the last code in a string (which is true if it's the
only code in the string) it's capitalized.
If the "10u" is in the middle of a string, it's not capitalized. Look at
line 50 of that program.
The way to parse that is the overall command is "ESC(s" followed by
several options to "(s": 0p, 10h, 12v, 0s, 0b, 3T.
Those number-letter pairs could have been stacked in any order, and
whichever comes last needs to be capitalized.
So on that list of other character set codes, Latin1 is shown as "0n"
but if it's in it's own escape code, it's "0N"
So the bash echo test to show chr255 in Latin1 is:
echo -e "\033(0Nchr(255)=\"\0377\"\r" |pcl6 -dNOPAUSE -sDEVICE=pdfwrite
-sOutputFile=/ptmp/latin1.pdf -
You could try other values from that page and copy this command line,
and only change the "0N" (that's Zero N just to be clear).
And you can look for a code like that in your print code table.
Maybe the problem is it's missing from your print code table?
Maybe the output format includes an odd print code like 97 or something,
maybe in the form itself, maybe in the init sequence in the F8 options,
and maybe the .prt file has nothing in slot 97, but maybe the same prt
file on the old server did?
Or the printer names changed and maybe the form is not getting the same
.prt file it used to get. That can be affected by env variables like
PFPRINTER or the contents of the fp config file.
Maybe the correct prt file does exist on the new system just not being
used for this form in this context for some reason like a change to the
environment or fp config file.
--
bkw
More information about the Filepro-list
mailing list