Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Postscript bug

11 views
Skip to first unread message

tho...@antispam.ham

unread,
Jun 28, 2013, 12:11:42 AM6/28/13
to
Does anyone know Postscript well enough to help track down an apparent
bug with the OS/2 driver?

I have a DeScribe document with a graphic that contains a text element
with the name Schonberg. It prints just fine under some circumstances,
namely combination of font and attributes. I'm using HelmetCondensed
and bold. If I change the o to o-dieresis, it still displays and
prints properly, until I change one of the attributes to hollow, after
which it displays properly, but prints as something that looks like
Courier. The same problem occurs with Helvetica Narrow, Swiss, and a
few other fonts that I tried, but it printed properly with @Lucida Sans.

I've looked at the Postscript, but there's nothing obviously wrong, at
least to someone who doesn't know low-level Postscript. I tried a few
things by editing the Postscript and letting Ghostscript show me what
happens as a result. For example, I found a single occurrence of a
Font1001 string whereas the other places where it appears, it said
only Font100, so I tried changing the 1001 to 100, but that didn't
fix it. Not knowing Postscript is like stumbling around trying to
find your way in the dark.

The main difference after changing the o to o-dieresis is that the
character shows up in the Postscript as \224, which is the octal code
for the character, and before that code appears in the Postscript, a
lookup table for all 256 characters in code page 850 is inserted,
with o-dieresis appearing as character 148 (= 224 octal). So that
part seems to be correct.

If it can print o-dieresis properly without the hollow attribute,
shouldn't it also be able to print it with the hollow attribute?

Steve

unread,
Jun 28, 2013, 7:34:19 AM6/28/13
to
tho...@antispam.ham writes:
>If it can print o-dieresis properly without the hollow attribute,
>shouldn't it also be able to print it with the hollow attribute?

Hi,

PostScript is a complete programming language, so it can be
very complex, and hard to debug. Your "hollow attribute" is
not a built-in feature of PostScript (not a language primative).
So you will have to see where it is defined in the document and
place some debugging code there.

Regards,

Steve N.


tho...@antispam.ham

unread,
Jun 28, 2013, 5:27:48 PM6/28/13
to
Steve writes:

>> If it can print o-dieresis properly without the hollow attribute,
>> shouldn't it also be able to print it with the hollow attribute?

> PostScript is a complete programming language, so it can be
> very complex, and hard to debug. Your "hollow attribute" is
> not a built-in feature of PostScript (not a language primative).
> So you will have to see where it is defined in the document and
> place some debugging code there.

"Hollow" is what DeScribe calls it. In the OS/2 Font Palette
editor, there is an emphasis called "Outline" that appear to
do the same thing.

The only thing that is obvious in the Postscript file is that
the text with and without the hollow attribute is preceded with

478 /HelmetCondensed-Bold1 SF
478 /HelmetCondensed-Bold SF


ivan

unread,
Jun 29, 2013, 7:05:51 AM6/29/13
to
First question, does the printer font have a set of glyphs for the
'hollow' or 'outline' that you want to use? If not you will just have
printed what the printer substitutes in its place. Remember also that
not all fonts and glyphs are scalable, many have only fixed sizes.


ivan
--

Steve

unread,
Jun 29, 2013, 3:48:16 PM6/29/13
to
Hi,

tho...@antispam.ham writes:
>Steve writes:
>
>>> If it can print o-dieresis properly without the hollow attribute,
>>> shouldn't it also be able to print it with the hollow attribute?
>
>> PostScript is a complete programming language, so it can be
>> very complex, and hard to debug. Your "hollow attribute" is
>> not a built-in feature of PostScript (not a language primative).
>> So you will have to see where it is defined in the document and
>> place some debugging code there.
>
>"Hollow" is what DeScribe calls it. In the OS/2 Font Palette
>editor, there is an emphasis called "Outline" that appear to
>do the same thing.
>

Okay, there is a PaintType attribute that describes an outline
action. It says that a font that is designed to be "filled" can
be "outlined" instead. PaintType can be part of a font definition.

