[HarfBuzz] hb_ft_face_create_referenced and the hb_face_t is uninitialized

Liam liam at fallenacorn.com
Fri Mar 18 15:49:10 UTC 2016


Hello,

     I have a few questions about this method, I am looking to obtain 
the table information to find the values for substitution tables so that 
I can input the correct value for value when I create a hb_feature_t.

I figured the hb_ot_layout_table_get_feature_tags is the method call 
that would work, this method requires hb_face_t.

I am using freetype in this project and I have used freetype to create a 
FT_Face, and to save myself the headache I used hb_ft_create_referenced, 
and from what I read that should return *hb_face_t, it does but as 
incomplete and using GDB to debug the code even if I type cast to 
(hb_face_t) still prints incomplete and ptype also returns an incomplete 
struct.

I noticed that the struct is defined in hb_face.h as incomplete, and the 
full struct is defined in hb-face-private.hh, which does not seem to be 
used directly by the header files I included in my program.

After some forcing by recompiling harfbuzz with some changes, I have 
been able to extract the tags from the hb_face but this is not a good 
solution for me, I am certain I am missing something tiny and would love 
some insight.

I have including the following headers hb.h, hb-ft.h and hb-ot.h, the 
code is compiling and I have passed into the gcc command -lharfbuzz and 
-I/usr/include/harfbuzz, and also double checked that the *.h files are 
present in /usr/include/harfbuzz and that libharfbuzz is present  in the 
lib folder.

thanks


More information about the HarfBuzz mailing list