[Bug ]PDF im Querformat drucken

Alles rund um die Programmierung mit Qt
Antworten
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

[Bug ]PDF im Querformat drucken

Beitrag von BartSimpson »

Hallo, ich würde gerne ein PDF im Querformat erstellen. Doch Qt liefert immer nur Hochformat. Ist das ein Bug oder mache ich was falsch?
Hier der Kode:

Code: Alles auswählen

QPrinter Drucker(QPrinter::HighResolution);
Drucker.setOrientation(QPrinter::Landscape);
Drucker.setPageSize(QPrinter::A4);
Drucker.setCreator("Lagerverwaltung");
Drucker.setDocName(trUtf8("Artikelübersicht"));
Drucker.setFontEmbeddingEnabled(true);
Drucker.setOutputFormat(QPrinter::PdfFormat);
Drucker.setOutputFileName("test.pdf");
QPainter Zeichenflaeche;
Zeichenflaeche.begin(&Drucker);
qDebug()<<"druckgröße:"<<Zeichenflaeche.viewport().width()<<Zeichenflaeche.viewport().height();  
Zeichenflaeche.end();
Als ausgabe erhalte ich:
9117 13233 was ja Hochformat währe:(
Zuletzt geändert von BartSimpson am 30. Mai 2006 13:04, insgesamt 1-mal geändert.
patrik08
Beiträge: 746
Registriert: 27. Februar 2006 10:48
Wohnort: DE Freiburg

Beitrag von patrik08 »

Klar geht dass mit QT4 und ++ einige tool

diese datei sample sample.pdf

Code: Alles auswählen

http://svn.sourceforge.net/viewcvs.cgi/*checkout*/qtexcel-xslt/qexcel/installer/sample_import/sample.pdf?rev=1
hat qt4 gemacht sogar mit dinamisch datum millimeter genau ecc....

suche pdf drucken & xslt in diesem forum ... sowie alle bug meldungen ueber pdf bei trolltech..

oder am schnellsten ... um zeit zu sparen..
der source ist bei meinem projekt...

http://sourceforge.net/projects/qtexcel-xslt/
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

Beitrag von BartSimpson »

Laut change log soll es seit Version 4.1.1 gehen. Ohne extra tools!!
patrik08
Beiträge: 746
Registriert: 27. Februar 2006 10:48
Wohnort: DE Freiburg

Beitrag von patrik08 »

zur zeit arbeite ich mit eine snaps tagliche commits. 4.1.3

und printer.setOrientation(QPrinter::Landscape); ist nur platzhalter text.... :?

Mit xslt kann man ins pdf gehen , vektor , rtf, html , xml, und noch andere formate die ich nicht kenne...
Source kann vektor svg 7-8 bildformate text und gut sql tabellen...


im php-mag letzte woche....
ist auch ein ausfuerlicher artikel von xsl-fo erschinen auf
http://php-mag.de/itr/ausgaben/psecom,i ... id,60.html

XSL:FO – eine Alternative zu FPDF
Vorstellung von XSL:FO und Vergleich mit FPDF
gibt es seit 2003
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

Beitrag von BartSimpson »

Dann werde ich mal ein Bugreport schreiben. Denn wenn laut changelog gehen soll, dann sollte es auch gehen:)
patrik08
Beiträge: 746
Registriert: 27. Februar 2006 10:48
Wohnort: DE Freiburg

Beitrag von patrik08 »

Bitte ...

is aber bereits drinn.... als Pending
http://www.trolltech.com/developer/task ... y&id=99066
patrik08
Beiträge: 746
Registriert: 27. Februar 2006 10:48
Wohnort: DE Freiburg

Beitrag von patrik08 »

Ich bedine meine kunden weiterhin automatisch.... pdf...

wenn mehr als 8 kolonnen im report/tabellen dan landscape else vertical portrait :P

xsl-fo code

Code: Alles auswählen

<!-- landscape or vertical? -->
<xsl:choose>
  <xsl:when test="$bigcolumncount > 8">
   <!-- landscape -->
    <fo:layout-master-set>
   <fo:simple-page-master master-name="simple" page-height="21cm" page-width="30cm"
        margin-top="1cm" margin-bottom="0.3cm" margin-left="1.2cm" margin-right="1.2cm">
      <fo:region-body margin-bottom="2cm"/>
      <fo:region-after extent="16pt"/>
   </fo:simple-page-master>
 </fo:layout-master-set>
  </xsl:when>
  <xsl:otherwise>
  <!-- vertical -->
    <fo:layout-master-set>
   <fo:simple-page-master master-name="simple" page-height="29.7cm" page-width="21cm"
        margin-top="1cm" margin-bottom="0.3cm" margin-left="1.4cm" margin-right="1.2cm">
      <fo:region-body margin-bottom="2cm"/>
      <fo:region-after extent="16pt"/>
   </fo:simple-page-master>
 </fo:layout-master-set>
  </xsl:otherwise>
 </xsl:choose>
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

Beitrag von BartSimpson »

Das ist ein neuer Bug. Aber es gibt ein Workaround von TT:
Hier deren Antwort:
Thanks for your report! I can reproduce the problem but also found out
that this happens when you set the orientation prior to the output
format. If you set the output format first your code should work.

I have forwarded this to our development team. You can monitor the
progress of this task by searching for 116742 in the task tracker:
Antworten