2012-07-09 13 views
5

私はいくつかのサンプルデータをテキストファイルに書きました。私はこのテキストファイルを自分のプリンタに印刷したい。 Qt4を使用してコードを実行する方法を教えてください。Qtでプリンタにテキストファイルを印刷するには?

+2

のためのドキュメントを読むには、[QPrinter](http://doc.trolltech.com/main-snapshot/qprinter.html)を見て、関連文書を持っています。 – Bart

答えて

10

プリンタにテキストを印刷するには、QPrinterオブジェクトとQPainterオブジェクトを使用する必要があります。

次のコードは、ダイアログボックス(QPrintDialog)から選択したプリンタにサンプルテキストを印刷します。

#include <QApplication> 
#include <QPrinter> 
#include <QPrintDialog> 
#include <QPainter> 

int main(int argc, char *argv[]) 
{ 
    QApplication a(argc, argv); 

    QString text = 
      "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do\n" 
      "eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut\n" 
      "enim ad minim veniam, quis nostrud exercitation ullamco laboris\n" 
      "nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor\n" 
      "in reprehenderit in voluptate velit esse cillum dolore eu fugiat\n" 
      "nulla pariatur. Excepteur sint occaecat cupidatat non proident,\n" 
      "sunt in culpa qui officia deserunt mollit anim id est laborum.\n"; 

    QPrinter printer; 

    QPrintDialog *dialog = new QPrintDialog(&printer); 
    dialog->setWindowTitle("Print Document"); 

    if (dialog->exec() != QDialog::Accepted) 
     return -1; 

    QPainter painter; 
    painter.begin(&printer); 

    painter.drawText(100, 100, 500, 500, Qt::AlignLeft|Qt::AlignTop, text); 

    painter.end(); 

    return 0; 
} 

テキストファイルの内容を印刷するためには、コンテンツとのQStringを生成するために、行毎にファイルを解析する必要があります。生成されたQStringは、この例のサンプルテキストのように印刷できます。詳細については

QPrinterQPainter

関連する問題