QPdfWriter 類

QPdfWriter 類是生成可用作描繪設備的 PDF 的類。 更多...

頭: #include <QPdfWriter>
qmake: QT += gui
繼承: QObject and QPagedPaintDevice

公共函數

QPdfWriter (QIODevice * device )
QPdfWriter (const QString & filename )
virtual ~QPdfWriter ()
void addFileAttachment (const QString & fileName , const QByteArray & data , const QString & mimeType = QString())
QString creator () const
QByteArray documentXmpMetadata () const
QPageLayout pageLayout () const
QPagedPaintDevice::PdfVersion pdfVersion () const
int resolution () const
void setCreator (const QString & creator )
void setDocumentXmpMetadata (const QByteArray & xmpMetadata )
bool setPageLayout (const QPageLayout & newPageLayout )
bool setPageMargins (const QMarginsF & margins )
bool setPageMargins (const QMarginsF & margins , QPageLayout::Unit units )
bool setPageOrientation (QPageLayout::Orientation orientation )
bool setPageSize (const QPageSize & pageSize )
void setPdfVersion (QPagedPaintDevice::PdfVersion version )
void setResolution (int resolution )
void setTitle (const QString & title )
QString title () const

重實現公共函數

virtual bool newPage () override
(obsolete) virtual void setMargins (const QPagedPaintDevice::Margins & m ) override
(obsolete) virtual void setPageSize (QPagedPaintDevice::PageSize size ) override
(obsolete) virtual void setPageSizeMM (const QSizeF & size ) override

重實現保護函數

virtual QPaintEngine * paintEngine () const override

詳細描述

QPdfWriter 從一係列繪製命令生成 PDF,使用 QPainter newPage () 方法可用於創建多個頁麵。

成員函數文檔編製

QPdfWriter:: QPdfWriter ( QIODevice * device )

構造 PDF 寫入器,將 PDF 寫入到 device .

QPdfWriter:: QPdfWriter (const QString & filename )

構造 PDF 寫入器,將 PDF 寫入到 filename .

[虛擬] QPdfWriter:: ~QPdfWriter ()

銷毀 PDF 寫入器。

void QPdfWriter:: addFileAttachment (const QString & fileName , const QByteArray & data , const QString & mimeType = QString())

添加 fileName 附件到 PDF 采用 (可選) mimeType . data 包含要嵌入到 PDF 文件中的原生文件數據。

該函數在 Qt 5.15 引入。

QString QPdfWriter:: creator () const

返迴文檔創建者。

另請參閱 setCreator ().

QByteArray QPdfWriter:: documentXmpMetadata () const

獲取文檔元數據,因為它被提供當調用 setDocumentXmpMetadata 。它不會返迴默認元數據。

該函數在 Qt 5.15 引入。

另請參閱 setDocumentXmpMetadata ().

[override virtual] bool QPdfWriter:: newPage ()

重實現: QPagedPaintDevice::newPage ().

QPageLayout QPdfWriter:: pageLayout () const

返迴當前頁麵的布局。使用此方法以訪問當前 QPageSize , QPageLayout::Orientation , QMarginsF ,fullRect() 和 paintRect()。

注意:不可以在返迴對象上使用 setter,必須單獨調用 QPdfWriter 方法或使用 setPageLayout ().

該函數在 Qt 5.3 引入。

另請參閱 setPageLayout (), setPageSize (), setPageOrientation (),和 setPageMargins ().

[override virtual protected] QPaintEngine *QPdfWriter:: paintEngine () const

重實現: QPaintDevice::paintEngine () const.

QPagedPaintDevice::PdfVersion QPdfWriter:: pdfVersion () const

返迴此寫入器的 PDF 版本。默認為 PdfVersion_1_4 .

該函數在 Qt 5.10 引入。

另請參閱 setPdfVersion ().

int QPdfWriter:: resolution () const

返迴 PDF 分辨率 (以 DPI 為單位)。

該函數在 Qt 5.3 引入。

另請參閱 setResolution ().

void QPdfWriter:: setCreator (const QString & creator )

將文檔創建者設為 creator .

另請參閱 creator ().

void QPdfWriter:: setDocumentXmpMetadata (const QByteArray & xmpMetadata )