>The only thing that is obvious in the Postscript file is that
>the text with and without the hollow attribute is preceded with
>
>478 /HelmetCondensed-Bold1 SF
>478 /HelmetCondensed-Bold SF

In the "Blue Book", "PostScript Language Tutorial and Cookbook",
Adobe Systems Incorporated, there is a routine that creates an outline
font from a filled font (page 203). So the above makes sense If both
fonts are in both documents. Not that there are not fonts that are not
filled. To be filled, an outline must exist defining a glyph. The Blue
Book and the Language Reference can be downloaded as PDF's.

Some fonts are based on lines that are stroked. Think 'Courier' where
all the lines that make up a glyph have the same width. And some
fonts are made up of bitmaps. They cannot be filled or outlined either.
And there are a bunck of fonts that are repackaged True Type fonts.
The outline information may not be available? And there are/were
encrypted fonts that can't be modified.

So, examine your font and find out if it is the right type to have an
outline that can be accessed to create a new font. (The fact that you
are having problems implies...)

Can you use a standard font to create your document? That may be
a way to get an acceptable result.

Regards,

Steve N.

tho...@antispam.ham

unread,
Jun 30, 2013, 3:19:03 AM6/30/13
to
It certainly does for the 7-bit ASCII character set. That is,
everything works fine if I use o instead of o-dieresis. As soon as
I replace the o with o-dieresis, that line of text and all subsequent
lines in that text graphic turn into something that looks like
Courier (but only on paper; the display is still correct).

Just for fun, I also tried replacing the o in the Postscript file
with \224 (octal), but in this case the lookup table of characters
isn't in the Postscript file; I wanted to see what would happen,
namely whether I'd get the switch to the Courier-like font, or
something else. What happened is that the character was simply
left blank. Not sure what it did for the spacing, given that it's
a proportionally-spaced font.

tho...@antispam.ham

unread,
Jun 30, 2013, 3:37:10 AM6/30/13
to
Steve writes:

>>>> If it can print o-dieresis properly without the hollow attribute,
>>>> shouldn't it also be able to print it with the hollow attribute?

>>> PostScript is a complete programming language, so it can be
>>> very complex, and hard to debug. Your "hollow attribute" is
>>> not a built-in feature of PostScript (not a language primative).
>>> So you will have to see where it is defined in the document and
>>> place some debugging code there.

>> "Hollow" is what DeScribe calls it. In the OS/2 Font Palette
>> editor, there is an emphasis called "Outline" that appear to
>> do the same thing.

> Okay, there is a PaintType attribute that describes an outline
> action. It says that a font that is designed to be "filled" can
> be "outlined" instead. PaintType can be part of a font definition.

PaintType does appear in the PostScript file, several times. After
the first occurrence, a few lines later there are 211 lines of
hexadecimal, which could be defining things. The second occurrence
is embedded within a longer line. The third, fourth, and fifth
occurrence are also followed by extensive lines of hexadecimal.

>> The only thing that is obvious in the Postscript file is that
>> the text with and without the hollow attribute is preceded with
>>
>> 478 /HelmetCondensed-Bold1 SF
>> 478 /HelmetCondensed-Bold SF

> In the "Blue Book", "PostScript Language Tutorial and Cookbook",
> Adobe Systems Incorporated, there is a routine that creates an outline
> font from a filled font (page 203). So the above makes sense If both
> fonts are in both documents. Not that there are not fonts that are not
> filled. To be filled, an outline must exist defining a glyph. The Blue
> Book and the Language Reference can be downloaded as PDF's.

I had already found a file PLRM2.pdf, which I presume stands for
Postscript Language Reference Manual. It's 772 pages long, and I
haven't had time to read through all of it yet. Nor am I terribly
motivated to do so, just to track down a driver bug, because I
wouldn't know who could fix the driver itself.

