Errors in pango_parse_markup



Hi there,

i?m currently working with pango to render fonts to outlines to ps files.
Dont ask me why i do this, i get paid for it :)
I have a rich text field where the user can write something and edit the
style of this text. Then i transform it to markup language. E.g.: <span
underline="single" weight="bold" style="italic" foreground="#FF0000">
font_desc="Algerian 24">test</span>

In die documentation it says: possible values of "underline": "none",
"single", "double", "low", "error"
No matter what value I use i get the following error:
"'single' is not a valid value for the 'underline' attribute on <span> tag,
line 1; valid values are "
After "are " nothing is appended so i dont know what would be valid! If i
dont set the underline markup tag everything works well.
Do you have any ideas? I'm working with pango 1.18.4

Also I'm facing the problem that the foreground color is never used! When i
render everything via cairo to a png file every single character is black.
No matter what foreground is. So hopefully you have any idea what could bet
he problem.

Here is the src i use:

        PangoFontDescription *pFontDescr;
        PangoAttrList *pAttrList;
        PangoAttribute *pAttr;
        GError * pError = 0;
        char * pText = 0;
        pango_parse_markup ( <<<here the string>>>> -1, 0, &pAttrList,
&pText, NULL, &pError) )
        

        /**********************/
        cairo_t *cr;
    cairo_surface_t *surface;
    PangoLayout *layout;
        PangoFontDescription *desc;  

        surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, 1000,
500);
        cr = cairo_create (surface);

        /************/
    layout = pango_cairo_create_layout( cr );
    pango_layout_set_text( layout, pText, -1 );

    cairo_move_to( cr, 100, 300 );      
        pango_layout_set_attributes( layout, pAttrList );

        pango_cairo_layout_line_path( cr, pango_layout_get_line(layout, 0)
);
        cairo_fill( cr );
    g_object_unref( layout );
        /************/

        cairo_surface_write_to_png (surface, "pango_multiple_markup.png");
    cairo_destroy( cr );

hope you can find the problem :( i cant.

Kind regards, juergen




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]