AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi einfach jpges verkleiner (bild und filesize) ?
Thema durchsuchen
Ansicht
Themen-Optionen

einfach jpges verkleiner (bild und filesize) ?

Ein Thema von agm65 · begonnen am 1. Dez 2006 · letzter Beitrag vom 29. Mär 2007
Antwort Antwort
Benutzerbild von agm65
agm65

Registriert seit: 21. Okt 2003
1.194 Beiträge
 
Delphi 2006 Professional
 
#1

einfach jpges verkleiner (bild und filesize) ?

  Alt 1. Dez 2006, 14:57
suche nach einer möglichst einfachen möglichkeit JPGS zu verkleiner , in datei größe und format.
hat jemand eine idee ? danke jungs

es geht nur um jpgs -> keine bmps oder so
euer Peter Porka
  Mit Zitat antworten Zitat
Benutzerbild von dataspider
dataspider

Registriert seit: 9. Nov 2003
Ort: 04539 Groitzsch
1.351 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: einfach jpges verkleiner (bild und filesize) ?

  Alt 2. Dez 2006, 13:43
Hallo,

ich habe es realisiert mit Graphics32.

Delphi-Quellcode:
procedure TFRMEdtImmoBild.LoadAndConvertImage(const AFileName: string);
Var
  R: TKernelResampler;
  ASrcImage: TBitMap32;
  ADstImage: TBitMap32;
  ABmp: TBitMap;
  AJPeg: TJPegImage;
  AScale: Extended;
begin
  // Zum Abspeichern als Jpeg
  AJPeg := TJPEGImage.Create;

  // als Buffer von TImage32 zu TJpeg
  ABmp := TBitMap.Create;
  // Originalbild
  ASrcImage := TBitmap32.Create;
  // verkleinertes Bild
  ADstImage := TBitMap32.Create;

  Screen.Cursor := crHourGlass;

  try
    // Datei laden
    ASrcImage.LoadFromFile(AFileName);

    // Skalierungsfaktor (z.B. 0.5 zum Verkleinern auf 50 %
    // in diesem Beispiel wir das Bild max. 300 Pixel breit oder hoch sein
    AScale := (300 / Max(ASrcImage.Width, ASrcImage.Height));

    // Zielbild Größe einstellen
    ADstImage.Width := Round(ASrcImage.Width * AScale);
    ADstImage.Height := Round(ASrcImage.Height * AScale);

    R := TKernelResampler.Create(ASrcImage);
    R.Kernel := TLanczosKernel.Create;

    // Zielbild ist fertig
    ADstImage.Draw(ADstImage.BoundsRect, ASrcImage.BoundsRect, ASrcImage);

    // direkt geht es leider nicht in das AJpeg
    ABmp.Assign(ADstImage);

    if AJPeg.CompressionQuality <> defJpegQuality then
      AJPeg.CompressionQuality := defJpegQuality;

    AJPeg.Assign(ABmp);

    // TDMImmoBild(DataModule).StoreImages(AJPeg);
    // Speichern AJPeg.SaveToFile ???

  finally
    Application.ProcessMessages;
    Screen.Cursor := crDefault;
    AJPeg.Free;
    ABmp.Free;
    ADstImage.Free;
    ASrcImage.Free;
  end;
end;
Cu, Frank
Frank Reim
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#3

Re: einfach jpges verkleiner (bild und filesize) ?

  Alt 2. Dez 2006, 13:55
Delphi-Quellcode:
  finally
    Application.ProcessMessages;
Wozu soll das gut sein? o.O
  Mit Zitat antworten Zitat
MrKnogge

Registriert seit: 9. Jun 2003
Ort: Pforzheim
2.458 Beiträge
 
Delphi 2007 Professional
 
#4

Re: einfach jpges verkleiner (bild und filesize) ?

  Alt 2. Dez 2006, 15:31
Damit dein Programm noch reagiert.
Christian Bootz
Einstein ist tot, Newton ist tot,
und mir ist auch schon ganz schlecht...
  Mit Zitat antworten Zitat
Benutzerbild von dataspider
dataspider

Registriert seit: 9. Nov 2003
Ort: 04539 Groitzsch
1.351 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: einfach jpges verkleiner (bild und filesize) ?

  Alt 2. Dez 2006, 17:06
Zitat von NamenLozer:
Delphi-Quellcode:
  finally
    Application.ProcessMessages;
Wozu soll das gut sein? o.O
Damit die Sanduhr wirklich so lange zu sehen ist, wie der Prozess dauert.
Aber man kann es auch weglassen.

Frank
Frank Reim
  Mit Zitat antworten Zitat
Benutzerbild von agm65
agm65

Registriert seit: 21. Okt 2003
1.194 Beiträge
 
Delphi 2006 Professional
 
#6

Re: einfach jpges verkleiner (bild und filesize) ?

  Alt 5. Dez 2006, 16:57
kann ich diese g32 komponente für kommerzielle zwecke nutzen ?
euer Peter Porka
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#7

Re: einfach jpges verkleiner (bild und filesize) ?

  Alt 5. Dez 2006, 17:07
Sie steht unter der MPL, sagt zumindest die aktuelle Doc: http://graphics32.org/documentation/...ew/License.htm

Ich glaube, die ist für kommerzielle Projekte gültig. musst du aber nachlesen. Deutsche Übersetzung Deutsches FAQ gibts hier:

http://dsdt.info/jedi/mpl.php
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
ZeroQool007

Registriert seit: 30. Aug 2004
127 Beiträge
 
#8

Re: einfach jpges verkleiner (bild und filesize) ?

  Alt 29. Mär 2007, 09:48
welche units muss ich alle einbinden?! thx
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz