Expand|Select|Wrap|Line Numbers
- public static System.Drawing.Image DIB_ToImage(System.IntPtr hdib)
- {
- System.Drawing.Image convertedImage = null;
- if( hdib != System.IntPtr.Zero ) {
- byte[] imageDataAsByte = new byte[ DIB_Size( hdib ) + 100 ];
- GCHandle byteArrayHandle = GCHandle.Alloc( imageDataAsByte, GCHandleType.Pinned );
- DIB_WriteToBuffer(
- hdib, TWFF_BMP, byteArrayHandle.AddrOfPinnedObject(), imageDataAsByte.Length );
- byteArrayHandle.Free();
- System.IO.MemoryStream memoryStream = new System.IO.MemoryStream( imageDataAsByte, false );
- System.Drawing.Image temporaryBitmap = System.Drawing.Bitmap.FromStream( ((System.IO.Stream)memoryStream) );
- convertedImage = (System.Drawing.Image)temporaryBitmap.Clone();
- temporaryBitmap.Dispose();
- memoryStream.Dispose();
- }
- return convertedImage;
- }
Expand|Select|Wrap|Line Numbers
- if (hdib != IntPtr.Zero)
- {
- pbImage.Image = EZTwain.DIB_ToImage(hdib);
- btnSave.Enabled = true;
- EZTwain.DIB_Free(hdib);
- }
Expand|Select|Wrap|Line Numbers
- MemoryStream ms = new MemoryStream();
- pbImage.Image.Save(ms, pbImage.Image.RawFormat);
- byte[] img = ms.GetBuffer();
- ms.Dispose();
Expand|Select|Wrap|Line Numbers
- pbImage.Image.Save(ms, pbImage.Image.RawFormat);