[HarfBuzz] hb-view hb-shape documentation

Eduardo Castineyra eduardo at brainstorm.es
Tue Oct 1 03:34:50 PDT 2013


HI Behdad,

I also have realized hb_shapes passes hb_buffer_set_script and 
hb_buffer_set_language default parameters unless the user specifies the 
opposite.

Does that mean harfbuzz automagically detects the language? Isn't that 
what the itemizer was supposed to do?

Regards!

El 30/09/2013 19:00, Behdad Esfahbod escribió:
> On 13-09-30 05:38 AM, Eduardo Castineyra wrote:
>> Thanks Behdad,
>>
>> Why is there a space at the beginning of the glyph list? (I attached the
>> thai.txt file)
> Because your file has a "BOM" (U+FEFF) character at the beginning.  With
> UTF-8, that usage is discouraged as far as I know.  At any rate, the space has
> zero advance and hence is invisible.
>
> b
>
>
>> El 27/09/2013 18:41, Behdad Esfahbod escribió:
>>> On 13-09-27 12:36 PM, Eduardo Castineyra wrote:
>>>> This is the json file I got:
>>>>
>>>> hb-shape --font-file=leelawad.ttf --text-file=thai.txt --output-format=json
>>>> --output-file=thaiglyphs.txt --shapers=ot
>>>>
>>>> [{"g":"space","cl":0,"dx":0,"dy":0,"ax":0,"ay":0},{"g":"uni0E2B","cl":1,"dx":0,"dy":0,"ax":1207,"ay":0},{"g":"uni0E49","cl":1,"dx":217,"dy":0,"ax":0,"ay":0},{"g":"uni0E31","cl":1,"dx":114,"dy":500,"ax":0,"ay":0},{"g":"space","cl":4,"dx":0,"dy":0,"ax":1122,"ay":0},{"g":"uni0E2B","cl":5,"dx":0,"dy":0,"ax":1207,"ay":0},{"g":"uni0E31","cl":5,"dx":114,"dy":0,"ax":0,"ay":0},{"g":"space","cl":7,"dx":0,"dy":0,"ax":1122,"ay":0},{"g":"uni0E2B","cl":8,"dx":0,"dy":0,"ax":1207,"ay":0},{"g":"uni0E49","cl":8,"dx":217,"dy":0,"ax":0,"ay":0},{"g":"space","cl":10,"dx":0,"dy":0,"ax":1122,"ay":0},{"g":"uni0E2B","cl":11,"dx":0,"dy":0,"ax":1207,"ay":0},{"g":"uni0E31","cl":11,"dx":114,"dy":0,"ax":0,"ay":0},{"g":"uni0E49.sm","cl":11,"dx":114,"dy":500,"ax":0,"ay":0}]
>>>>
>>>> I see the cluster, the deltas, the advances, but I'm still missing the glyph
>>>> indices for the font. Do you know what "uni0E49.sm" means?
>>> Those are glyph names.  Pass --no-glyph-names to get raw glyph number instead.
>>>
>>>
>>>> El 26/09/2013 20:23, Khaled Hosny escribió:
>>>>> Use --output-format=json, should be a bit more explanatory. Myself, I
>>>>> often forget which number is which, but you basically get glyph name,
>>>>> cluster value, X and Y advance and delta.
>>>>>
>>>>> The glyph name is equivalent to glyph index, just a bit more readable.
>>>>> The cluster value is basically the index of the corresponding character
>>>>> in the input string (though the relation can be complex). The advances
>>>>> and deltas are what HarfBuzz clients will use to calculate the absolute
>>>>> glyph position, HarfBuzz itself does not do that.
>>>>>
>>>>> Regards,
>>>>> Khaled
>>>>>
>>>>> On Thu, Sep 26, 2013 at 07:51:20PM +0200, Eduardo Castineyra wrote:
>>>>>> Now I see it, thanks!
>>>>>>
>>>>>> How should I interpret the outcome for hb-shape?
>>>>>>
>>>>>>> hb-shape leelawad.ttf --text-file=thai.txt
>>>>>> [space=0+0|uni0E2B=1+1207|uni0E49=1 at 217,0+0|uni0E31=1 at 114,500+0|space=4+1122|uni0E2B=5+1207|uni0E31=5 at 114,0+0|space=7+1122|uni0E2B=8+1207|uni0E49=8 at 217,0+0|spac
>>>>>>
>>>>>>
>>>>>> e=10+1122|uni0E2B=11+1207|uni0E31=11 at 114,0+0|uni0E49.sm=11 at 114,500+0]
>>>>>>
>>>>>> What I would expect to see was the unicode, the index of the glyph
>>>>>> inside the leelawad.ttf font, and the screen position of the glyph.
>>>>>> But I don't what those numbers and symbols mean.
>>>>>>
>>>>>> El 26/09/2013 19:27, Khaled Hosny escribió:
>>>>>>> On Thu, Sep 26, 2013 at 06:48:26PM +0200, Eduardo Castineyra wrote:
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> I was trying to use the hb-view and hb-shape tools but I don't get
>>>>>>>> how do they work.
>>>>>>>>
>>>>>>>> This is the output I got from hb-view, is there any documentation to
>>>>>>>> know what can I do with the outcome?
>>>>>>> If you don't specify an output file name, hb-view will do some sort of
>>>>>>> Unicode-art to draw the glyphs on the terminal. This works fine on
>>>>>>> Unicode-capable terminals, but I guess Windows’s cmd.exe is not such a
>>>>>>> one.  You can specify the output file name and format explicitly, see
>>>>>>> hb-view --help.
>>>>>>>
>>>>>>> Regards,
>>>>>>> Khaled
>>>> _______________________________________________
>>>> HarfBuzz mailing list
>>>> HarfBuzz at lists.freedesktop.org
>>>> http://lists.freedesktop.org/mailman/listinfo/harfbuzz




More information about the HarfBuzz mailing list