|
|
|
#include <cairo.h>
|
|
|
|
|
|
|
|
#include <tqpainter.h>
|
|
|
|
#include <tqapplication.h>
|
|
|
|
|
|
|
|
#include "tqtcairopainter.h"
|
|
|
|
|
|
|
|
int
|
|
|
|
main (int argc, char *argv[])
|
|
|
|
{
|
|
|
|
cairo_surface_t *surface;
|
|
|
|
cairo_t *cr;
|
|
|
|
|
|
|
|
surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, 120, 120);
|
|
|
|
// cr = cairo_create (surface);
|
|
|
|
|
|
|
|
// /* Examples are in 1.0 x 1.0 coordinate space */
|
|
|
|
// cairo_scale (cr, 120, 120);
|
|
|
|
//
|
|
|
|
// /* Drawing code goes here */
|
|
|
|
// cairo_set_line_width (cr, 0.1);
|
|
|
|
// cairo_set_source_rgb (cr, 0, 0, 0);
|
|
|
|
// cairo_rectangle (cr, 0.25, 0.25, 0.5, 0.5);
|
|
|
|
// cairo_stroke (cr);
|
|
|
|
|
|
|
|
// Initialize TQApplication required data structures
|
|
|
|
new TQApplication(argc, argv, TRUE);
|
|
|
|
|
|
|
|
TQt3CairoPaintDevice pd(surface);
|
|
|
|
TQPainter p(&pd);
|
|
|
|
p.setPen(TQPen(TQt::red, 1));
|
|
|
|
p.drawRect(5, 5, 50, 50);
|
|
|
|
|
|
|
|
TQBrush brush( TQt::yellow, TQBrush::DiagCrossPattern ); // yellow pattern
|
|
|
|
p.setBrush( brush ); // set the yellow brush
|
|
|
|
p.setPen( TQt::NoPen ); // do not draw outline
|
|
|
|
p.drawRect( 0,0, 25,25 ); // draw filled rectangle
|
|
|
|
TQBrush brush2( TQt::green, TQBrush::SolidPattern ); // green pattern
|
|
|
|
p.setBrush( brush2 ); // set the yellow brush
|
|
|
|
p.setPen( TQt::NoPen ); // do not draw outline
|
|
|
|
p.drawRect( 40,30, 200,100 ); // draw filled rectangle
|
|
|
|
p.setBrush( TQt::NoBrush ); // do not fill
|
|
|
|
p.setPen( TQt::blue ); // set blue pen, 0 pixel width
|
|
|
|
p.drawRect( 10,10, 30,20 ); // draw rectangle outline
|
|
|
|
TQBrush brush3( TQColor(255,128,0), TQBrush::SolidPattern ); // green pattern
|
|
|
|
p.setBrush( brush3 ); // set the yellow brush
|
|
|
|
p.setPen( TQColor(255,0,255) ); // draw outline
|
|
|
|
p.drawRect( 50,50, 180,80 ); // draw filled rectangle
|
|
|
|
|
|
|
|
p.end();
|
|
|
|
|
|
|
|
/* Write output and clean up */
|
|
|
|
cairo_surface_write_to_png (surface, "stroke.png");
|
|
|
|
// cairo_destroy (cr);
|
|
|
|
cairo_surface_destroy (surface);
|
|
|
|
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
|