Windows Azure Cloud Storage ermöglicht es Ihnen bereits ab 0,10€ pro GB/Monat die Vorteile der Cloud zu nutzen.
Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.de  
   
Advanced Developers Conference     
Bücher-Shop mit Amazon (Buchkategorien)C++ : Referenzen zu C++ : C++ Builder : Visual C++ : C# : Java : Spieleprogrammierung : Systemprogrammierung Linux : Software-Entwicklung : .NET : Compilertechnik : Algorithmen & Datenstrukturen : Objektorientierung : Entwurfsmuster : UML : eXtreme Programming : Scrum : Projektmanagement : Software-Testing : Datenbanken : Tom DeMarco : Dilbert : User Friendly
C/C++ Forum :: Andere GUIs - Qt, GTK+, wxWidgets ::  Printer function  
Gehen Sie zu Seite Zurück  1, 2
  Zeige alle Beiträge auf einer Seite
Auf Beitrag antworten
Autor Nachricht
baba is awesome
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 14
Beitrag baba is awesome Mitglied 13:10:44 09.02.2010   Titel:              Zitieren

Athar ich liebe Provokante menschen ;)

Auf der Seite war ich auch als ersten aber das "verdammte" draw.Image muss ich übersehenhaben. Ich versuche damit noch einmal Danke :).

Und auch wenn es nman wohl ncihtmehr liest lass ich die bumps;)

_________________
Sup means Ownd !
baba is awesome
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 14
Beitrag baba is awesome Mitglied 14:18:53 09.02.2010   Titel:              Zitieren

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
QPrinter printer(QPrinter::HighResolution);

    QPrintDialog *dialog = new QPrintDialog(&printer, this);
    dialog->setWindowTitle(tr("Print Document"));
    if (dialog->exec() != QDialog::Accepted)
        return;


    QPainter painter;
    painter.begin(&printer);
    int lastPage=1,numberOfPages=1;
    for (int page = 1; page < numberOfPages; ++page) {

        QRectF target(10.0, 20.0, 80.0, 60.0);
        QRectF source(0.0, 0.0, 70.0, 40.0);
        QImage image(lastfilename);

        painter.drawImage(target, image, source);

        if (page != lastPage)
            printer.newPage();
    }
    painter.end();
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
QPrinter printer(QPrinter::HighResolution);

QPrintDialog *dialog = new QPrintDialog(&printer, this);
dialog->setWindowTitle(tr("Print Document"));
if (dialog->exec() != QDialog::Accepted)
return;


QPainter painter;
painter.begin(&printer);
int lastPage=1,numberOfPages=1;
for (int page = 1; page < numberOfPages; ++page) {

QRectF target(10.0, 20.0, 80.0, 60.0);
QRectF source(0.0, 0.0, 70.0, 40.0);
QImage image(lastfilename);

painter.drawImage(target, image, source);

if (page != lastPage)
printer.newPage();
}
painter.end();
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
QPrinter printer(QPrinter::HighResolution);

    QPrintDialog *dialog = new QPrintDialog(&printer, this);
    dialog->setWindowTitle(tr("Print Document"));
    if (dialog->exec() != QDialog::Accepted)
        return;


    QPainter painter;
    painter.begin(&printer);
    int lastPage=1,numberOfPages=1;
    for (int page = 1; page < numberOfPages; ++page) {

        QRectF target(10.0, 20.0, 80.0, 60.0);
        QRectF source(0.0, 0.0, 70.0, 40.0);
        QImage image(lastfilename);

        painter.drawImage(target, image, source);

        if (page != lastPage)
            printer.newPage();
    }
    painter.end();


