PlgBlt: Unterschied zwischen den Versionen

Aus API-Wiki
Wechseln zu: Navigation, Suche
Zeile 18: Zeile 18:
 
'''Anmerkungen:'''
 
'''Anmerkungen:'''
  
Das Parallelogramm wird über drei Punkte in einem Feld vom Typ [[PointApi]] definiert und im Parameter lpPoint übergeben.
+
Das Parallelogramm wird über drei Punkte in einem Feld ([[Array]]) vom Typ [[PointApi]] definiert und im Parameter lpPoint übergeben.
 
In den Parametern hbmMask, xMask und yMask kann zusätzlich eine monochrome Maske übergeben werden.
 
In den Parametern hbmMask, xMask und yMask kann zusätzlich eine monochrome Maske übergeben werden.
  
 
'''Beispiel:'''
 
'''Beispiel:'''
 
<pre>
 
<pre>
Call PlgBlt(picDest.hdc, ptList(0), picSource.hdc, 0, 0, _
+
Dim Pt(2) As POINTAPI
    picSource.ScaleWidth, picSource.ScaleHeight, 0, 0, 0)
+
 
 +
Pt(0).x = 30
 +
Pt(0).y = 10
 +
Pt(1).x = 300
 +
Pt(1).y = 0
 +
Pt(2).x = 0
 +
Pt(2).y = 300
 +
 
 +
PlgBlt DestDC.hDC, Pt(0), SrcDC.hDC, 0, 0, 100, 100, 0, 0, 0
 
</pre>
 
</pre>
  
Zeile 31: Zeile 39:
  
 
siehe auch: <br>
 
siehe auch: <br>
AVB Tipp 619 <br>
+
AVB Tipp 619 [http://www.activevb.de/tipps/vb6tipps/tipp0619.html] <br>
 
[[BitBlt]] <br>
 
[[BitBlt]] <br>
 
[[StretchBlt]] <br>
 
[[StretchBlt]] <br>
  
 
[[Kategorie:Pixelgrafik]]
 
[[Kategorie:Pixelgrafik]]

Version vom 27. Februar 2007, 07:51 Uhr

Überträgt eine Grafik von einem Source DC in einen Destination DC, wobei die Grafik in ein Parallelogramm projeziert wird.

Deklaration:

Declare Function PlgBlt Lib "gdi32.dll" ( _
                 ByVal hdcDest As Long, _
                 ByRef lpPoint As POINTAPI, _
                 ByVal hdcSrc As Long, _
                 ByVal nXSrc As Long, _
                 ByVal nYSrc As Long, _
                 ByVal nWidth As Long, _
                 ByVal nHeight As Long, _
                 ByVal hbmMask As Long, _
                 ByVal xMask As Long, _
                 ByVal yMask As Long) As Long

Anmerkungen:

Das Parallelogramm wird über drei Punkte in einem Feld (Array) vom Typ PointApi definiert und im Parameter lpPoint übergeben. In den Parametern hbmMask, xMask und yMask kann zusätzlich eine monochrome Maske übergeben werden.

Beispiel:

Dim Pt(2) As POINTAPI

Pt(0).x = 30
Pt(0).y = 10
Pt(1).x = 300
Pt(1).y = 0
Pt(2).x = 0
Pt(2).y = 300

PlgBlt DestDC.hDC, Pt(0), SrcDC.hDC, 0, 0, 100, 100, 0, 0, 0

War die Funktion erfolgreich, so erfolgt eine Übergabe eines Wertes ungleich 0. Sollte die Funktion fehlschlagen, so kann die Fehlerursache mittels GetLastError festgestellt werden.

siehe auch:
AVB Tipp 619 [1]
BitBlt
StretchBlt