บันทึกการ instruct ฟอนต์

Topic: 
 

เที่ยวนี้ไม่มีอะไร บันทึกตัวอย่างการ instruct เอาไว้ดูเพื่ออ้างอิงเฉย ๆ

ตัวอย่าง DejaVuSans อักขระ n

โค๊ด

NPUSHB
 25
 3
 9
 0
 3
 14
 1
 6
 135
 14
 17
 184
 12
 188
 10
 1
 2
 8
 0
 78
 13
 9
 8
 11
 70
 20
SRP0
MIRP[rp0,min,rnd,grey]
MIRP[min,rnd,grey]
SHP[rp2]
MIRP[rp0,rnd,grey]
MIRP[min,rnd,grey]
IUP[x]
SVTCA[y-axis]
MDAP[rnd]
ALIGNRP
MIRP[rnd,grey]
MIRP[rp0,rnd,grey]
MDRP[rnd,grey]
MIRP[min,rnd,grey]
SRP1
SRP2
SLOOP
IP
IUP[y]
PUSHB_5
 96
 21
 207
 21
 2
SVTCA[x-axis]
DELTAP1

outline

x-direction instruction

y-direction instruction

คลี่สแต็กให้พออ่านง่าย

CODE                   RP0     STACK      DESCRIPTION
                                           (x-axis is default direction)
SRP0                           20         Set Reference Point 0
MIRP[rp0,min,rnd,grey] (20)    70 11      Move Indirect Relative Point
MIRP[min,rnd,grey]     (11)    8 9
SHP[rp2]               (11)    13         SHift Point using reference point
MIRP[rp0,rnd,grey]     (11)    78 0
MIRP[min,rnd,grey]     (0)     8 2
IUP[x]                                    Interpolate Untouched Points through the outline

SVTCA[y-axis]                             Set freedom and projection Vectors To Coordinate Axis
MDAP[rnd]                      1          Move Direct Absolute Point
ALIGNRP                (1)     10         ALIGN to Reference Point
MIRP[rnd,grey]         (1)     188 12
MIRP[rp0,rnd,grey]     (1)     184 17
MDRP[rnd,grey]         (17)    14
MIRP[min,rnd,grey]     (17)    135 6
SRP1                           1          Set Reference Point 1
SRP2                           14         Set Reference Point 2
SLOOP                          3          Set LOOP variable
IP                             0 9 3      Interpolate Point
IUP[y]                                    Interpolate Untouched Points through the outline

SVTCA[x-axis]
DELTAP1                       2 21 207 21 96    DELTA exception P1


อธิบาย deltap

The 8 bit arg component of the DELTA instructions decomposes into two parts. 
The first 4 bits represent the relative number of pixels per em at which the exception is applied. 
The second 4 bits represent the magnitude of the change to be made. The structure of the arg is shown in FIGURE 26.
ppem = pointSize * dpi / 72 

207 = 1100 1111
1100=12 (9+12=21ppem)
1111=15 = 8step = 8/64 of pixel    (0=-8, 1=-7, ... 14=+7, 15=+8)

96 = 0110 0000
0110=6 (9+6=15ppem)
0000=0 = -8step = -8/64 of pixel

แปลว่า
1.เลื่อนจุด 21 ไป 8step ที่ขนาดฟอนต์ 21 ppem (จอ Mac75dpi=21pt Windows96dpi~16pt Linux(จอผม85dpi)~18pt)
2. เลื่อนจุด 21 ไป -8step ที่ขนาดฟอนต์ 15 ppem (จอ Mac75dpi=15pt Windows96dpi~11pt Linux(จอผม85dpi)~13pt)

ตาราง cvt

ITEM            VALUE           DESCRIPTION
8               184             stem width
70              186             left spacing
78              938             outer width
135             156             top stem thick
184             1147            straight vertical height
188             1120            outer height
 

Syndicate

Subscribe to Syndicate

Who's online

There are currently 0 users online.