設置文檔元數據。此元數據不受影響通過 setTitle / setCreator 方法,因此,取決於用戶是否要保持一緻。 xmpMetadata 包含可嵌入 PDF 文件中的 XML 格式元數據。

該函數在 Qt 5.15 引入。

另請參閱 documentXmpMetadata ().

bool QPdfWriter:: setPageLayout (const QPageLayout & newPageLayout )

將 PDF 頁麵布局設為 newPageLayout .

應先調用這當調用 QPainter::begin (),或立即調用在調用 newPage () 以將新頁麵布局應用到新頁麵之前。不應調用任何描繪方法,在調用 setPageLayout() 和 newPage () 之間因為可能使用瞭錯誤的描繪規格。

返迴 true 若頁麵布局被成功設為 newPageLayout .

該函數在 Qt 5.3 引入。

另請參閱 pageLayout ().

bool QPdfWriter:: setPageMargins (const QMarginsF & margins )

設置 PDF 頁麵 margins 在當前頁麵布局單位。

應先調用這當調用 QPainter::begin (),或立即調用在調用 newPage () 以將新邊距應用到新頁麵之前。不應調用任何描繪方法,在調用 setPageMargins() 和 newPage () 之間因為可能使用瞭錯誤的描繪規格。

要獲取當前頁麵邊距,使用 pageLayout ().margins().

返迴 true 若頁麵邊距被成功設為 margins .

該函數在 Qt 5.3 引入。

另請參閱 pageLayout ().

bool QPdfWriter:: setPageMargins (const QMarginsF & margins , QPageLayout::Unit units )

設置 PDF 頁麵 margins 定義以給定 units .

應先調用這當調用 QPainter::begin (),或立即調用在調用 newPage () 以將新邊距應用到新頁麵之前。不應調用任何描繪方法,在調用 setPageMargins() 和 newPage () 之間因為可能使用瞭錯誤的描繪規格。

要獲取當前頁麵邊距,使用 pageLayout ().margins().

返迴 true 若頁麵邊距被成功設為 margins .

該函數在 Qt 5.3 引入。

另請參閱 pageLayout ().

bool QPdfWriter:: setPageOrientation ( QPageLayout::Orientation orientation )

設置 PDF 頁麵 orientation .

頁麵取嚮用於定義頁麵大小的取嚮,當獲取頁麵矩形時。

應先調用這當調用 QPainter::begin (),或立即調用在調用 newPage () 以將新取嚮應用到新頁麵之前。不應調用任何描繪方法,在調用 setPageOrientation() 和 newPage () 之間因為可能使用瞭錯誤的描繪規格。

要獲取當前 QPageLayout::Orientation 使用 pageLayout ().orientation().

返迴 true 若頁麵取嚮被成功設為 orientation .

該函數在 Qt 5.3 引入。

另請參閱 pageLayout ().

bool QPdfWriter:: setPageSize (const QPageSize & pageSize )

將 PDF 頁麵尺寸設為 pageSize .

要獲取當前 QPageSize 使用 pageLayout (). pageSize ().

應先調用這當調用 QPainter::begin (),或立即調用在調用 newPage () 以將新頁麵尺寸應用到新頁麵之前。不應調用任何描繪方法,在調用 setPageSize() 和 newPage () 之間因為可能使用瞭錯誤的描繪規格。

返迴 true 若頁麵大小被成功設為 pageSize .

該函數在 Qt 5.3 引入。

另請參閱 pageLayout ().

void QPdfWriter:: setPdfVersion ( QPagedPaintDevice::PdfVersion version )

將此寫入器的 PDF 版本設為 version .

version 與目前設置的值相同,則不會有任何改變。

該函數在 Qt 5.10 引入。

另請參閱 pdfVersion ().

void QPdfWriter:: setResolution ( int resolution )

設置 PDF resolution 以 DPI 為單位。

此設置影響返迴坐標係,例如 QPainter::viewport ().

該函數在 Qt 5.3 引入。

另請參閱 resolution ().

void QPdfWriter:: setTitle (const QString & title )

將正在創建的文檔的標題設為 title .

另請參閱 title ().

QString QPdfWriter:: title () const

返迴文檔標題。

另請參閱 setTitle ().