Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
|
#include <qpdf_p.h>
Public Types | |
enum | PdfVersion { Version_1_4 , Version_A1b , Version_1_6 } |
enum class | ColorModel { RGB , Grayscale , CMYK , Auto } |
Public Types inherited from QPaintEngine | |
enum | PaintEngineFeature { PrimitiveTransform = 0x00000001 , PatternTransform = 0x00000002 , PixmapTransform = 0x00000004 , PatternBrush = 0x00000008 , LinearGradientFill = 0x00000010 , RadialGradientFill = 0x00000020 , ConicalGradientFill = 0x00000040 , AlphaBlend = 0x00000080 , PorterDuff = 0x00000100 , PainterPaths = 0x00000200 , Antialiasing = 0x00000400 , BrushStroke = 0x00000800 , ConstantOpacity = 0x00001000 , MaskedBrush = 0x00002000 , PerspectiveTransform = 0x00004000 , BlendModes = 0x00008000 , ObjectBoundingModeGradients = 0x00010000 , RasterOpModes = 0x00020000 , PaintOutsidePaintEvent = 0x20000000 , AllFeatures = 0xffffffff } |
This enum is used to describe the features or capabilities that the paint engine has. More... | |
enum | DirtyFlag { DirtyPen = 0x0001 , DirtyBrush = 0x0002 , DirtyBrushOrigin = 0x0004 , DirtyFont = 0x0008 , DirtyBackground = 0x0010 , DirtyBackgroundMode = 0x0020 , DirtyTransform = 0x0040 , DirtyClipRegion = 0x0080 , DirtyClipPath = 0x0100 , DirtyHints = 0x0200 , DirtyCompositionMode = 0x0400 , DirtyClipEnabled = 0x0800 , DirtyOpacity = 0x1000 , AllDirty = 0xffff } |
\value DirtyPen The pen is dirty and needs to be updated. More... | |
enum | PolygonDrawMode { OddEvenMode , WindingMode , ConvexMode , PolylineMode } |
\value OddEvenMode The polygon should be drawn using OddEven fill rule. More... | |
enum | Type { X11 , Windows , QuickDraw , CoreGraphics , MacPrinter , QWindowSystem , OpenGL , Picture , SVG , Raster , Direct3D , Pdf , OpenVG , OpenGL2 , PaintBuffer , Blitter , Direct2D , User = 50 , MaxUser = 100 } |
\value X11 \value Windows \value MacPrinter \value CoreGraphics \macos's Quartz2D (CoreGraphics) \value QuickDraw \macos's QuickDraw \value QWindowSystem Qt for Embedded Linux \value OpenGL \value Picture QPicture format \value SVG Scalable Vector Graphics XML format \value Raster \value Direct3D Windows only, Direct3D based engine \value Pdf Portable Document Format \value OpenVG \value User First user type ID \value MaxUser Last user type ID \value OpenGL2 \value PaintBuffer \value Blitter \value Direct2D Windows only, Direct2D based engine More... | |
Public Member Functions | |
QPdfEngine () | |
QPdfEngine (QPdfEnginePrivate &d) | |
~QPdfEngine () | |
void | setOutputFilename (const QString &filename) |
void | setResolution (int resolution) |
int | resolution () const |
void | setPdfVersion (PdfVersion version) |
void | setDocumentXmpMetadata (const QByteArray &xmpMetadata) |
QByteArray | documentXmpMetadata () const |
void | addFileAttachment (const QString &fileName, const QByteArray &data, const QString &mimeType) |
ColorModel | colorModel () const |
void | setColorModel (ColorModel model) |
bool | begin (QPaintDevice *pdev) override |
Reimplement this function to initialise your paint engine when painting is to start on the paint device pdev. | |
bool | end () override |
Reimplement this function to finish painting on the current paint device. | |
void | drawPoints (const QPointF *points, int pointCount) override |
Draws the first pointCount points in the buffer points. | |
void | drawLines (const QLineF *lines, int lineCount) override |
The default implementation splits the list of lines in lines into lineCount separate calls to drawPath() or drawPolygon() depending on the feature set of the paint engine. | |
void | drawRects (const QRectF *rects, int rectCount) override |
Draws the first rectCount rectangles in the buffer rects. | |
void | drawPolygon (const QPointF *points, int pointCount, PolygonDrawMode mode) override |
Reimplement this virtual function to draw the polygon defined by the pointCount first points in points, using mode mode. | |
void | drawPath (const QPainterPath &path) override |
The default implementation ignores the path and does nothing. | |
void | drawTextItem (const QPointF &p, const QTextItem &textItem) override |
This function draws the text item textItem at position p. | |
void | drawPixmap (const QRectF &rectangle, const QPixmap &pixmap, const QRectF &sr) override |
Reimplement this function to draw the part of the pm specified by the sr rectangle in the given r. | |
void | drawImage (const QRectF &r, const QImage &pm, const QRectF &sr, Qt::ImageConversionFlags flags=Qt::AutoColor) override |
Reimplement this function to draw the part of the image specified by the sr rectangle in the given rectangle using the given conversion flags flags, to convert it to a pixmap. | |
void | drawTiledPixmap (const QRectF &rectangle, const QPixmap &pixmap, const QPointF &point) override |
Reimplement this function to draw the pixmap in the given rect, starting at the given p. | |
void | drawHyperlink (const QRectF &r, const QUrl &url) |
void | updateState (const QPaintEngineState &state) override |
Reimplement this function to update the state of a paint engine. | |
int | metric (QPaintDevice::PaintDeviceMetric metricType) const |
Type | type () const override |
Reimplement this function to return the paint engine \l{Type}. | |
bool | newPage () |
void | setPageLayout (const QPageLayout &pageLayout) |
void | setPageSize (const QPageSize &pageSize) |
void | setPageOrientation (QPageLayout::Orientation orientation) |
void | setPageMargins (const QMarginsF &margins, QPageLayout::Unit units=QPageLayout::Point) |
QPageLayout | pageLayout () const |
void | setPen () |
void | setBrush () |
void | setupGraphicsState (QPaintEngine::DirtyFlags flags) |
Public Member Functions inherited from QPaintEngine | |
QPaintEngine (PaintEngineFeatures features=PaintEngineFeatures()) | |
Creates a paint engine with the featureset specified by caps. | |
virtual | ~QPaintEngine () |
Destroys the paint engine. | |
bool | isActive () const |
Returns true if the paint engine is actively drawing; otherwise returns false . | |
void | setActive (bool newState) |
Sets the active state of the paint engine to state. | |
virtual void | drawRects (const QRect *rects, int rectCount) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.The default implementation converts the first rectCount rectangles in the buffer rects to a QRectF and calls the floating point version of this function. | |
virtual void | drawLines (const QLine *lines, int lineCount) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.The default implementation converts the first lineCount lines in lines to a QLineF and calls the floating point version of this function. | |
virtual void | drawEllipse (const QRectF &r) |
Reimplement this function to draw the largest ellipse that can be contained within rectangle rect. | |
virtual void | drawEllipse (const QRect &r) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.The default implementation of this function calls the floating point version of this function. | |
virtual void | drawPoints (const QPoint *points, int pointCount) |
Draws the first pointCount points in the buffer points. | |
virtual void | drawPolygon (const QPoint *points, int pointCount, PolygonDrawMode mode) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Reimplement this virtual function to draw the polygon defined by the pointCount first points in points, using mode mode. | |
void | setPaintDevice (QPaintDevice *device) |
QPaintDevice * | paintDevice () const |
Returns the device that this engine is painting on, if painting is active; otherwise returns \nullptr. | |
void | setSystemClip (const QRegion &baseClip) |
QRegion | systemClip () const |
void | setSystemRect (const QRect &rect) |
QRect | systemRect () const |
virtual QPoint | coordinateOffset () const |
void | fix_neg_rect (int *x, int *y, int *w, int *h) |
bool | testDirty (DirtyFlags df) |
void | setDirty (DirtyFlags df) |
void | clearDirty (DirtyFlags df) |
bool | hasFeature (PaintEngineFeatures feature) const |
Returns true if the paint engine supports the specified feature; otherwise returns false . | |
QPainter * | painter () const |
Returns the paint engine's painter. | |
void | syncState () |
bool | isExtended () const |
virtual QPixmap | createPixmap (QSize size) |
virtual QPixmap | createPixmapFromImage (QImage image, Qt::ImageConversionFlags flags=Qt::AutoColor) |
Friends | |
class | QPdfWriter |
Additional Inherited Members | |
Protected Member Functions inherited from QPaintEngine | |
QPaintEngine (QPaintEnginePrivate &data, PaintEngineFeatures devcaps=PaintEngineFeatures()) | |
Protected Attributes inherited from QPaintEngine | |
QPaintEngineState * | state |
PaintEngineFeatures | gccaps |
uint | active: 1 |
uint | selfDestruct: 1 |
uint | extended: 1 |
QScopedPointer< QPaintEnginePrivate > | d_ptr |
|
strong |
|
explicit |
void QPdfEngine::addFileAttachment | ( | const QString & | fileName, |
const QByteArray & | data, | ||
const QString & | mimeType ) |
|
overridevirtual |
Reimplement this function to initialise your paint engine when painting is to start on the paint device pdev.
Return true if the initialization was successful; otherwise return false.
Implements QPaintEngine.
Reimplemented in QPdfPrintEngine.
Definition at line 1450 of file qpdf.cpp.
References d, file, newPage(), QFile::open(), QPaintEngine::setActive(), QPdf::ByteStream::stream(), QIODeviceBase::Truncate, and QIODeviceBase::WriteOnly.
Referenced by QPdfPrintEngine::begin().
ColorModel QPdfEngine::colorModel | ( | ) | const |
QByteArray QPdfEngine::documentXmpMetadata | ( | ) | const |
Definition at line 1038 of file qpdf.cpp.
References QRectF::bottom(), d, j, QRectF::left(), qt_real_to_string(), QRectF::right(), QByteArray::size(), QUrl::toEncoded(), QRectF::top(), url, and Version_A1b.
|
overridevirtual |
Reimplement this function to draw the part of the image specified by the sr rectangle in the given rectangle using the given conversion flags flags, to convert it to a pixmap.
Reimplemented from QPaintEngine.
Definition at line 944 of file qpdf.cpp.
References QImage::cacheKey(), d, QPdf::generateMatrix(), QImage::height(), QRectF::height(), QRectF::isEmpty(), QPainter::LosslessImageRendering, QPaintEngine::painter(), qRound(), setBrush(), QPainter::testRenderHint(), Version_A1b, QImage::width(), QRectF::width(), QRectF::x(), and QRectF::y().
The default implementation splits the list of lines in lines into lineCount separate calls to drawPath() or drawPolygon() depending on the feature set of the paint engine.
Reimplemented from QPaintEngine.
Definition at line 791 of file qpdf.cpp.
References d, drawPath(), i, QPainterPath::moveTo(), p1, and p2.
|
overridevirtual |
The default implementation ignores the path and does nothing.
Reimplemented from QPaintEngine.
Definition at line 873 of file qpdf.cpp.
References d, QPdf::FillAndStrokePath, QPdf::FillPath, QPdf::generatePath(), setBrush(), and QPdf::StrokePath.
Referenced by drawLines(), drawPoints(), drawPolygon(), and drawRects().
|
overridevirtual |
Reimplement this function to draw the part of the pm specified by the sr rectangle in the given r.
Implements QPaintEngine.
Definition at line 901 of file qpdf.cpp.
References QPixmap::cacheKey(), d, QPdf::generateMatrix(), QRectF::height(), QRectF::isEmpty(), QPainter::LosslessImageRendering, QPaintEngine::painter(), pixmap, qRound(), setBrush(), QPainter::testRenderHint(), QPixmap::toImage(), Version_A1b, QRectF::width(), QRectF::x(), and QRectF::y().
Draws the first pointCount points in the buffer points.
Reimplemented from QPaintEngine.
Definition at line 773 of file qpdf.cpp.
References d, drawPath(), i, and QPainterPath::moveTo().
|
overridevirtual |
Reimplement this virtual function to draw the polygon defined by the pointCount first points in points, using mode mode.
Reimplemented from QPaintEngine.
Definition at line 837 of file qpdf.cpp.
References QPaintEngine::ConvexMode, d, drawPath(), i, Qt::OddEvenFill, QPaintEngine::OddEvenMode, QPaintEngine::PolylineMode, QPainterPath::setFillRule(), Qt::WindingFill, and QPaintEngine::WindingMode.
Draws the first rectCount rectangles in the buffer rects.
The default implementation of this function calls drawPath() or drawPolygon() depending on the feature set of the paint engine.
Reimplemented from QPaintEngine.
Definition at line 808 of file qpdf.cpp.
References QPainterPath::addRect(), d, drawPath(), QPdf::generateMatrix(), QRectF::height(), i, QRectF::width(), QRectF::x(), and QRectF::y().
Referenced by drawTiledPixmap().
This function draws the text item textItem at position p.
The default implementation of this function converts the text to a QPainterPath and paints the resulting path.
Reimplemented from QPaintEngine.
Definition at line 1008 of file qpdf.cpp.
References d, QPaintEngine::drawTextItem(), QPdf::generateMatrix(), QFontEngine::Multi, Q_ASSERT, setBrush(), and QTransform::TxProject.
|
overridevirtual |
Reimplement this function to draw the pixmap in the given rect, starting at the given p.
The pixmap will be drawn repeatedly until the rect is filled.
Reimplemented from QPaintEngine.
Definition at line 978 of file qpdf.cpp.
References d, drawRects(), pixmap, and setBrush().
|
overridevirtual |
Reimplement this function to finish painting on the current paint device.
Return true if painting was finished successfully; otherwise return false.
Implements QPaintEngine.
Reimplemented in QPdfPrintEngine.
Definition at line 1508 of file qpdf.cpp.
References d, qDeleteAll(), and QPaintEngine::setActive().
Referenced by QPdfPrintEngine::end().
int QPdfEngine::metric | ( | QPaintDevice::PaintDeviceMetric | metricType | ) | const |
Definition at line 1387 of file qpdf.cpp.
References d, QPaintDevice::devicePixelRatioFScale(), QPageLayout::Millimeter, QPaintDevice::PdmDepth, QPaintDevice::PdmDevicePixelRatio, QPaintDevice::PdmDevicePixelRatioScaled, QPaintDevice::PdmDpiX, QPaintDevice::PdmDpiY, QPaintDevice::PdmHeight, QPaintDevice::PdmHeightMM, QPaintDevice::PdmNumColors, QPaintDevice::PdmPhysicalDpiX, QPaintDevice::PdmPhysicalDpiY, QPaintDevice::PdmWidth, QPaintDevice::PdmWidthMM, qRound(), and qWarning.
Referenced by QPdfPrintEngine::metric().
bool QPdfEngine::newPage | ( | ) |
Definition at line 1306 of file qpdf.cpp.
References d, QPaintEngine::DirtyBrush, QPaintEngine::DirtyClipPath, QPaintEngine::DirtyPen, QPaintEngine::isActive(), QFileDevice::NoError, and setupGraphicsState().
Referenced by begin(), and QPdfPrintEngine::newPage().
QPageLayout QPdfEngine::pageLayout | ( | ) | const |
Definition at line 1380 of file qpdf.cpp.
References d.
Referenced by QPdfPagedPaintDevicePrivate::pageLayout(), setPageLayout(), QCupsPrintEngine::setProperty(), and QPdfPrintEngine::setProperty().
int QPdfEngine::resolution | ( | ) | const |
Definition at line 1331 of file qpdf.cpp.
References d.
Referenced by setResolution().
void QPdfEngine::setBrush | ( | ) |
Definition at line 1279 of file qpdf.cpp.
References d, and Qt::NoBrush.
Referenced by drawImage(), drawPath(), drawPixmap(), drawTextItem(), drawTiledPixmap(), and setupGraphicsState().
void QPdfEngine::setColorModel | ( | ColorModel | model | ) |
void QPdfEngine::setDocumentXmpMetadata | ( | const QByteArray & | xmpMetadata | ) |
void QPdfEngine::setPageLayout | ( | const QPageLayout & | pageLayout | ) |
Definition at line 1355 of file qpdf.cpp.
References d, and pageLayout().
Referenced by QPdfPagedPaintDevicePrivate::setPageLayout().
void QPdfEngine::setPageMargins | ( | const QMarginsF & | margins, |
QPageLayout::Unit | units = QPageLayout::Point ) |
Definition at line 1373 of file qpdf.cpp.
References d.
Referenced by QPdfPagedPaintDevicePrivate::setPageMargins().
void QPdfEngine::setPageOrientation | ( | QPageLayout::Orientation | orientation | ) |
Definition at line 1367 of file qpdf.cpp.
References d.
Referenced by QPdfPagedPaintDevicePrivate::setPageOrientation().
Definition at line 1361 of file qpdf.cpp.
References d.
Referenced by QPdfPagedPaintDevicePrivate::setPageSize().
void QPdfEngine::setPdfVersion | ( | PdfVersion | version | ) |
Definition at line 1337 of file qpdf.cpp.
References d.
Referenced by QPdfPrintEngine::QPdfPrintEngine().
void QPdfEngine::setPen | ( | ) |
Definition at line 1229 of file qpdf.cpp.
References Qt::BevelJoin, d, Qt::FlatCap, QPdf::generateDashes(), Qt::MiterJoin, Qt::NoPen, Q_ASSERT, qMax(), Qt::RoundCap, Qt::RoundJoin, Qt::SolidPattern, Qt::SquareCap, and Qt::SvgMiterJoin.
Referenced by setupGraphicsState().
void QPdfEngine::setResolution | ( | int | resolution | ) |
Definition at line 1325 of file qpdf.cpp.
References d, and resolution().
void QPdfEngine::setupGraphicsState | ( | QPaintEngine::DirtyFlags | flags | ) |
Definition at line 1160 of file qpdf.cpp.
References QPdf::ClipPath, d, QPaintEngine::DirtyBrush, QPaintEngine::DirtyClipPath, QPaintEngine::DirtyPen, QPaintEngine::DirtyTransform, QPdf::generateMatrix(), QPdf::generatePath(), i, setBrush(), and setPen().
Referenced by newPage(), and updateState().
|
overridevirtual |
Reimplement this function to return the paint engine \l{Type}.
Implements QPaintEngine.
Definition at line 1320 of file qpdf.cpp.
References QPaintEngine::Pdf.
|
overridevirtual |
Reimplement this function to update the state of a paint engine.
When implemented, this function is responsible for checking the paint engine's current state and update the properties that are changed. Use the QPaintEngineState::state() function to find out which properties that must be updated, then use the corresponding \l {GetFunction}{get function} to retrieve the current values for the given properties.
Implements QPaintEngine.
Definition at line 1073 of file qpdf.cpp.
References QPaintEngineState::brush(), QPen::brush(), QPaintEngineState::brushOrigin(), QPaintEngineState::clipOperation(), QPaintEngineState::clipPath(), QPaintEngineState::clipRegion(), QPen::color(), d, QPaintEngine::DirtyBrush, QPaintEngine::DirtyBrushOrigin, QPaintEngine::DirtyClipEnabled, QPaintEngine::DirtyClipPath, QPaintEngine::DirtyClipRegion, QPaintEngine::DirtyHints, QPaintEngine::DirtyOpacity, QPaintEngine::DirtyPen, QPaintEngine::DirtyTransform, QPaintEngineState::isClipEnabled(), Qt::NoBrush, Qt::NoPen, QPaintEngineState::opacity(), QPaintEngineState::pen(), rect, removeTransparencyFromBrush(), QPaintEngineState::renderHints(), QColor::setAlpha(), QPen::setBrush(), QPen::setColor(), QBrush::setStyle(), setupGraphicsState(), Qt::SolidPattern, QPaintEngine::state, QPaintEngineState::state(), QPen::style(), QPaintEngineState::transform(), and Version_A1b.
|
friend |