CreateGpBitmapFromHBitmap

Image ››
Parent Previous Next

CreateGpBitmapFromHBitmap

Синтаксис

Function CreateGPBitmapFromHBitmap(ByVal hBmp As HBITMAP) As Any Ptr

Описание

Создает Bitmap (в Windows Gdi+ Bitmap , в Linux PixBuf Bitmap) из обычного bitmap (Hbitmap)

Параметры

hBmp - хендл битмапа

Платформы

Windows , Linux

Пример

#Include "window9.bi"
Var HBitmap=Create_Image(300,300)'создаем обычный битмап
ImageStartDraw(HBitmap) 'начинаем рисование
  TextDraw(30,50,"FreeBasic The Best",,&hff)
StopDraw ' заканчиваем рисование
Var MainGpBitmap=Create_ImageA(300,300)'создаем прозрачный битмап
Var GpBitmap=CreateGpBitmapFromHBitmap(HBitmap)'создаем GDI+ битмап из Hbitmap
ImageStartDrawA(MainGpBitmap) 'начинаем рисование с помощью GDI+
ImageDrawA(GpBitmap,0,0) ' рисуем наш непрозрачный битмап
For y As Integer=0 To 300 ' далее в циклах заменяем все непрозрачные
  For x As Integer=0 To 300 'пикселы прозрачными
     If GetPixA(x,y)=&hff000000 Then
        SetPixA(x,y,&h00000000)
     EndIf
  Next
Next
StopDrawA ' заканчиваем рисование
Save_image(HBitmap,"1.png") ' сохраняем непрозрачный битмап
Save_imageA(MainGpBitmap,"2.png") ' сохраняем прозрачный битмап
FreeGpBitmap(GpBitmap):Free_Image(hbitmap):FreeGpBitmap(MainGpBitmap)

Результат

Created with the Personal Edition of HelpNDoc: Free CHM Help documentation generator