Announcement

Collapse
No announcement yet.

Zusammenfügen von JPG-Dateien

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Zusammenfügen von JPG-Dateien

    Wie kann ich 2 oder mehrere JPG-Dateien nebeneinader setzen und das ganze auch noch in ein eigenes JPG. NICHT VISUELL nur in TJPGs.

    das heist ich mochte drei bilder nebeneinander in ein neues kopieren.

    Stefan

  • #2
    Hallo Stefan,

    Um sowas zu realisieren, musst du die JPEG Bilder erstmal in den Speicher laden

    Uses....,JPEG;

    VAR
    Image1 : tJpegImage;
    Image2 : tJpegeImage;

    Begin
    Image1 := tJpegImage.Create;
    Image1.LoadFromFile ( 'C:\I1.JPG');
    Image2 := tJpegImage.Create;
    Image2.LoadFromFile ( 'C:\I2.JPG');
    End;

    Jetzt wird eine Bitmap erstellt...

    VAr
    Bmp : tBimtpa;

    Begin
    Bmp := tBitmap.Create;
    Bmp.Width := Image1.Picture.Width + Image2.Picture.Width;
    Bmp.Height := Image1.Picture.Height + Image2.Picture.Height;
    End;

    jetzt musst du die Jpeg-Images in die Bitmap kopieren...
    Leider müssen wir erst diese Bilder in Bitmap umwandelt...

    VAR
    TempBitmap : tBitmap;
    X : Integer;
    Begin
    TempBitmap := tBitmap.Create;
    TempBitmap.Picture.Assign ( Image1 );

    Jetzt das Bild in Bitmap kopieren...

    x := 0;
    Bmp.Canvas.Draw ( x,0,TempBitmap);
    Inc ( x, TempBitmap.Width );

    TempBitmap.Picture.Assign ( Image2 );
    Bmp.Canvas.Draw ( x,0,TempBitmap );

    End;

    jetzt sind wir fast am Ziel

    Diese Bitmap in JPEG konvertieren und abspeichern...

    VAR
    newJpeg : tJpegImage;
    Begin
    NewJpeg := tJpegImage.Create;
    newJpeg.Picture.Assign ( Bmp );
    newJpeg.SaveToFile ( 'C:\test.jpg');
    NewJpeg.Free;
    End;

    anschliessend nicht vergessen alle zur laufzeit erzeugten bitmaps und jpegs zu entfernen

    bmp.Free;
    Image1.Free;
    Image2.Free;
    TempBitmap.Free;

    Ich hoffe, dass ich dir damit weiter geholfen habe...

    Grüsse

    Cesari

    Comment

    Working...
    X