Example #1
0
        internal static PixelFormat GetPixelFormat(GFL_BITMAP_TYPE bitmap_type)
        {
            switch (bitmap_type)
            {
                case GFL_BITMAP_TYPE.GFL_BINARY:
                    return PixelFormat.Format1bppIndexed;

                case GFL_BITMAP_TYPE.GFL_GREY:
                    return PixelFormat.Format8bppIndexed;

                case GFL_BITMAP_TYPE.GFL_COLORS:
                    return PixelFormat.Format8bppIndexed;

                case GFL_BITMAP_TYPE.GFL_RGB:
                    return PixelFormat.Format24bppRgb;

                case GFL_BITMAP_TYPE.GFL_RGBA:
                    return PixelFormat.Format32bppArgb;

                case GFL_BITMAP_TYPE.GFL_BGR:
                    return PixelFormat.Format24bppRgb;

                case GFL_BITMAP_TYPE.GFL_ABGR:
                    return PixelFormat.Format32bppArgb;

                case GFL_BITMAP_TYPE.GFL_BGRA:

                    return PixelFormat.Format32bppArgb;

                case GFL_BITMAP_TYPE.GFL_ARGB:

                    return PixelFormat.Format32bppArgb;

                case GFL_BITMAP_TYPE.GFL_CMYK:
                    return PixelFormat.Undefined;

                default:
                    throw new APIException("BITMAP_TYPE unknown");
            }
        }
Example #2
0
 internal static extern IntPtr gflAllockBitmap(GFL_BITMAP_TYPE bitmap_type, Int32 width, Int32 height, UInt32 line_padding, ref GFL_COLOR color);
Example #3
0
 public GflImage(int width, int height, UInt32 stride, GFL_BITMAP_TYPE type)
 {
     GFL_COLOR  c = new GFL_COLOR(Color.White) ;
        m_gfl_bitmap = GflAPI.gflAllockBitmap(type, width, height, stride, ref c);
        RefreshStruct();
 }
Example #4
0
 public GflImage GetCopy(GFL_MODE depthMode, GFL_BITMAP_TYPE type)
 {
     var img = new GflImage(m_gfl_bitmap_struct.Width, m_gfl_bitmap_struct.Height, 1, type);
     GflAPI.gflChangeColorDepth(m_gfl_bitmap, img.m_gfl_bitmap, depthMode, GFL_MODE_PARAM.GFL_MODE_ADAPTIVE);
     img.RefreshStruct();
     return img;
 }