Mega Code Archive

 
Categories / Delphi / Examples
 

Jpeg

Subject: RE: D4: JPEG JPEG support is available in Delphi 3 (and, I guess, Delphi 4). Just Use JPEG and use LoadFromFile() to display the JPEG as the TImage's Picture. E.g.: use JPEG; procedure LoadPicture(ImageFileName: String); var SplashImage : TImage; begin SplashImage :=3D TImage.Create(ParentForm); SplashImage.Picture.LoadFromFile(ImageFileName); end; will load any .BMP, .ICO, .EMF, .JPG (.JPEG), .WMF file passed as ImageFileName. Note: The Picture loader in the (D3) IDE doesn't include JPG/JPEG as supported file formats. You could probably make a new component that woul= d let you assign a JPEG image in the IDE and, therefore, compile it into the =2EEXE and, therefore, probably load the picture faster when the program executes. Steve Helgeson Lamplighter Software -----Original Message----- From: owner-delphi@Kyler.com [mailto:owner-delphi@Kyler.com]On Behalf Of Niclas Astrom Sent: Monday, March 08, 1999 12:38 PM To: delphi@Kyler.com Subject: D4: JPEG How can I import/export JPEG images from a TBitmap ? Is there any freeware addons ? Source ? Thanks, Niclas Astrom Teknikhuset Sweden **************************************************************************** Date sent: Tue, 09 Mar 1999 09:52:14 +0100 From: "Gabriele Ghirardini" <gabriele.ghirardini@caboto.it> To: Delphi@Kyler.com Subject: Re: D4: JPEG Send reply to: Delphi@Kyler.com Working with JPEG is very easy. Try this: uses Graphics, Jpeg; function LoadJPEG(const psFileIN: PChar): TPicture; var imgJPG : TJPEGImage; picReturn : TPicture; begin imgJPG := TJPEGImage.Create; picReturn := TPicture.Create; try imgJPG.LoadFromFile(psFileIN); picReturn.Bitmap.Assign(imgJPG); except picReturn.Free; picReturn := nil; end;{Try} imgJPG.Free; LoadJPEG := picReturn; end; function SaveJPEG(picToSave: TPicture; const psFileOUT: PChar): boolean; var bReturn : boolean; imgJPG : TJPEGImage; begin bReturn := False; imgJPG := TJPEGImage.Create; try imgJPG.Assign(picToSave.Bitmap); imgJPG.SaveToFile(psFileOUT); bReturn := True; finally imgJPG.Free; end;{Try} SaveJPEG := bReturn; end; (This is a D3 source) bye, Ghira Niclas Astrom wrote: > How can I import/export JPEG images from a TBitmap ? Is there any > freeware addons ? Source ? > > Thanks, > > Niclas Astrom > Teknikhuset > Sweden ***************** If you can use this Delphi-Standard depends on the type of the Delphiversion. If you has the desktop (smallest) version, JPEG is not supported. But there are serval shareware/freeware tools to handle JPEG's. I use the "TJPEGImage component" from Luciano Bajo Eloy. You can download it from one of the Delphi-Sites (e.g. Torrys Homepage). > Working with JPEG is very easy. > > > Try this: > > uses Graphics, Jpeg; > > function LoadJPEG(const psFileIN: PChar): TPicture; > var > imgJPG : TJPEGImage; > picReturn : TPicture; > > begin > imgJPG := TJPEGImage.Create; > picReturn := TPicture.Create; > > try > imgJPG.LoadFromFile(psFileIN); > picReturn.Bitmap.Assign(imgJPG); > except > picReturn.Free; > picReturn := nil; > end;{Try} > > imgJPG.Free; > > LoadJPEG := picReturn; > end; > > function SaveJPEG(picToSave: TPicture; const psFileOUT: > PChar): boolean; > var > bReturn : boolean; > imgJPG : TJPEGImage; > > begin > bReturn := False; > imgJPG := TJPEGImage.Create; > try > imgJPG.Assign(picToSave.Bitmap); > imgJPG.SaveToFile(psFileOUT); > > bReturn := True; > finally > imgJPG.Free; > end;{Try} > > SaveJPEG := bReturn; > end; > > (This is a D3 source) > > > bye, > Ghira > > > > Niclas Astrom wrote: > > > How can I import/export JPEG images from a TBitmap ? Is > > there any > > freeware addons ? Source ? > > > > Thanks, > > > > Niclas Astrom > > Teknikhuset > > Sweden ***************** printing bitmaps: As Joe Hecht will tell you in Borland's Delphi.Graphics forum, you can't reliably print a bitmap (which is actually a DDB, a Device Dependent Bitmap). Instead, you have to change it to a DIB (Device INdependent Bitmap) and use the StretchBits function to get it onto the printer's canvas. I'm pretty sure that the Borland website has a TI (technical information) document that explains it clearly. ***************************** the Intel JPEG libraries may be faster and less prone to errors than other routes to manipulating images: see http://www.david-taylor.pwp.blueyonder.co.uk/software/runtime.html