TJPEGImage GetFormImage JPEG Fehler #52



  • Hallo ich kreig net hin.

    Also ich möchte von der Form1 Ein bild machen das funktioniert auch mit
    GetFormImage unter Windwos kann ich das einwandfrei nutzen. Aber wenn ich nun Image1-Picture dait laden will dann gibt FEhlermeldung "JPEG Fehler #52"

    und beim Drucken krieg ich TJPEGImage und TBitmap nicht zusammen.

    Wie kann ich das machen eine Idee ??

    Danek

    Quelltext:

    TJPEGImage *Bild1 = new TJPEGImage();
    
    Bild1->=Form1->GetFormImage(); 
    //Mit LoadFromFile funktionierts einwandfrei normales JPG aber wenn ich das //GetFromImage gespeicherteBilde nehme wieder Fehler "JPEG Fehler #52"
    
    TRect Rec;
    Rec = Rect(0,0,1600, 1200);
    Printer()->BeginDoc();
    Printer()->Canvas->StretchDraw(Rec,Bild1);
    Printer()->EndDoc();
    delete Bild1;
    


  • Siehe FAQ, Abschnitt "Grafik", da gibt es auch Beispiele zur Wandlung zwischen JPEG und Bitmap.



  • Danke dir. Habs Gefunden und es hat funktioniert 🙂

    habe dann direkt mal unter Drucker geschaut aber leide rnichts gefunden.

    Also ein Bild Drucken pro Seite klappt. Kannst du mir evtl. auch helfen wie ich nun 2 Bilder da Drucken kann ?

    Habe da einfach mal was ausprobier aber hat leider nicht geklappt er druckt immer nur ein Bild.

    TJPEGImage *druck1 = new TJPEGImage();
    TJPEGImage *druck2 = new TJPEGImage();
    
    druck1->LoadFromFile("Bild1.jpg");
    druck2->LoadFromFile("Bild2.jpg");
    
    TRect Rec1,Rec2;
    Rec1 = Rect(0,0,1600, 1200);
    Rec2 = Rect(0,0,1600, 1200); 
    //Denke so sollte er die übereinander drucken habe mit den werten rumgespielt aber ich krieg das bild auch nicht verschoben, bei F1 steht zwar 
    //Rect(x,y,x,y) aber irgendwie funktioniert da keine verschiebung.
    
    Printer()->BeginDoc();
    Printer()->Canvas-> StretchDraw(Rec1,druck1);
    Printer()->Canvas->StretchDraw(Rec2,druck2);
    Printer()->EndDoc();
    
    delete druck1;
    delete druck2;
    

    DAnke schonmal


Log in to reply