Handling PDF/ru: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
(Created page with "{{Ambox|text=TODO: Tips for implementing a custom interactive viewer, using Qt and the PDF parsing and rendering libraries mentioned above}} {{LangSwitch}} __TOC__ Category:...")
 
mNo edit summary
 
Line 4: Line 4:
[[Category:Developing_with_Qt]]
[[Category:Developing_with_Qt]]
На этой странице обсуждаются различные доступные варианты работы с [http://en.wikipedia.org/wiki/Portable_Document_Format Portable Document Format (PDF)] [en.wikipedia.org] в вашем приложении Qt. Также ознакомьтесь с общими соображениями, изложенными на странице [[Handling_Document_Formats | Обработка форматов документов]].
На этой странице обсуждаются различные доступные варианты работы с [http://en.wikipedia.org/wiki/Portable_Document_Format Portable Document Format (PDF)] [en.wikipedia.org] в вашем приложении Qt. Также ознакомьтесь с общими соображениями, изложенными на странице [[Handling_Document_Formats | Обработка форматов документов]].
== Чтение/Запись ==
Для создания PDF документов с нуля, вы можете использовать встроенную в Qt поддержку печати, которая также позволяет "печатать" в PDF файлы. Для этого вы можете настроить экземпляр [https://doc.qt.io/qt-5/qprinter.html QPrinter] следующим образом: <code>QPrinter printer(QPrinter::HighResolution); printer.setOutputFormat(QPrinter::PdfFormat); printer.setOutputFileName("path/to/file.pdf");</code> Поскольку QPrinter наследует [https://doc.qt.io/qt-5/qpaintdevice.html QPaintDevice], все, что поддерживает вывод графического содержимого на QPaintDevice (или имеет API для печати с помощью QPrinter), может быть использовано для создания PDF:
* ручное рисование с помощью QPainter
Самый основной (но не обязательно самый простой) способ создания PDF документов с помощью QPrinter - это ручная раскраска содержимого документа с помощью [https://doc.qt.io/qt-5/qtdesigner-arthurplugin-example.html системы рисования Qt]. Просто передайте объект QPrinter в качестве ссылки в конструктор [https://doc.qt.io/qt-5/paintsystem.html QPainter] (или, альтернативно, в [https://doc.qt.io/qt-5/qpainter.html#begin QPainter::begin()] для уже существующего QPainter) и затем выполняйте любые операции рисования с этим экземпляром QPainter, как вы обычно делаете (с периодическими вызовами [http://doc.qt.io/qt-5/qprinter.html#newPage QPrinter::newPage()], когда вы хотите перейти к следующей странице PDF).

Latest revision as of 15:20, 21 August 2022

TODO: Tips for implementing a custom interactive viewer, using Qt and the PDF parsing and rendering libraries mentioned above

En Ar Bg De El Es Fa Fi Fr Hi Hu It Ja Kn Ko Ms Nl Pl Pt Ru Sq Th Tr Uk Zh

На этой странице обсуждаются различные доступные варианты работы с Portable Document Format (PDF) [en.wikipedia.org] в вашем приложении Qt. Также ознакомьтесь с общими соображениями, изложенными на странице Обработка форматов документов.

Чтение/Запись

Для создания PDF документов с нуля, вы можете использовать встроенную в Qt поддержку печати, которая также позволяет "печатать" в PDF файлы. Для этого вы можете настроить экземпляр QPrinter следующим образом:

QPrinter printer(QPrinter::HighResolution); printer.setOutputFormat(QPrinter::PdfFormat); printer.setOutputFileName("path/to/file.pdf");

Поскольку QPrinter наследует QPaintDevice, все, что поддерживает вывод графического содержимого на QPaintDevice (или имеет API для печати с помощью QPrinter), может быть использовано для создания PDF:

  • ручное рисование с помощью QPainter

Самый основной (но не обязательно самый простой) способ создания PDF документов с помощью QPrinter - это ручная раскраска содержимого документа с помощью системы рисования Qt. Просто передайте объект QPrinter в качестве ссылки в конструктор QPainter (или, альтернативно, в QPainter::begin() для уже существующего QPainter) и затем выполняйте любые операции рисования с этим экземпляром QPainter, как вы обычно делаете (с периодическими вызовами QPrinter::newPage(), когда вы хотите перейти к следующей странице PDF).