コード例 #1
0
ファイル: Helpers.cs プロジェクト: zyj0021/WinApi
 public static unsafe IntPtr CreateDIBSection(IntPtr hdc, ref BitmapInfoHeader bitmapInfoHeader,
                                              DibBmiColorUsageFlag iUsage, out IntPtr ppvBits, IntPtr hSection, uint dwOffset)
 {
     fixed(BitmapInfoHeader *bitmapInfoHeaderPtr = &bitmapInfoHeader)
     {
         return(Gdi32Methods.CreateDIBSection(hdc, new IntPtr(bitmapInfoHeaderPtr), iUsage, out ppvBits, hSection,
                                              dwOffset));
     }
 }
コード例 #2
0
ファイル: Helpers.cs プロジェクト: zyj0021/WinApi
 public static IntPtr CreateDIBSection(IntPtr hdc, ref BitmapInfo bitmapInfo,
                                       DibBmiColorUsageFlag iUsage, out IntPtr ppvBits, IntPtr hSection, uint dwOffset)
 {
     using (var pbmi = BitmapInfo.NativeAlloc(ref bitmapInfo))
     {
         return(Gdi32Methods.CreateDIBSection(hdc, pbmi.GetDangerousHandle(), iUsage, out ppvBits, hSection,
                                              dwOffset));
     }
 }
コード例 #3
0
ファイル: Helpers.cs プロジェクト: zyj0021/WinApi
 public static IntPtr CreateDIBitmap(IntPtr hdc, ref BitmapInfoHeader
                                     lpbmih, uint fdwInit, byte[] lpbInit, ref BitmapInfo bitmapInfo,
                                     DibBmiColorUsageFlag fuUsage)
 {
     using (var pbmi = BitmapInfo.NativeAlloc(ref bitmapInfo))
     {
         return(Gdi32Methods.CreateDIBitmap(hdc, ref lpbmih, fdwInit, lpbInit, pbmi.GetDangerousHandle(),
                                            fuUsage));
     }
 }
コード例 #4
0
 public static extern int SetDIBitsToDevice(IntPtr hdc, int xDest, int yDest, uint
                                            dwWidth, uint dwHeight, int xSrc, int ySrc, uint uStartScan, uint cScanLines,
                                            IntPtr lpvBits, IntPtr lpbmi, DibBmiColorUsageFlag fuColorUse);
コード例 #5
0
 public static extern IntPtr CreateDIBitmap(IntPtr hdc, [In] ref BitmapInfoHeader
                                            lpbmih, uint fdwInit, IntPtr lpbInit, IntPtr lpbmi,
                                            DibBmiColorUsageFlag fuUsage);
コード例 #6
0
 public static extern IntPtr CreateDIBSection(IntPtr hdc, IntPtr pbmi,
                                              DibBmiColorUsageFlag iUsage, out IntPtr ppvBits, IntPtr hSection, uint dwOffset);
コード例 #7
0
ファイル: Helpers.cs プロジェクト: zyj0021/WinApi
 public static unsafe int SetDIBitsToDevice(IntPtr hdc, int xDest, int yDest, uint
                                            dwWidth, uint dwHeight, int xSrc, int ySrc, uint uStartScan, uint cScanLines,
                                            byte[] lpvBits, ref BitmapInfoHeader bitmapInfoHeader, DibBmiColorUsageFlag fuColorUse)
 {
     fixed(BitmapInfoHeader *bitmapInfoHeaderPtr = &bitmapInfoHeader)
     {
         return(Gdi32Methods.SetDIBitsToDevice(hdc, xDest, yDest,
                                               dwWidth, dwHeight, xSrc, ySrc, uStartScan, cScanLines, lpvBits, new IntPtr(bitmapInfoHeaderPtr),
                                               fuColorUse));
     }
 }
コード例 #8
0
ファイル: Helpers.cs プロジェクト: zyj0021/WinApi
 public static int SetDIBitsToDevice(IntPtr hdc, int xDest, int yDest, uint
                                     dwWidth, uint dwHeight, int xSrc, int ySrc, uint uStartScan, uint cScanLines,
                                     byte[] lpvBits, ref BitmapInfo bitmapInfo, DibBmiColorUsageFlag fuColorUse)
 {
     using (var pbmi = BitmapInfo.NativeAlloc(ref bitmapInfo))
     {
         return(Gdi32Methods.SetDIBitsToDevice(hdc, xDest, yDest,
                                               dwWidth, dwHeight, xSrc, ySrc, uStartScan, cScanLines, lpvBits, pbmi.GetDangerousHandle(),
                                               fuColorUse));
     }
 }