freetype-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ft-devel] ttdebug works again


From: Werner LEMBERG
Subject: [ft-devel] ttdebug works again
Date: Wed, 06 Feb 2013 10:12:29 +0100 (CET)

Erik,


ttdebug works again (more or less).  Please test.  While doing so I've
found the probable cause of FontForge's failure to properly debug your
subpixel code.

Here's a sample session to debug Arial's glyph `x' (with index 91) at
16ppem.  The keys you have to press are indicated with single quotes
(`c' means continue to the end of the code range, `s' does
single-stepping).

  > ttdebug 91 16 arial.ttf
  f0000: 40  NPushB(67) $55 $54 $41 $40 $3f $3e
  'c'

  c0000: b9  PushW[1] $0054 $0328
  'c'

  c0000: b9  PushW[1] $0054 $0328
  'c'

  g0000: b1  PushB[1] $02 $02
  's'
  g0003: 43  RS                                  (0002)0002
  's'
  g0004: 54  EQ                                  (0002 0002)
  's'
  g0005: 58  IF                                  (0001)
  's'
  g0006: 40  NPushB(21) $0f $01 $0b $06 $04 $02
  ...

The leading characters in the output indicate the code range: `f' is
`fpgm', `c' is `cvt', and `g' the glyph program.  As can be seen, the
CVT code is run *twice*!  This confuses FontForge, I believe
(additionally, it's completely unnecessary).

Please fix this.  It seems to me that some of the logic from
`tt_loader_init' must be added to `tt_size_ready_bytecode' so that a
re-execution of the `prep' program can be avoided.


    Werner



reply via email to

[Prev in Thread] Current Thread [Next in Thread]