[cairo] 回复: How to show chinese text using cairo

Simon Sapin simon.sapin at exyr.org
Mon May 6 06:37:18 PDT 2013

Le 06/05/2013 15:13, 快乐2013 a écrit :
> Hi, what I have my code as below:
>     cairo_select_font_face (cr, "Arial Unicode MS",
>     cairo_set_font_size (cr, 32.0);
>     cairo_set_source_rgb (cr, 0.0, 0.0, 1.0);
>     cairo_move_to (cr, 10.0, 50.0);
>      cairo_show_text (cr, "Hello, 中国人  "); // this clause cannot work
> I wonder if the following can work at all.
>      // does this clause can work?
>      cairo_show_text (cr, toUtf8("Hello, 中国人  "));
> here toUtf8 is a functioin doing convertion from ansi to utf8


I don’t know what is the character encoding of string literals on your 
system (perhaps just the encoding your editor is saving as), but yes, 
cairo_show_text does support Unicode and expects a NUL-terminated UTF-8 


But this is a the "toy" text API, you might get better results with Pango.

Simon Sapin

More information about the cairo mailing list