【问题标题】:Windows Phone - WriteableBitmap.Render does not work with InkPresenterWindows Phone - WriteableBitmap.Render 不适用于 InkPresenter
【发布时间】:2013-09-04 03:30:35
【问题描述】:

我正在使用 WriteableBitmap.Render 将 InkPresenter 控件转换为字节数组和图像。

这是我的代码:

        var bitmap = new WriteableBitmap(element, null);
        bitmap.Render(element, null);
        bitmap.Invalidate();

        BitmapImage img;

        using (var ms = new MemoryStream())
        {
            bitmap.SaveJpeg(ms, bitmap.PixelWidth, bitmap.PixelHeight, 0, 85);

            // byte[] bytes = ms.ToArray();
            img = new BitmapImage();
            img.SetSource(ms);
        }

如果我将结果(字节数组或图像)保存到 IsoladtedStorage 中,图像的大小正确,但只有黑色。

我不知道为什么它不起作用,因为我已经在 Map 控件中使用过这种方法。

【问题讨论】:

  • bitmap.Invalidate();再次使用此语句,然后更新它是否有效..

标签: windows-phone-8 windows-phone render writeablebitmap microsoft.ink


【解决方案1】:
        using (var stream = new MemoryStream())
        {
            WriteableBitmap dd = new WriteableBitmap(ink, null);
            dd.SaveJpeg(stream, dd.PixelWidth, dd.PixelHeight, 0, 100);
            stream.Seek(0, SeekOrigin.Begin);
            var ml = new MediaLibrary();
            ink.Background = new SolidColorBrush(Colors.White);
            ml.SavePicture(string.Format("Images\\{0}.jpg", Guid.NewGuid()), stream);
            ink.Background = new SolidColorBrush(Colors.Transparent);
        }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-25
    • 2012-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多