2010-09-03 2 views
2

Мне нужно сделать такой инструмент, как Snagit, и сделать снимок выбранной области компонента. Я ищу, как сделать этот инструмент в Qt.Как извлечь выбранную область компонента gui в PDF в QT

Сначала я предпочитаю использовать родную библиотеку Qt, но если нет библиотеки, которая заполняет это требование, любой хороший C++ libray может быть принят для меня.

Любая помощь будет оценена по достоинству.

Благодаря

ответ

4

Я не уверен, чтобы понять, что именно вы хотите. Предполагаю, вы хотите снять снимок экрана? а затем поместите это изображение в документ PDF.

Чтобы сделать скриншот с Qt, посмотрите на это:

http://doc.qt.nokia.com/4.0/widgets-screenshot.html

Это покажет вам, как сделать скриншот (используя QDesktopWidget) и получить QPixmap.

Затем вы можете отобразить это QPixmap в QTextDocument (см. QTextDocument::addResource) и распечатать этот документ в формате PDF. Что-то вроде этого:

QPrinter MyPrinter(QPrinter::HighResolution); 
MyPrinter.setOutputFormat(QPrinter::PdfFormat); 
MyPrinter.setOutputFileName("test.pdf"); 
MyPrinter.setPageSize(QPrinter::Letter); 
MyPrinter.setColorMode(QPrinter::GrayScale); 
MyPrinter.setOrientation(QPrinter::Landscape); 

MyTextDocument.print(&MyPrinter); 
Смежные вопросы