Implementing a True Type grid fitting, step 12, final.

"Igor V. Melichev" <[email protected]>
Newsgroups gmane.comp.printing.ghostscript.patches
Message-ID <[email protected]>
[Log message beg]
Implementing a True Type grid fitting, step 12, final.

DETAILS :

This patch switches on the new grid fitter,
and provides related changes to the documentation.

EXPECTED DIFFERENCES :

All True type fonts render differently.
They present in the following tests :

01_001.pdf
159.pdf
adesso2.pdf
adesso7.pdf
adesso8.pdf
Altona.Page_3.2002-09-27.pdf
annots.pdf
budget2.pdf
budget2_ai87.pdf
bugsample.pdf
Faktura.pdf
fonts.pdf
ICPconcept.pdf
keyboard.pdf
MagicEye.pdf
ngnews.pdf
ngnews1.pdf
S2_Digitalproof-Forum_x3k.pdf
test_multipage_prob.pdf
Testform.v1.0.2.pdf
xngnews.pdf
japan.ps
japan-.ps
korea.ps
MyTest5.ps
MyTest6.ps
Type11CDevProc.ps
type42_glyph_index.ps

[Log message end]

Changes:



*** f:\casper\HEAD\gs\src\gx.h Tue Dec 30 14:50:11 2003
--- files\gs\src\gx.h Thu Jan  1 13:40:53 2004
***************
*** 31,35 ****
  /* Users should not modify them. */
  #define NEW_TT_INTERPRETER 1
! #define TT_GRID_FITTING (NEW_TT_INTERPRETER && 0) /* old code = 0, new
code = 1. */
  #define CURVED_TRAPEZOID_FILL 1 /* old code = 0, new code = 1. */
  /* The following switches are only important with CURVED_TRAPEZOID_FILL 1.
*/
--- 31,35 ----
  /* Users should not modify them. */
  #define NEW_TT_INTERPRETER 1
! #define TT_GRID_FITTING (NEW_TT_INTERPRETER && 1) /* old code = 0, new
code = 1. */
  #define CURVED_TRAPEZOID_FILL 1 /* old code = 0, new code = 1. */
  /* The following switches are only important with CURVED_TRAPEZOID_FILL 1.
*/


*** f:\casper\HEAD\gs\doc\Language.htm Thu Jan  1 13:37:03 2004
--- files\gs\doc\Language.htm Wed Jan  7 17:15:41 2004
***************
*** 2001,2017 ****
  not covered by Apple's patents. This allows the Dynalab fonts to
  rasterize properly.
! Fonts with patented instructions can't be properly grid fitted.
! This parameter controls the action of the reduced interpreter:
! a value of 0 disables grid fitting for all fonts;
! a value of 1 enables the grid fitting for glyphs that don't involve
! patented instructions.
! When set to 1 a warning is printed to stderr when a patented
! instruction is encountered, and the glyph is rendered ignoring the
! entire grid fitting program. This parameter defaults to 0, but this
  may be overridden on the command line with
! <b><tt>-dGridFitTT=1</tt></b>.
  <p>
  The bytecode interpreter is based in part of the work of the
  <a href="http://freetype.org/">Freetype</a> Team.
  </dl>

--- 2001,2043 ----
  not covered by Apple's patents. This allows the Dynalab fonts to
  rasterize properly.
! <p>
! The reduced interpreter can't properly grid fit
! fonts with patented instructions. Therefore Ghostscript implements
! another grid fitter for True Types, based on a spot topology analyzis.
! <p>
! This parameter controls the action of the reduced interpreter and the grid
fitter :
!
! <li>
! A value of 0 disables grid fitting for all True Type fonts. It is a
backward compatibility mode.
! </li>
!
! <li>
! A value of 1 enables the grid fitting for glyphs that don't involve
! patented instructions, using the reduced True Type bytecode interpreter.
! When a patented instruction is encountered, a warning is printed to
stderr,
! and the glyph is rendered ignoring the
! entire grid fitting program.
! </li>
!
! <li>
! A value of 2 envolves the topological grid fitter. This value is
recommended
! for common use.
! </li>
!
! <li>
! A value of 3 specifies that the bytecode interpreter to be used
! to grid fit glyphs that have no patented instructions,
! and other glyphs are grid fitted topologically. This mode may
! improve the rendering of some fonts, but in general the best result
! is not guaranteed.
! </li>
! <p>
! This parameter defaults to 2, but this
  may be overridden on the command line with
! <b><tt>-dGridFitTT=n</tt></b>.
  <p>
  The bytecode interpreter is based in part of the work of the
  <a href="http://freetype.org/">Freetype</a> Team.
+ The topological grid fitting is a new original Ghostscript method.
  </dl>




*** f:\casper\HEAD\gs\doc\News.htm Tue Jan  6 08:30:41 2004
--- files\gs\doc\News.htm Wed Jan  7 17:38:52 2004
***************
*** 61,64 ****
--- 61,69 ----
  This is an unreleased development source version.

+ <p>
+ A new feature in this version is <b><tt>a topological grid
fitting</b></tt>,
+ originally developed for Ghostscript by Dr. I. Melichev. It significantly
improves
+ the rendering of True Type fonts at small resolutions.
+
  <p>
  The following <a href="http://bugs.ghostscript.com/">bug</a> numbers were
open at



*** f:\casper\HEAD\gs\doc\Use.htm Tue Dec  9 02:17:16 2003
--- files\gs\doc\Use.htm Wed Jan  7 17:31:41 2004
***************
*** 1826,1845 ****
  <dt><b><tt>-dGridFitTT=</tt></b><em>n</em>
  <dd> This specifies the initial value for the implementation specific
! user parameter <b><tt>GridFitTT</tt></b>.
  It controls a grid fitting of True Type fonts
  (Some people call it "hinting", but stronly speaking
  the latter is a Type 1 feature).
! Setting this to 1 enables grid fitting for True Type glyphs
! that don't involve patented instructions. The value 0 disables grid
! fitting for all True Type fonts. The default value is 0.

- <p>
- Setting <b><tt>-dGridFitTT=1</tt></b> may improve rendering
- of True Type fonts. In particular, some fonts rely on the grid fitting
- instructions for proper rasterization.
- Ghostscript only supports the freely-implementable subset of grid
- fitting instructions. If a patented instruction is encountered, a
- warning is printed to <tt>stderr</tt> and the glyph is rendered with no
- grid fitting.
  </dl>

--- 1826,1838 ----
  <dt><b><tt>-dGridFitTT=</tt></b><em>n</em>
  <dd> This specifies the initial value for the implementation specific
! user parameter <a href="Language.htm#User_parameters">GridFitTT</a>
  It controls a grid fitting of True Type fonts
  (Some people call it "hinting", but stronly speaking
  the latter is a Type 1 feature).
! Setting this to 2 enables grid fitting for True Type glyphs.
! The value 0 disables grid fitting. The default value is 2.
! For more information see the description of the user parameter
! <a href="Language.htm#User_parameters">GridFitTT</a>.

  </dl>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.