Difference between revisions of "How to use QPainter"

From Qt Wiki
Jump to: navigation, search
 
Line 1: Line 1:
==Introduction==
+
[[Category:Developing_with_Qt]]
  
QPainter provides standard functions to draw points, lines, ellipses, arcs, B’ezier curves, and other primitives. More complex painting operations include support for polygons and vector paths, allowing detailed drawings to be prepared in advance and drawn using a single function call. Text can also be painted directly with a painter or incorporated in a path for later use.
+
== Introduction ==
  
Qt’s painting system also provides a number of features to improve overall rendering quality, including alpha blending, Porter-Duff composition modes, anti-aliasing, and linear, radial and conical gradient fills.
+
QPainter provides standard functions to draw points, lines, ellipses, arcs, B'ezier curves, and other primitives. More complex painting operations include support for polygons and vector paths, allowing detailed drawings to be prepared in advance and drawn using a single function call. Text can also be painted directly with a painter or incorporated in a path for later use.
  
==First steps==
+
Qt's painting system also provides a number of features to improve overall rendering quality, including alpha blending, Porter-Duff composition modes, anti-aliasing, and linear, radial and conical gradient fills.
  
'''<span class="caps">IMPORTANT</span>!''' QPainter can paint on QWidget only in <code>paintEvent(QPaintEvent *)</code>. Sample code:<br />
+
== First steps ==
  
This snippet will draw black line on widget. Now we know how to create QPainter object and write on widget. But this isn’t only one of supporting context’s. he can draw on QPrinter, QPicture, QPixmap, QBitmap, QImage, QGLPixelBuffer.
+
'''IMPORTANT!''' QPainter can paint on QWidget only in &lt;code&amp;gt;paintEvent(QPaintEvent ''')&lt;/code&amp;gt;. Sample code:<br /><code><br />void paintEvent(QPaintEvent''')<br />{<br /> QPainter doc(this);<br /> QLineF line(10.0, 80.0, 90.0, 20.0);<br /> doc.drawLine(line);<br />}<br /></code>
  
==Pen and brush==
+
This snippet will draw black line on widget. Now we know how to create QPainter object and write on widget. But this isn't only one of supporting context's. he can draw on QPrinter, QPicture, QPixmap, QBitmap, QImage, QGLPixelBuffer.
  
Pens and brushes are fundamental tools for graphic programming with Qt. Without them, you can’t do anything. So, let’s talk about them.
+
== Pen and brush ==
  
====Pen====
+
Pens and brushes are fundamental tools for graphic programming with Qt. Without them, you can't do anything. So, let's talk about them.
  
Basic usage of pen is drawing circuit lines of shape.
+
==== Pen ====
 
 
===Categories:===
 
 
 
* [[:Category:Developing with Qt|Developing_with_Qt]]
 

Revision as of 09:27, 24 February 2015


Introduction

QPainter provides standard functions to draw points, lines, ellipses, arcs, B'ezier curves, and other primitives. More complex painting operations include support for polygons and vector paths, allowing detailed drawings to be prepared in advance and drawn using a single function call. Text can also be painted directly with a painter or incorporated in a path for later use.

Qt's painting system also provides a number of features to improve overall rendering quality, including alpha blending, Porter-Duff composition modes, anti-aliasing, and linear, radial and conical gradient fills.

First steps

IMPORTANT! QPainter can paint on QWidget only in <code&gt;paintEvent(QPaintEvent )</code&gt;. Sample code:
<br />void paintEvent(QPaintEvent''')<br />{<br /> QPainter doc(this);<br /> QLineF line(10.0, 80.0, 90.0, 20.0);<br /> doc.drawLine(line);<br />}<br />

This snippet will draw black line on widget. Now we know how to create QPainter object and write on widget. But this isn't only one of supporting context's. he can draw on QPrinter, QPicture, QPixmap, QBitmap, QImage, QGLPixelBuffer.

Pen and brush

Pens and brushes are fundamental tools for graphic programming with Qt. Without them, you can't do anything. So, let's talk about them.

Pen