/// <summary> /// Binarizes the specified bitmap /// </summary> /// <param name="bitmap">Bitmap</param> /// <param name="threshold">Threshold</param> /// <returns></returns> public static Bitmap Binarize(Bitmap bitmap, byte threshold) { Bitmap resultImage = bitmap; GdPictureImaging image = new GdPictureImaging(); int imageId = image.CreateGdPictureImageFromBitmap(bitmap); if (imageId > 0) { image.ConvertTo1Bpp(imageId, threshold); resultImage = image.GetBitmapFromGdPictureImage(imageId).CloneSmart(image.GetPixelFormat(imageId)); image.ReleaseGdPictureImage(imageId); } return(resultImage); }