0

私はcairoを使用して、cairoサーフェスに単純なテキストをレンダリングします。そのためにFreeTypeフォントを使用します(それが重要な場合はVera.ttf)。動作しますが、出力から文字が消えることがあります。実際には数字だけです。「デモストリーム1..」というテキストを描画しましたが、出力から「1」が消えることがあり、その理由がまったくわかりません。数字は文字列の一部です。また、メモリの破損などはありません。これは、テキストを描画するコードです。

font = cairo_ft_font_face_create_for_ft_face(ftFace, 0);
cr = cairo_create(surface);

/* set the foreground color */
cairo_set_source_rgba(cr, ...);

/* render the text */
cairo_set_antialias(cr, CAIRO_ANTIALIAS_GRAY);
cairo_set_font_face(cr, font);
cairo_set_font_size(cr, size);
cairo_move_to(cr, x, y);

cairo_show_text(cr, text);

cairo_destroy(cr);
cairo_font_face_destroy(font);

ftFaceは、ロードされたFreeTypeフォントフェースです。

また、pangoを使用してテキストをレンダリングしますが、fontcacheを使用できません。したがって、フォントキャッシュのみをサポートし、直接フォントの読み込みをサポートしていないため、フォントをpangoに読み込む方法がわかりません。

どんな入力でも大歓迎です。

4

1 に答える 1

-1

カイロのサポートを削除しました - 問題はもはや関係ありません。

于 2010-03-08T15:45:41.543 に答える