Handling PDF/ru

From Qt Wiki
Jump to navigation Jump to search
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).