summaryrefslogtreecommitdiffstats
path: root/src/gui/painting/qprintengine_pdf_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/painting/qprintengine_pdf_p.h')
-rw-r--r--src/gui/painting/qprintengine_pdf_p.h195
1 files changed, 0 insertions, 195 deletions
diff --git a/src/gui/painting/qprintengine_pdf_p.h b/src/gui/painting/qprintengine_pdf_p.h
deleted file mode 100644
index ee77e1599c..0000000000
--- a/src/gui/painting/qprintengine_pdf_p.h
+++ /dev/null
@@ -1,195 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the QtGui module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** GNU Lesser General Public License Usage
-** This file may be used under the terms of the GNU Lesser General Public
-** License version 2.1 as published by the Free Software Foundation and
-** appearing in the file LICENSE.LGPL included in the packaging of this
-** file. Please review the following information to ensure the GNU Lesser
-** General Public License version 2.1 requirements will be met:
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License version 3.0 as published by the Free Software Foundation
-** and appearing in the file LICENSE.GPL included in the packaging of this
-** file. Please review the following information to ensure the GNU General
-** Public License version 3.0 requirements will be met:
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** Other Usage
-** Alternatively, this file may be used in accordance with the terms and
-** conditions contained in a signed written agreement between you and Nokia.
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef QPRINTENGINE_PDF_P_H
-#define QPRINTENGINE_PDF_P_H
-
-//
-// W A R N I N G
-// -------------
-//
-// This file is not part of the Qt API. It exists purely as an
-// implementation detail. This header file may change from version to
-// version without notice, or even be removed.
-//
-// We mean it.
-//
-
-#include "QtGui/qprintengine.h"
-
-#ifndef QT_NO_PRINTER
-#include "QtCore/qmap.h"
-#include "QtGui/qmatrix.h"
-#include "QtCore/qstring.h"
-#include "QtCore/qvector.h"
-#include "QtGui/qpaintengine.h"
-#include "QtGui/qpainterpath.h"
-#include "QtCore/qdatastream.h"
-
-#include "private/qfontengine_p.h"
-#include "private/qpdf_p.h"
-#include "private/qpaintengine_p.h"
-
-QT_BEGIN_NAMESPACE
-
-// #define USE_NATIVE_GRADIENTS
-
-class QImage;
-class QDataStream;
-class QPen;
-class QPointF;
-class QRegion;
-class QFile;
-class QPdfEngine;
-
-class QPdfEnginePrivate;
-
-class QPdfEngine : public QPdfBaseEngine
-{
- Q_DECLARE_PRIVATE(QPdfEngine)
-public:
- QPdfEngine(QPrinter::PrinterMode m);
- virtual ~QPdfEngine();
-
- // reimplementations QPaintEngine
- bool begin(QPaintDevice *pdev);
- bool end();
- void drawPixmap (const QRectF & rectangle, const QPixmap & pixmap, const QRectF & sr);
- void drawImage(const QRectF &r, const QImage &pm, const QRectF &sr,
- Qt::ImageConversionFlags flags = Qt::AutoColor);
- void drawTiledPixmap (const QRectF & rectangle, const QPixmap & pixmap, const QPointF & point);
-
- Type type() const;
- // end reimplementations QPaintEngine
-
- // reimplementations QPrintEngine
- bool abort() {return false;}
- bool newPage();
- QPrinter::PrinterState printerState() const {return state;}
- // end reimplementations QPrintEngine
-
- void setBrush();
-
- // ### unused, should have something for this in QPrintEngine
- void setAuthor(const QString &author);
- QString author() const;
-
- void setDevice(QIODevice* dev);
-
-private:
- Q_DISABLE_COPY(QPdfEngine)
-
- QPrinter::PrinterState state;
-};
-
-class QPdfEnginePrivate : public QPdfBaseEnginePrivate
-{
- Q_DECLARE_PUBLIC(QPdfEngine)
-public:
- QPdfEnginePrivate(QPrinter::PrinterMode m);
- ~QPdfEnginePrivate();
-
- void newPage();
-
- int width() const {
- QRect r = paperRect();
- return qRound(r.width()*72./resolution);
- }
- int height() const {
- QRect r = paperRect();
- return qRound(r.height()*72./resolution);
- }
-
- void writeHeader();
- void writeTail();
-
- int addImage(const QImage &image, bool *bitmap, qint64 serial_no);
- int addConstantAlphaObject(int brushAlpha, int penAlpha = 255);
- int addBrushPattern(const QTransform &matrix, bool *specifyColor, int *gStateObject);
-
- void drawTextItem(const QPointF &p, const QTextItemInt &ti);
-
- QTransform pageMatrix() const;
-
-private:
- Q_DISABLE_COPY(QPdfEnginePrivate)
-
-#ifdef USE_NATIVE_GRADIENTS
- int gradientBrush(const QBrush &b, const QMatrix &matrix, int *gStateObject);
-#endif
-
- void writeInfo();
- void writePageRoot();
- void writeFonts();
- void embedFont(QFontSubset *font);
-
- QVector<int> xrefPositions;
- QDataStream* stream;
- int streampos;
-
- int writeImage(const QByteArray &data, int width, int height, int depth,
- int maskObject, int softMaskObject, bool dct = false);
- void writePage();
-
- int addXrefEntry(int object, bool printostr = true);
- void printString(const QString &string);
- void xprintf(const char* fmt, ...);
- inline void write(const QByteArray &data) {
- stream->writeRawData(data.constData(), data.size());
- streampos += data.size();
- }
-
- int writeCompressed(const char *src, int len);
- inline int writeCompressed(const QByteArray &data) { return writeCompressed(data.constData(), data.length()); }
- int writeCompressed(QIODevice *dev);
-
- // various PDF objects
- int pageRoot, catalog, info, graphicsState, patternColorSpace;
- QVector<uint> pages;
- QHash<qint64, uint> imageCache;
- QHash<QPair<uint, uint>, uint > alphaCache;
-};
-
-QT_END_NAMESPACE
-
-#endif // QT_NO_PRINTER
-
-#endif // QPRINTENGINE_PDF_P_H