[cairo] offset drawing in a surface
Bill Spitzak
spitzak at gmail.com
Wed Jan 4 12:28:07 PST 2012
swati upadhyaya wrote:
> Hi Henry and Andrea,
>
> First of all thanks for reply
>
> I didn't get what you people mentioned
> as I am new to cairo lib . Let me explain my problem briefly, Suppose I
> have a device with screen width and height as 400 x 400. And I have an
> image with 200 x 200. Now in my device for this image start of x=100 and
> end of x = 300. Now I have to draw the line from 100 to 300..I am using
> the API
> surface = cairo_image_surface_create_for _data(unsigned char
> *buff,CAIRO_FORMAT_ARGB32,width,height,cairo_format_stride_for_width(CAIRO_FORMAT_ARGB32,width))
> where width is image width = 200
> height is image height = 200.
> Then I am doing
> cr = cairo_create(surface);
>
> Now the problem is as the surface starts from top left only so it will
> go from 0 to 200 but I want to draw form 100 to 300. So
> 1) what can I do to shift the origin of the surface fom 0 to 100 ? So
> that it will draw on the same..
You want to do cairo_translate(cr, -100, -100)
Then the point 100,100 will be in the top-left of your image.
More information about the cairo
mailing list