PdfPrintExtension
Позволяет сохранить веб-страницу в формате pdf. Подробнее…
| Подключение: | #include <pdfprintextension.h> |
Диаграмма наследования для Aurora::WebView::Extensions::PdfPrintExtension:
Пример сохранения страницы в pdf с выбором параметров сохранения:
import QtQuick 2.0
import Sailfish.Silica 1.0
import ru.auroraos.WebView 1.0
import ru.auroraos.WebView.Global 1.0
Page {
id: page
SilicaFlickable {
anchors.fill: parent
contentHeight: column.height
Column {
id: column
anchors.fill: parent
spacing: Theme.paddingLarge
PageHeader {
title: "Сохранить страницу как PDF"
}
// Установка пути к файлу
TextField {
id: filePath
text: StandardPaths.documents + "/page.pdf"
}
Row {
spacing: Theme.paddingLarge
// Установка отступов
Column {
Button {
id: margins
text: "Без отступов"
onClicked: {
pdfPrintExtension.marginType = pdfPrintExtension.marginType === PdfPrintMarginType.PDF_PRINT_MARGIN_NONE ? PdfPrintMarginType.PDF_PRINT_MARGIN_DEFAULT : PdfPrintMarginType.PDF_PRINT_MARGIN_NONE
margins.text = pdfPrintExtension.marginType === PdfPrintMarginType.PDF_PRINT_MARGIN_NONE ? "Без отступов": "Отступы по умолчанию"
}
}
}
Column {
// Выбор ориентации страницы
Button {
id: orientation
text: "Горизонтальная ориентация"
onClicked: {
pdfPrintExtension.landscape = !pdfPrintExtension.landscape
orientation.text = pdfPrintExtension.landscape ? "Горизонтальная ориентация" : "Вертикальная ориентация"
}
}
}
}
// Установка масштаба
TextField {
id: scale
text: ".8"
}
Button {
anchors.horizontalCenter: parent.horizontalCenter
text: "Сохранить как PDF"
onClicked: {
// Установка масштаба
pdfPrintExtension.scale = scale.text
// Сохранение страницы в pdf
pdfPrintExtension.printToPdf(filePath.text)
}
}
Label {
id: output
text: ""
font.pixelSize: 22
}
WebView {
id: webView
PdfPrintExtension {
id: pdfPrintExtension
// Испускается сигнал pdfPrintResultAvailable. Доступны параметры path и result
onPdfPrintResultAvailable: {
output.text = result ? "Результат: PDF сохранён по пути " + filePath.text : "Результат: сохранить PDF не удалось"
}
}
width: parent.width
height: page.height - webView.y
url: "https://ya.ru/"
}
}
}
}
Сигналы
| void | pdfPrintResultAvailable (bool result, QString path) Cигнал испускается, когда результат печати в pdf доступен. Подробнее... |
Сигналы, унаследованные от Aurora::WebView::WebViewExtension
| void | webViewChanged (WebViewItem *oldItem, WebViewItem *newItem) Сигнализирует об изменении родительского элемента QuickItem. Подробнее... |
Публичные функции-члены
| PdfPrintExtension (QQuickItem *parentWebView=Q_NULLPTR) | |
| bool | landscape () consttrue, если установлен ландшафтный режим, и false, если установлен портретный режим. |
| void | setLandscape (bool landscape) Устанавливает значение true для ландшафтного режима или false для портретного режима. Подробнее... |
| bool | printBackground () consttrue, когда фон печатается в PDF. |
| void | setPrintBackground (bool printBackground) Устанавливает значение true для печати фона страницы. Подробнее... |
| double | scale () const Процент масштабирования PDF-файла перед печатью (например, .5 — это 50%). |
| void | setScale (double scale) Процент, на который следует масштабировать PDF-файл перед печатью (например, .5 — это 50%). Подробнее… |
| double | paperWidth () const Ширина выходной бумаги в дюймах. |
| void | setPaperWidth (double paperWidth) Устанавливает ширину выходной бумаги в дюймах. Подробнее... |
| double | paperHeight () const Высота выходной бумаги в дюймах. |
| void | setPaperHeight (double paperHeight) Устанавливает высоту выходной бумаги в дюймах. Подробнее... |
| bool | preferCssPageSize () consttrue, если размер страницы определяется css. |
| void | setPreferCssPageSize (bool preferCssPageSize) Устанавливает значение true, чтобы предпочесть размер страницы, определенный css. Подробнее... |
| int | marginType () const Текущий тип отступа. |
| void | setMarginType (int marginType) Тип отступа. Подробнее... |
| double | marginTop () const Устанавливает верхний отступ, используется только в том случае, если для marginType установлено значение PDF_PRINT_MARGIN_CUSTOM. |
| void | setMarginTop (double marginTop) Верхний отступ в дюймах, используется только в том случае, если для marginType установлено значение PDF_PRINT_MARGIN_CUSTOM. Подробнее... |
| double | marginRight () const Правый отступ в дюймах, используется только в том случае, если для marginType установлено значение PDF_PRINT_MARGIN_CUSTOM. |
| void | setMarginRight (double marginRight) Устанавливает правый отступ, используется только в том случае, если для marginType установлено значение PDF_PRINT_MARGIN_CUSTOM. Подробнее... |
| double | marginBottom () const Нижний отступ в дюймах, используется только в том случае, если для marginType установлено значение PDF_PRINT_MARGIN_CUSTOM. |
| void | setMarginBottom (double marginBottom) Устанавливает нижний отступ, используется только в том случае, если для marginType установлено значение PDF_PRINT_MARGIN_CUSTOM. Подробнее... |
| double | marginLeft () const Левый отступ в дюймах, используется только в том случае, если для marginType установлено значение PDF_PRINT_MARGIN_CUSTOM. |
| void | setMarginLeft (double marginLeft) Устанавливает левый отступ, используется только в том случае, если для marginType установлено значение PDF_PRINT_MARGIN_CUSTOM. Подробнее... |
| QString | pageRanges () const Диапазоны бумаги для сохранения в формате PDF. |
| void | setPageRanges (QString pageRanges) Диапазоны бумаги для сохранения в формате PDF. Подробнее... |
| bool | generateTaggedPdf () consttrue для создания тегированного (доступного для незрячих людей) PDF. |
| void | setGenerateTaggedPdf (bool generateTaggedPdf) Устанавливается значение true для создания тегированного (доступного) PDF. Подробнее... |
| bool | generateDocumentOutline () consttrue при создании структуры документа. |
| void | setGenerateDocumentOutline (bool generateDocumentOutline) Устанавливается значение true, чтобы создать состав документа. Подробнее... |
| Q_INVOKABLE void | printToPdf (const QString &path) Используется для сохранения загруженной веб-страницы в виде pdf-файла. Подробнее.... |
Публичные функции, унаследованные от Aurora::WebView::WebViewExtension
| WebViewExtension (QQuickItem *parent=Q_NULLPTR) |
Свойства
| bool | landscape Флаг для установки ландшафтного или портретного режима. |
| bool | printBackground Флаг, определяющий, печатать ли фоновую графику. |
| double | scale Процент для масштабирования PDF-файла перед печатью. |
| double | paperWidth Ширина выходной бумаги в дюймах. |
| double | paperHeight Высота выходной бумаги в дюймах. |
| bool | preferCssPageSize bool preferCssPageSize. |
| int | marginType margin type: PDF_PRINT_MARGIN_DEFAULT, PDF_PRINT_MARGIN_NONE, PDF_PRINT_MARGIN_CUSTOM |
| double | marginTop Устанавливает верхний отступ, используется только в том случае, если для marginType установлено значение PDF_PRINT_MARGIN_CUSTOM. |
| double | marginRight Правый отступ в дюймах, используется только в том случае, если для marginType установлено значение PDF_PRINT_MARGIN_CUSTOM. |
| double | marginBottom Нижний отступ в дюймах, используется только в том случае, если для marginType установлено значение PDF_PRINT_MARGIN_CUSTOM. |
| double | marginLeft Левый отступ в дюймах, используется только в том случае, если для marginType установлено значение PDF_PRINT_MARGIN_CUSTOM. |
| QString | pageRanges Диапазоны бумаги для сохранения в формате PDF. |
| bool | generateTaggedPdf Флаг для создания тегированного (доступного для незрячих людей) PDF или отключения данного режима. |
| bool | generateDocumentOutline Флаг для создания структуры документа. |
Дополнительные наследуемые члены
Защищённые функции-члены, наследованные от Aurora::WebView::WebViewExtension
| void | syncEnabled (Cef::BrowserExtension *libExtension) |
Защищённые атрибуты, унаследованные от Aurora::WebView::WebViewExtension
| WebViewItem * | m_webView |
Подробное описание
Позволяет сохранить веб-страницу в формате pdf.
Описание функций-членов
pdfPrintResultAvailable
| void Aurora::WebView::Extensions::PdfPrintExtension::pdfPrintResultAvailable (bool result, QString path) | signal |
Cигнал испускается, когда результат печати в формате pdf доступен.
Параметры
| result | true, если веб-страница была успешно сохранена в формате PDF. |
| path | Путь к сохранённому файлу PDF. |
printToPdf()
| Q_INVOKABLE void Aurora::WebView::Extensions::PdfPrintExtension::printToPdf (const QString & path) |
Используется для сохранения загруженной веб-страницы в виде pdf-файла.
Параметры
| path | Путь к файлу, в котором должна быть сохранена веб-страница. |
setGenerateDocumentOutline()
| void Aurora::WebView::Extensions::PdfPrintExtension::setGenerateDocumentOutline (bool generateDocumentOutline) |
Устанавливается значение true для создания структуры документа.
Параметры
| generateDocumentOutline | Значение флага. |
setGenerateTaggedPdf()
| void Aurora::WebView::Extensions::PdfPrintExtension::setGenerateTaggedPdf (bool generateTaggedPdf) |
Устанавливается значение true для создания тегированного (доступного) PDF.
Параметры
| generateTaggedPdf | Значение флага. |
setLandscape()
| void Aurora::WebView::Extensions::PdfPrintExtension::setLandscape (bool landscape) |
Устанавливает значение true для ландшафтного режима или false для портретного режима.
Параметры
| landscape | Значение флага. |
setMarginBottom()
| void Aurora::WebView::Extensions::PdfPrintExtension::setMarginBottom (double marginBottom) |
Устанавливает нижний отступ, используется только в том случае, если для параметра marginType установлено значение PDF_PRINT_MARGIN_CUSTOM.
Параметры
| marginBottom | Значение нижнего отступа в дюймах. |
setMarginLeft()
| void Aurora::WebView::Extensions::PdfPrintExtension::setMarginLeft (double marginLeft) |
Устанавливает левый отступ, используется только в том случае, если для параметра marginType установлено значение PDF_PRINT_MARGIN_CUSTOM.
Параметры
| marginLeft | Значение левого отступа в дюймах. |
setMarginRight()
| void Aurora::WebView::Extensions::PdfPrintExtension::setMarginRight (double marginRight) |
Устанавливает правый отступ, используется только в том случае, если для параметра marginType установлено значение PDF_PRINT_MARGIN_CUSTOM.
Параметры
| marginRight | Значение правого отступа в дюймах. |
setMarginTop()
| void Aurora::WebView::Extensions::PdfPrintExtension::setMarginTop (double marginTop) |
Устанавливает верхний отступ, используется только в том случае, если для marginType установлено значение PDF_PRINT_MARGIN_CUSTOM.
Параметры
| marginTop | Значение верхнего отступа в дюймах. |
setMarginType()
| void Aurora::WebView::Extensions::PdfPrintExtension::setMarginType (int marginType) |
Устанавливает отступ.
Параметры
| marginType | Тип отступа: PDF_PRINT_MARGIN_DEFAULT, PDF_PRINT_MARGIN_NONE или PDF_PRINT_MARGIN_CUSTOM. |
setPageRanges()
| void Aurora::WebView::Extensions::PdfPrintExtension::setPageRanges (QString pageRanges) |
Диапазоны бумаги для печати.
Параметры
| pageRanges | Диапазоны бумаги для печати, например, «1-5, 8, 11-13». |
setPaperHeight()
| void Aurora::WebView::Extensions::PdfPrintExtension::setPaperHeight (double paperHeight) |
Устанавливает высоту выходной бумаги в дюймах.
Параметры
| paperHeight | Значение высоты бумаги. |
setPaperWidth()
| void Aurora::WebView::Extensions::PdfPrintExtension::setPaperWidth (double paperWidth) |
Устанавливает ширину выходной бумаги в дюймах.
Параметры
| paperWidth | Значение ширины бумаги. |
setPreferCssPageSize()
| void Aurora::WebView::Extensions::PdfPrintExtension::setPreferCssPageSize (bool preferCssPageSize) |
Устанавливает значение true, чтобы предпочесть размер страницы, определённый css.
Параметры
| preferCssPageSize | Значение флага. |
setPrintBackground()
| void Aurora::WebView::Extensions::PdfPrintExtension::setPrintBackground (bool printBackground) |
Необходимо установить значение true, чтобы напечатать фон.
Параметры
| printBackground | Значение флага. |
setScale()
| void Aurora::WebView::Extensions::PdfPrintExtension::setScale (double scale) |
Процент, на который следует масштабировать PDF-файл перед печатью (например, .5 — это 50%).
Параметры
| scale | Значение масштаба, если это значение <= 0,0, то по умолчанию будет использоваться значение 1,0. |