[Cairo] Questions about enums in Cairo

Duncan Mak duncan at ximian.com
Wed Nov 12 20:22:48 PST 2003


Hello,

I'm working on implementing GDI+ for the Mono project using Cairo. I'm
having trouble mapping some of the GDI+ enumerations into their Cairo
equivalents.

For LineCap, the following values are defined in GDI+ [1]:

    LineCapFlat
    LineCapSquare
    LineCapRound
    LineCapTriangle
    LineCapNoAnchor
    LineCapSquareAnchor
    LineCapRoundAnchor
    LineCapDiamondAnchor
    LineCapArrowAnchor
    LineCapCustom

LineCapSquare would probably maps to CAIRO_LINE_CAP_SQUARE and
LineCapRound to CAIRO_LINE_CAP_ROUND, but what about the others and what
is the GDI+ equivalent of CAIRO_LINE_CAP_BUTT?

A similar problem exists for LineJoin. GDI+ defines a extra value
LineJoinMiterClipped, on top of Miter/Bevel/Round. According to the
documentation, 

        LineJoinMiterClipped - Specifies a mitered join. This produces a
        sharp corner or a beveled corner, depending on whether the
        length of the miter exceeds the miter limit [2].

Is this behavior achievable with Cairo?

Thank you,

Duncan.

[1]
http://msdn.microsoft.com/library/en-us/gdicpp/GDIPlus/GDIPlusreference/enumerations/linecap.asp
[2]
http://msdn.microsoft.com/library/en-us/gdicpp/GDIPlus/GDIPlusreference/enumerations/linejoin.asp




More information about the cairo mailing list