Документация
ОС Аврора 5.2.0

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 () const
true, если установлен ландшафтный режим, и false, если установлен портретный режим.
void setLandscape (bool landscape)
Устанавливает значение true для ландшафтного режима или false для портретного режима. Подробнее...
bool printBackground () const
true, когда фон печатается в 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 () const
true, если размер страницы определяется 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 () const
true для создания тегированного (доступного для незрячих людей) PDF.
void setGenerateTaggedPdf (bool generateTaggedPdf)
Устанавливается значение true для создания тегированного (доступного) PDF. Подробнее...
bool generateDocumentOutline () const
true при создании структуры документа.
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.

Мы используем cookies для персонализации сайта и его более удобного использования. Вы можете запретить cookies в настройках браузера.

Пожалуйста ознакомьтесь с политикой использования cookies.