> Some fonts are based on lines that are stroked. Think 'Courier' where
> all the lines that make up a glyph have the same width. And some
> fonts are made up of bitmaps. They cannot be filled or outlined either.
> And there are a bunck of fonts that are repackaged True Type fonts.
> The outline information may not be available? And there are/were
> encrypted fonts that can't be modified.
>
> So, examine your font and find out if it is the right type to have an
> outline that can be accessed to create a new font. (The fact that you
> are having problems implies...)

HelmetCondensed is a sans serif font, not too dissimilar to
Helvetica Narrow. Nothing fancy. The 7-bit ASCII characters
all work fine in their "hollow" or "outline" form, and o-dieresis
isn't all that different from an o or an i.

> Can you use a standard font to create your document? That may be
> a way to get an acceptable result.

I'm going to experiment with UniversCondensed. If memory serves, way
back when I had an HP Laserjet III, it came with CG Times and Univers
built-in as the serif and sans serif fonts. DeScribe recognizes
Univers as both a printer and screen font. UniversCondensed is a
little bit wider than HelmetCondensed. I didn't like the aspect ratio
of Helvetica Narrow. And while DeScribe allows the user to control
the "Set Width" independently of the point size, thus having full
control over the aspect ratio, that capability is available only for
regular text, not a text graphic. The advantage of a text graphic is
that you have control over the color of the text, whereas document
text is restricted to black and white.

Steve

unread,
Jun 30, 2013, 9:11:45 AM6/30/13
to
Hi,

In <kqon76$ipj$2...@speranza.aioe.org>, tho...@antispam.ham writes:
>Steve writes:
>
>> In the "Blue Book", "PostScript Language Tutorial and Cookbook",
>> Adobe Systems Incorporated, there is a routine that creates an outline
>> font from a filled font (page 203). So the above makes sense If both
>> fonts are in both documents. Not that there are not fonts that are not
>> filled. To be filled, an outline must exist defining a glyph. The Blue
>> Book and the Language Reference can be downloaded as PDF's.
>
>I had already found a file PLRM2.pdf, which I presume stands for
>Postscript Language Reference Manual. It's 772 pages long, and I
>haven't had time to read through all of it yet. Nor am I terribly
>motivated to do so, just to track down a driver bug, because I
>wouldn't know who could fix the driver itself.

Right. You would probably need the author of the program(s)
being used.

>> So, examine your font and find out if it is the right type to have an
>> outline that can be accessed to create a new font. (The fact that you
>> are having problems implies...)
>
>HelmetCondensed is a sans serif font, not too dissimilar to
>Helvetica Narrow. Nothing fancy. The 7-bit ASCII characters
>all work fine in their "hollow" or "outline" form, and o-dieresis
>isn't all that different from an o or an i.

That sounds as if the "conversion" of the filled font to an outline
font is "broken" and not doing all of the glyphs in the font.

>> Can you use a standard font to create your document? That may be
>> a way to get an acceptable result.
>
>I'm going to experiment with UniversCondensed. If memory serves, way
>back when I had an HP Laserjet III, it came with CG Times and Univers
>built-in as the serif and sans serif fonts. DeScribe recognizes
>Univers as both a printer and screen font.

Unless the HP Laserjet III supports PostScript, that should not matter.
Describe and the printer driver will be doing everything unless PostScript
is built into the printer. And since you mention color later, The HP LJ III is
not relevant anyway.

UniversCondensed is a
>little bit wider than HelmetCondensed. I didn't like the aspect ratio
>of Helvetica Narrow. And while DeScribe allows the user to control
>the "Set Width" independently of the point size, thus having full
>control over the aspect ratio, that capability is available only for
>regular text, not a text graphic. The advantage of a text graphic is
>that you have control over the color of the text, whereas document
>text is restricted to black and white.

Helvetica is one of the base fonts supported by all PostScript
implementations. If it can display properly with Helvetia (not
narrow) and not with your preferred font, the font may just not
work. If Helvetica fails, the conversion to outline is at fault.

Regards,

Steve N.

0 new messages