【问题标题】:Resize a WriteableBitmap in C# for WindowsPhone 8在 C# 中为 WindowsPhone 8 调整 WriteableBitmap 的大小
【发布时间】:2014-10-16 18:08:05
【问题描述】:

如何将 WriteableBitmap 的大小从 2768x2768 调整为 1500x1500?

我找不到任何可扩展的选项,并且所有其他代码都与 W 不兼容

谢谢!

【问题讨论】:

    标签: c# windows-phone-8 bitmap crop


    【解决方案1】:

    您可以使用以下代码调整图像大小

        public byte[] ChangeDimension(BitmapImage bitmapImage, int width, int height)
        {
            byte[] data = null;
            using (MemoryStream stream = new MemoryStream())
            {
                WriteableBitmap wBitmap = new WriteableBitmap(bitmapImage);
                wBitmap.SaveJpeg(stream,width, height, 0, 100);
                stream.Seek(0, SeekOrigin.Begin);
                data = stream.GetBuffer();
            }
            return data;
        }
    

    【讨论】:

      【解决方案2】:

      安装nuget包WriteableBitmapEx(可写位图扩展)。

      它提供了Resize()扩展方法。

      另一个选项是 PictureDecoder 类,它允许加载图像的缩放版本(如果是 JPEG)。

      【讨论】:

      • 这些不起作用我仍然收到“图像太大”错误。我的 OCR 库仅允许 2600x2600 pixelwdith/pixelheight,使用此工具裁剪/调整大小后,我仍然收到错误消息。
      • 啊对,可写位图有大小限制,2000x2000
      • 至少 2600x2600。我用后置摄像头拍摄的图像是 2000x2000,所以我想这很好。我需要将它们裁剪为 800x600
      • 我也在 PixelWidth/PixelHeight 中读取这些值。如何降低这些?
      • 如果我没听错的话,你的问题不是调整位图大小,而是 OCR 库出现错误?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-04
      • 2014-09-25
      • 1970-01-01
      • 1970-01-01
      • 2015-09-22
      • 2012-10-06
      相关资源
      最近更新 更多