TBitmap

Iz SDMS
Jump to navigationJump to search
Ta stran je trenutno še v izdelavi.

Razred TBitmap se uporablja za kreiranje, spreminjanje in shranjevanje bitnih slik.

Kreiranje in uničenje bitne slike

Preden začnete delati z bitno sliko, morate deklarirati spremenjivko, ki bo vsebovala referenco nanjo, ter jo inicializirati s funkcijo CreateBitmap.

Po končanem delu z bitno sliko morate to spremenjivko uničiti s proceduro Destroy.

Dim B As TBitmap   // deklaracija spremenljivke
B = CreateBitmap   // kreiranje bitne slike

                   // delo s sliko

Destroy (B)        // uničenje bitne slike

Osnovne lastnosti bitne slike

Width

Lastnost Width določa širino bitne slike.

Property TBitmap.Width As Long
ResultLongŠirina bitne slike v pikslih.

Height

Lastnost Height določa višino bitne slike.

Property TBitmap.Height As Long
ResultLongVišina bitne slike v pikslih.

Nalaganje in shranjevanje bitne slike

Dim B As TBitmap
B = CreateBitmap
B.Load ("c:\image.bmp")               // nalaganje iz datoteke
B.Save ("c:\image.jpg")               // shranjevanje v drugo datoteko
B.SaveAs ("c:\image.tif", ifTifLzw)   // shranjevanje z določenim formatom
Destroy (B)

Load

Metoda Load naloži bitno sliko iz navedene datoteke.

Method TBitmap.Load (FileName As String)
FileNameStringPolna pot do datoteke.

Save

Metoda Save shrani bitno sliko v navedeno datoteko.

Method TBitmap.Save (FileName As String)
FileNameStringPolna pot do datoteke, v katero se bo shranila bitna slika.

SaveAs

Metoda SaveAs shrani bitno sliko v navedeno datoteko v navedenem formatu. Za parameter Format obvezno uporabljajte konstante XXX Formati bitnih slik.

Method TBitmap.SaveAs (FileName As String, Format As Long)
FileNameStringPolna pot do datoteke, v katero se bo shranila bitna slika.
FormatLongFormat datoteke, v katerem se bo shranila bitna slika.

Splošne operacije na bitnih slikah

Dim B As TBitmap
B = CreateBitmap
If B.Scan (True) Then       // skeniranje slike (morate imeti skener)
  B.Crop (0, 0, 600, 600)   // izrez zgornjega levega vogala
  B.Rotate (45)             // rotacija za 45 stopinj v desno
  B.Resize (400, 400)       // pomanjšava slike
  B.Save ("c:\image.jpg")
EndIf
Destroy(B)

Copy

Metoda Copy .

Method TBitmap.Copy (Target As TBitmap, X, Y As Long)
TargetTBitmap.
XLong.
YLong.

CopyRectFrom

Metoda CopyRectFrom .

Method TBitmap.CopyRectFrom (Source As TBitmap, SX1, SY1, SX2, SY2, DX1, DY1 As Long)
SourceTBitmap.
SX1Long.
SY1Long.
SX2Long.
SY2Long.
DX1Long.
DY1Long.

Crop

Metoda Crop odreže bitno sliko izven podanega okna.

Method TBitmap.Crop (Left, Top, Right, Bottom As Long)
LeftLongLeva stran okna v pikslih,
TopLongZgornja stran okna v pikslih,
RightLongDesna stran okna v pikslih,
BottomLongSpodnja stran okna vpikslih.

CropToNew

Lastnost CropToNew .

RO Property TBitmap.CropToNew (Left, Top, Right, Bottom As Long) As TBitmap
LeftLong.
TopLong.
RightLong.
BottomLong.
ResultTBitmap.

CropCircle

Metoda CropCircle .

Method TBitmap.CropCircle (Left, Top, Right, Bottom As Long)
LeftLong.
TopLong.
RightLong.
BottomLong.


Resize

Metoda Resize spremeni dimenzije bitne slike.

Method TBitmap.Resize (Width, Height As Long)
WidthLongNova širina bitne slike v pixel enotah.
HeightLongNova višina bitne slike v pixel enotah.

