- Delphiartiklar, tips, forum, länksamling - 

      

START | DELPHI | LÄNKARGÄSTBOK 




 Forum

Grundkurs
  »Introduktion
  »Snabbguide
  »Komponenter
  »Händelser
  »Strängar
  »Räkna med Delphi   »Egna typer
  »Selektion
  »Iteration
  »Menyer
  »Funktioner
  »Arraystrukturer

Tips & Tricks
  »Nya tips
  »Blandat
  »Databaser
  »Filer
  »Forms
  »Grafik
  »Internet
  »Komponenter
  »Matematik
  »Multimedia
  »Objekt/ActiveX
  »Skrivare
  »Strängar
  »System
  »Mest lästa tips

Artiklar
  »Delphi och ADO
  »Bygga en DLL
  »Skapa en enkel rapport
  »Hantera registret
  »Enheter, units
  »Klassen TCanvas
  »Använd LookUp Controls

 Nya tips
 Lägg till tips
 Delphilänkar
 Gästbok

 

Skala en bitmap procentuellt Kategori: Grafik
Inlagt: 2005-10-11
Läst: 1283
Inlagt av: Staffan Berg
Beskrivning
Denna funktion skalar ned en bitmapbild efter angivet procentuellt värde.
Kod
{ .... } 
 
 private 
  function ScalePercentBmp(bitmp: TBitmap; iPercent: Integer): Boolean; 
   
{ .... } 
 
function TForm1.ScalePercentBmp(bitmp: TBitmap; 
 iPercent: Integer): Boolean; 
var 
 TmpBmp: TBitmap; 
 ARect: TRect; 
 h, w: Real; 
 hi, wi: Integer; 
begin 
 Result := False; 
 try 
  TmpBmp := TBitmap.Create; 
  try 
   h := bitmp.Height * (iPercent / 100); 
   w := bitmp.Width * (iPercent / 100); 
   hi := StrToInt(FormatFloat('#', h)) + bitmp.Height; 
   wi := StrToInt(FormatFloat('#', w)) + bitmp.Width; 
   TmpBmp.Width := wi; 
   TmpBmp.Height := hi; 
   ARect := Rect(0, 0, wi, hi); 
   TmpBmp.Canvas.StretchDraw(ARect, Bitmp); 
   bitmp.Assign(TmpBmp); 
  finally 
   TmpBmp.Free; 
  end; 
  Result := True; 
 except 
  Result := False; 
 end; 
end; 
 
 
// Example: 
procedure TForm1.Button1Click(Sender: TObject); 
begin 
 ScalePercentBmp(Image1.Picture.Bitmap, 33); 
end; 

 
 
© Copyright 2005 - Staffan Berg
- Alla rättigheter förbehålles -