Grafik - JPG skalieren



  • Wie kann ich ein JPG-Image scalieren?
    😕

    [ Dieser Beitrag wurde am 30.06.2002 um 18:27 Uhr von Jansen editiert. ]



  • #include <jpeg.hpp>
    
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
      TRect ARect;
      Graphics::TBitmap *bmp = new Graphics::TBitmap();
      TJPEGImage *jpg = new TJPEGImage();
    
      jpg->LoadFromFile("test.jpg");
    
      // gewünschte neue Abmessungen festlegen
      bmp->Width = jpg->Width * 2;
      bmp->Height = jpg->Height * 2;
    
      // Rect mit den gleichen Abmessungen definieren und das per
      // StretchDraw vergrösserte JPEG auf das Bitmap zeichnen
      ARect = Rect(0, 0, jpg->Width * 2, jpg->Height * 2);
      bmp->Canvas->StretchDraw(ARect, jpg);
    
      // Inhalt des Bitmap auf das JPEG übertragen, speichern
      jpg->Assign(bmp);
      jpg->SaveToFile("test2.jpg");
    
      delete jpg;
      delete bmp;
    }
    


  • Besten Dank für die prompte Antwort.
    Aber wozu gibt es eigentlich TJPEGScale und wann oder wie wird Scale aufgerufen? Direkt für JPG.



  • Da könnte ich auch nur aus der Hilfe zitieren: dass Scale nur zur Beeinflussung der Darstellung verwendet wird, wobei das Bild an sich aber nicht geändert wird.


Anmelden zum Antworten