2014-07-12 112 views
1

我將頁面大小設置爲QPdfWriter,但似乎請求的大小僅適用於使用newPage()創建的頁面,該頁面不適用於第一頁。有沒有辦法改變第一頁的大小,還是Qt中的錯誤?QPdfWriter和頁面大小

Qt版本:5.2.1。

這裏有一小段代碼來重現問題:

void MainWindow::on_pushButton_clicked() 
{ 
    QFile f("/tmp/test.pdf"); 
    f.open(QIODevice::WriteOnly); 
    QPdfWriter* writer = new QPdfWriter(&f); 
    QPainter* p = new QPainter(writer); 
    writer->setPageSize(QPagedPaintDevice::A5); 
    p->drawText(QRect(100, 100, 2000, 200), "test"); 
    writer->newPage(); 
    p->drawText(QRect(100, 100, 2000, 200), "test"); 
    delete p; 
    delete writer; 
    f.close(); 
} 

創建的PDF文件在A4幅面的第一頁和第二次在A5格式,但他們都應該是A5格式。

回答

1

這是Qt 5.2.1中的一個錯誤。我剛剛嘗試過5.3.0,它能正常工作。

+0

從5.3開始,這似乎停止工作。 –