+
+SCM
+Open_type_font::glyph_list () const
+{
+ SCM retval = SCM_EOL;
+ SCM *tail = &retval;
+
+ for (int i = 0; i < face_->num_glyphs; i++)
+ {
+ const size_t len = 256;
+ char name[len];
+ size_t code = FT_Get_Glyph_Name (face_, i, name, len);
+ if (code)
+ warning (_f ("FT_Get_Glyph_Name () error: %s",
+ freetype_error_string (code).c_str ()));
+
+ *tail = scm_cons (scm_from_locale_string (name), SCM_EOL);
+ tail = SCM_CDRLOC (*tail);
+ }
+
+ return retval;
+}