Bug 688867

Summary: bad antialiasing
Product: Ghostscript Reporter: Attilio Drei <attilio.drei>
Component: Graphics LibraryAssignee: Default assignee <ghostpdl-bugs>
Status: NOTIFIED INVALID    
Severity: normal    
Priority: P4    
Version: 8.54   
Hardware: All   
OS: MacOS X   
URL: http://attiliodrei.no-ip.com/antialias/
Customer: Word Size: ---
Attachments: Eps file look at title when converting image at 100 dpi
eps.bz2 file: text render of Helvetica-Black is poor at 100dpi
867-100.png

Description Attilio Drei 2006-09-03 18:14:57 UTC
i have some eps created with illustrator, when i convert images at 100 dpi antialias of some text   doesn't 
work well, specially when font is Helvetica-Black
Comment 1 Attilio Drei 2006-09-03 18:18:23 UTC
Created attachment 2447 [details]
Eps file look at title when converting image at 100 dpi
Comment 2 Attilio Drei 2006-09-03 18:23:59 UTC
Created attachment 2448 [details]
eps.bz2  file: text render of Helvetica-Black is poor at 100dpi
Comment 3 Dan Coby 2006-09-03 20:32:06 UTC
What command line are you using?
Comment 4 Ray Johnston 2006-09-04 08:33:38 UTC
The text is not present as text, i.e., not rendered with a text operator like
"show". Instead, this text is rendered by using the "charpath" operator on a
string, then setting that path as the clippath, then filling a box that includes
the text area. For example, this is the way the title is rendered:

/Helvetica-Black*1 findfont [11.7 0 0 -13 0 0 ]mfnt sfnt
84.1265 16.7446 mov
(GLI STRANIERI IN ATENEO) false chp
clp
84.5827 7.13765 mo
256.68 7.13765 li
256.68 16.9916 li
84.5827 16.9916 li
0 0 0 0 cmyk
f
----

TextAlphaBits=4 anti-aliasing only works for text. Note that even setting
GraphicsAlphaBits=4 won't have any effect on this method of rendering since
the character outline is being used as a clip path, not being filled. A clip
path is ALWAYS a "hard" outline -- never anti-aliased.

The only way to acheive anti-aliasing with this kind of file is to use GS to
render at 4 times higher resolution, then use something like 'convert' (an
imagemagick tool) to resize the image. For example:

    gs -r400 -sDEVICE=png16m -o 867-400.png input.eps
    convert -resize "25%" 867-400.png 867-100.png

I've attached the result and will close the bug.
Comment 5 Ray Johnston 2006-09-04 08:34:41 UTC
Created attachment 2453 [details]
867-100.png

Result from method used in comment #4.