PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : QTextDocument?



whitefurrows
16-07-2006, 02:35
Hallo,

ich versuche ein QTextDocument mit mehreren Seiten (HTML) für eine Vorschau zu zeichnen, leider wird nur die erste Seite gezeichnet.


void Report::printButton_clicked( const QString& html )
{
QTextDocument doc;
QAbstractTextDocumentLayout::PaintContext ctx;

float w=533; // Seitenbreite
float h=754; // Seitenhöhe

doc.setHtml(html);
// Seitengröße des TextDocument's setzen
doc.setPageSize( QSizeF(w, h) );
//int pageCount=doc.pageCount();
QAbstractTextDocumentLayout *docLayout = doc.documentLayout();

QPainter p;
//for ( int page=1; page<=pageCount; page++){

QPicture pic;
p.begin(&pic); // Zeichnen beginnen

//Seite 1 und Seite 2 sind nur zum Testen, das Ganze soll in der Schleife laufen
//QRectF view(0, (page - 1) * h, w, h);
//ctx.clip = view;

//Seite1
ctx.clip = QRectF(0,0,w,h); // Setzt den context clip auf die erste Seite
layout->draw(&p,ctx);

//Seite2
//ctx.clip = QRectF(0,h,w,h); // Setzt den context clip auf die zweite Seite
//docLayout->draw(&p,ctx);

p.end(); // Zeichnen beendet

//picList.append(pic);
//}
}

Hat jemand dafür eine Erklärung und kann mir sagen wo der Fehler liegt?

Gruß

Whitefurrows