Okay das ist nun meine Funktion die es schafft ein PDF zu erstellen allerdings füllt sie es nicht :( Kann mir hier nocheinmal jemand unter die Arme greifen ?

_________________
Sup means Ownd !
l'abra d'or
Mitglied

Benutzerprofil
Anmeldungsdatum: 26.12.2009
Beiträge: 1201
Beitrag l'abra d'or Mitglied 14:34:28 09.02.2010   Titel:              Zitieren

C/C++ Code:
int lastPage=1, numberOfPages=1;
for (int page = 1; page < numberOfPages; ++page) {
C/C++ Code:
int lastPage=1, numberOfPages=1;
for (int page = 1; page < numberOfPages; ++page) {
C/C++ Code:
int lastPage=1, numberOfPages=1;
for (int page = 1; page < numberOfPages; ++page) {

Na, was glaubst du passiert da? Richtig, gar nix...
Du hast 3 Variablen, schau dir das mal GENAU an, sollte klar sein wo der Fehler ist.
baba is awesome
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 14
Beitrag baba is awesome Mitglied 14:39:33 09.02.2010   Titel:              Zitieren

Eig dürfte der Fehler an dem Punkt nicht liegen weil es genau macht was ich möchte ;)

Und ja ich habe es extra nochmal überprüft. Er läuft genau einmal durch. Habe schon überlegt for zu löschen weil mir die Statischen Werte reichen. Da ich nur eine einzelnde Bilddatei drucken mag.

Mfg Baba

_________________
Sup means Ownd !
Tyrdal
Mitglied

Benutzerprofil
Anmeldungsdatum: 20.09.2007
Beiträge: 440
Beitrag Tyrdal Mitglied 14:42:07 09.02.2010   Titel:              Zitieren

Das kann gar nicht laufen, da 1 nicht kleiner als 1 ist.
baba is awesome
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 14
Beitrag baba is awesome Mitglied 14:44:49 09.02.2010   Titel:              Zitieren

Habe ich mir auch gedacht. Aber es läuft nunmal. Und mit page=0 läuft es doppelt von daher...

_________________
Sup means Ownd !
nman
Moderator

Benutzerprofil
Anmeldungsdatum: 19.02.2002
Beiträge: 12896
Beitrag nman Moderator 14:48:21 09.02.2010   Titel:              Zitieren

Du musst irgendwo Mist gebaut haben. Diese for-Schleife kann so nicht funktionieren. 1 ist einfach nicht kleiner als 1. Falls Du per Debugger da durch gehst, verstehst Du wohl nicht richtig, was der macht.

Lass Dir mal innerhalb der Schleife irgendwas ausgeben, dann siehst Du, dass da nicht durchgegangen wird.

_________________
…but tuesday's just as bad.
baba is awesome
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 14
Beitrag baba is awesome Mitglied 15:35:44 09.02.2010   Titel:              Zitieren

Mhh wir haben den Fehler. Dieser wird behoben und dann meld ich mich noch einmal

_________________
Sup means Ownd !
baba is awesome
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 14
Beitrag baba is awesome Mitglied 09:14:16 10.02.2010   Titel:              Zitieren

Okay neuer Lagebericht =)

Wir haben das problem jetzt eliminiert und ich den Code vereinfacht. Allerdings fehlt mir ein entscheidener Punkt und zwar muss ich wohl die stelle übersehen haben an der ich den Befehl zum Drucker übergebe. Aber als ich in anderen Funktionen, die funktionieren sollten, ist mir aufgefallen das mir nix auffällt -.-

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    QPrinter printer(QPrinter::HighResolution);  //Initialisierung des Printers

    QPrintDialog *dialog = new QPrintDialog(&printer, this); //Aufruf des Printdialogs zum setzen einiger Informationen
    dialog->setWindowTitle(tr("Print Document"));//Namensänderung eig useless :)
    if (dialog->exec() != QDialog::Accepted) //Abbruch Button
        return; //Abbruch Bedingung in dem fall Beendigung der Funktion


    QPainter painter;                           // Der "Zeichner" der das Bild für den Drucker malt
    painter.begin(&printer); //Anfang

        QRectF target(10.0, 20.0, 80.0, 60.0);        
        QRectF source(0.0, 0.0, 70.0, 40.0);
        QImage image(lastfilename);

        painter.drawImage(target, image, source); //Setzen der größe der Seite des Bildes und die Information der Bilddatei


    painter.end(); //ende
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
QPrinter printer(QPrinter::HighResolution); //Initialisierung des Printers

QPrintDialog *dialog = new QPrintDialog(&printer, this); //Aufruf des Printdialogs zum setzen einiger Informationen
dialog->setWindowTitle(tr("Print Document"));//Namensänderung eig useless :)
if (dialog->exec() != QDialog::Accepted) //Abbruch Button
return; //Abbruch Bedingung in dem fall Beendigung der Funktion


QPainter painter; // Der "Zeichner" der das Bild für den Drucker malt
painter.begin(&printer); //Anfang

QRectF target(10.0, 20.0, 80.0, 60.0);
QRectF source(0.0, 0.0, 70.0, 40.0);
QImage image(lastfilename);

painter.drawImage(target, image, source); //Setzen der größe der Seite des Bildes und die Information der Bilddatei


painter.end(); //ende
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    QPrinter printer(QPrinter::HighResolution);  //Initialisierung des Printers

    QPrintDialog *dialog = new QPrintDialog(&printer, this); //Aufruf des Printdialogs zum setzen einiger Informationen
    dialog->setWindowTitle(tr("Print Document"));//Namensänderung eig useless :)
    if (dialog->exec() != QDialog::Accepted) //Abbruch Button
        return; //Abbruch Bedingung in dem fall Beendigung der Funktion


    QPainter painter;                           // Der "Zeichner" der das Bild für den Drucker malt
    painter.begin(&printer); //Anfang

        QRectF target(10.0, 20.0, 80.0, 60.0);        
        QRectF source(0.0, 0.0, 70.0, 40.0);
        QImage image(lastfilename);

        painter.drawImage(target, image, source); //Setzen der größe der Seite des Bildes und die Information der Bilddatei


    painter.end(); //ende


So habe jetzt auch einmal Comments angefügt um zu zeigen das ich mich damit auseinander gesetzt habe. Trotzdem kommeich nicht weiter.

Nun gut ich hoffe auf Antwort und google solange weiter.

Mfg marvin#

/edit

Hier habe ich noch etwas gefunden

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
   1.
      QTextDocument* document = textEdit->document();
   2.
      QPrinter printer;
   3.
       
   4.
      QPrintDialog* dialog = new QPrintDialog(&printer, this);
   5.
      if (dialog->exec() == QDialog::Accepted)
   6.
      {
   7.
      document->print(&printer);
   8.
      }
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
1.
QTextDocument* document = textEdit->document();
2.
QPrinter printer;
3.

4.
QPrintDialog* dialog = new QPrintDialog(&printer, this);
5.
if (dialog->exec() == QDialog::Accepted)
6.
{
7.
document->print(&printer);
8.
}
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
   1.
      QTextDocument* document = textEdit->document();
   2.
      QPrinter printer;
   3.
       
   4.
      QPrintDialog* dialog = new QPrintDialog(&printer, this);
   5.
      if (dialog->exec() == QDialog::Accepted)
   6.
      {
   7.
      document->print(&printer);
   8.
      }


wäre diese funktion nicht sogar besser für mein Problem? Wenn ja kann ich die denn auch auf ein Bild umlenken?

/Edit2 Okay es muss an painter->draw,Imager liegen. Sind vielleicht die angegebenen Maße nicht okay? Kann mich mit denen irngedwie nicht richtig auseinander setzen...

/edit 3 mhh er findet den Drucker nicht... Meint ihr das liegt eher an den Treibern oder Quelltex, weil eig kann ich hierüber Drucken...

/edit 4 Fehlermeldung:
Code:
lp: The printer or class was not found.
Code:
lp: The printer or class was not found.
Code:
lp: The printer or class was not found.

_________________
Sup means Ownd !


Zuletzt bearbeitet von baba is awesome am 11:27:29 10.02.2010, insgesamt 4-mal bearbeitet
baba is awesome
Mitglied

Benutzerprofil
Anmeldungsdatum: 08.02.2010
Beiträge: 14
Beitrag baba is awesome Mitglied 12:49:47 10.02.2010   Titel:              Zitieren

Okay auf anderen Rechnern läuft es. Damit ist das hier geschlossen.

_________________
Sup means Ownd !
C/C++ Forum :: Andere GUIs - Qt, GTK+, wxWidgets ::  Printer function  
Gehen Sie zu Seite Zurück  1, 2
Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info, www.c-sar.de, www.c-plusplus.net und www.baeckmann.de enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.