Tips&Tricks I trucchi del mestiere

 

Alleggeriamo i file JPEG


A volte si rende necessario rendere pi∙ leggeri, in termini di byte, le nostro foto in formato JPEG, ma il ridimensionamento non Φ l'unica via da seguire. La routine proposta consente di ricomprime l'immagine fino a raggiungere le dimensioni desiderate. Prima di scrivere la routine ricordiamo di includere la unit Jpeg.
Tip fornito dal sig. F. Iaccarino


uses Jpeg; function RecompressImage(FileJPEG: string; maxSize, inc: integer): boolean; var MyJPEG: TJPEGImage; MyBMP: TBitmap; i,s: integer; begin result:=False; i:=100; MyJPEG:=TJPEGImage.Create; try MyJPEG.LoadFromFile(FileJPEG); repeat MyBMP:=TBitmap.Create; try MyBMP.Height:=MyJPEG.Height; MyBMP.Width:=MyJPEG.Width; MyBMP.Canvas.Draw(0,0,MyJPEG); MyJPEG.Assign(MyBMP); dec(i,inc); if i<=0 then exit; MyJPEG.CompressionQuality:=i; MyJPEG.Compress; MyJPEG.SaveToFile(FileJPEG+'r'); s:=GetFileSize(FileJPEG+'r');//,nil); finally MyBMP.Free; end; until (s<MaxSize); finally MyJPEG.Free; end; DeleteFile(FileJPEG); MoveFile(PChar(FileJPEG+'r'),PChar(FileJPEG)); result:=True; end;

Di seguito un esempio di utilizzo della funzione:

// Ridimensiona il file indicato in un Edit ad un valore <= a 512Kb
//utilizzando degli step di incremento di compressione di 5 punti.


if not RecompressImage(ImageFile.Text,512*1024,5) then ShowMessage('Impossibile ridurre la dimensione dell'immagine');



Enumerare le chiavi del registro di sistema


Il tip consente di enumerare tutte le chiavi di registro modificate in un determinato intervallo di tempo. E' utile per vedere le modifiche effettuate sul registro di Windows da programmi installati (eventuale spyware allegato a software p2p, etc...) Il codice, data la sua prolissitα, Φ presente nel cd-rom allegato alla rivista e/o sul sito web di ioProgrammo (www.ioprogrammo.it)
Tip fornito dal sig. C. Pasolini