ResizeToNew

Lastnost ResizeToNew .

RO Property TBitmap.ResizeToNew (Width, Height As Long) As TBitmap
WidthLong.
HeightLong.
ResultTBitmap.

Rotate

Metoda Rotate izvede rotacijo bitne slike.

Method TBitmap.Rotate (Angle As Float)
AngleFloatKot rotacije v decimalnih stopinjah.

Risanje

DrawLine

Metoda DrawLine .

Method TBitmap.DrawLine (X1, Y1, X2, Y2 As Long, L As TLineType, Faktor As Float)
X1Long.
Y1Long.
X2Long.
Y2Long.
LTLineType.
FaktorFloat.

DrawLineColor

Metoda DrawLineColor .

Method TBitmap.DrawLineColor (X1, Y1, X2, Y2 As Long, L As TLineType, Faktor As Float, Color As Long)
X1Long.
Y1Long.
X2Long.
Y2Long.
LTLineType.
FaktorFloat.
ColorLong.

DrawSymbol

Metoda DrawSymbol .

Method TBitmap.DrawSymbol (X, Y As Long, S As TSymbol, Faktor As Float)
XLong.
YLong.
STSymbol.
FaktorFloat.

DrawText

Metoda DrawText .

Method TBitmap.DrawText (X1, Y1 As Long, S As String, Size, Color As Long)
X1Long.
Y1Long.
SString.
SizeLong.
ColorLong.

FloodFill

Metoda FloodFill .

Method TBitmap.FloodFill (X, Y, CS, CT As Long) As Boolean
XLong.
YLong.
CSLong.
CTLong.
ResultOptional Boolean.

Razno

Dim BM As TBitmap
Dim i,j as Long
BM = CreateBitmap             // Kreiranje novega bitmap razreda
BM.Width = 10                 // Določitev širine
BM.Height = 10                // Določitev višine
For I = 0 To BM.Width - 1     // Določitev barve
  For J = 0 To BM.Height - 1  // za vsak pixel
    BM.Pixel [I,J] = RGB (I * 20, 0, 0)
  Next
Next
BM.SaveAs ("C:\some1.jpg", ifJPG) // Shranitev v novo datoteko
Destroy (BM)                  // Uničenje bitmap razreda

Adjust

Metoda Adjust .

Method TBitmap.Adjust (Contrast, Brightness As Float)
ContrastFloat.
BrightnessFloat.

Color

Lastnost Color .

Property TBitmap.Color As Long
ResultLong.

Destroy

Metoda Destroy uniči predhodno kreiran objekta razreda TBitmap. Destroy sprosti spomin alociran za shranitev Tbitmap-a.

Method TBitmap.Destroy

GetGeoInfo

Lastnost GetGeoInfo .

RO Property TBitmap.GetGeoInfo (ByRef Y1, ByRef X1, ByRef Y2, ByRef X2 As Float) As Boolean
Y1ByRef Float.
X1ByRef Float.
Y2ByRef Float.
X2ByRef Float.
ResultBoolean.

GrabCurrentFrame

Metoda GrabCurrentFrame .

Method TBitmap.GrabCurrentFrame

Pixel

Lastnost Pixel določa barvo opredljenega pixla v bistni sliki. Vrednost barve je lahko navedena kot konstantna vrednost, vrednost barve ali RGB funkcija.

Property TBitmap.Pixel (X, Y As Long) As Long
XLongHorizontalna vrednost za izbran pixel.
YLongVertikalna vrednost za izbran pixel.
ResultLong.

Scan

Metoda Scan omogoča skeniranje bitne slike. Za uporabo te funkcije morate seveda imeti priključen skener ter naložene potrebne gonilnike (protokol TWAIN). Če imate priključenih več skenerjev, lahko privzetega doloćite s proceduro SelectScanner.

Method TBitmap.Scan (ShowDialog As Boolean) As Boolean
ShowDialogBooleanče je ta vrednost True, se vam predhodno prikaže skenerjev dialog za nastavitve skeniranja, sicer pa se skeniranje izvede s trenutno veljavnimi nastavitvami,
ResultOptional Booleanvrne True/False glede na to, ali je bilo skeniranje uspešno.