繁体   English   中英

如何从inkcanvas直接获取位图图像(在wpf中)

[英]how to get directly bitmap image from inkcanvas (in wpf)

我正在做一个 OCR 项目。 我必须从inkcanvas 中的输入中获取图像以在下一步中进行处理,即将该图像转换为二维数组。

我对如何从inkcanvas 获取位图图像进行处理感到困惑。 我一直在从许多来源寻找解决方案,但其中很多只是将inkcanvas 保存到文件流中。

请帮我! 非常感谢

我知道这个问题比较老,但我还必须从墨水画布中获取位图。 因此,要回答有关如何直接从墨水画布获取位图的问题,这里有一个解决方案。 希望它仍然有帮助。

    private System.Drawing.Image ConvertInkCanvasToImage()
    {

      //create temporary InkCanvas or send it in as a parameter
      InkCanvas inkCanvas = new InkCanvas();      
      inkCanvas = viewModel.InkCanvas;

      //render bitmap
      RenderTargetBitmap rtb = new RenderTargetBitmap((int)inkCanvas.ActualWidth, (int)inkCanvas.ActualHeight, 96, 96, System.Windows.Media.PixelFormats.Default);
      rtb.Render(inkCanvas);
      BmpBitmapEncoder encoder = new BmpBitmapEncoder();
      encoder.Frames.Add(BitmapFrame.Create(rtb));
      rtb.Render(inkCanvas);

      //save to memory stream or file 
      System.IO.MemoryStream ms = new System.IO.MemoryStream();
      encoder.Save(ms);  

      //creat bitmap with memory stream or file
      Bitmap bitmap = new Bitmap(ms);
      return bitmap;
    }

查看此博客文章: http : //www.centrolutions.com/Blog/post/2008/12/09/Convert-WPF-InkCanvas-to-Bitmap.aspx

这将为您提供位图的字节数组,因为您正在执行 OCR 应该足够了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM