首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UWP中的System.Windows.Media

UWP中的System.Windows.Media
EN

Stack Overflow用户
提问于 2015-11-14 09:03:52
回答 1查看 2.4K关注 0票数 3

最近,我编写了一个WPF程序来检测图片中的面孔。这个程序使用了一个项目牛津的API,被称为FaceAPI。然后,我想到了将我的应用程序从WPF移植到UWP (通用Windows平台)。但是,在开发过程中,我遇到了System.Windows.Media命名空间的问题。在我的UWP应用程序中,我只是没有这样的名称空间,因此我无法访问所有包含的类,比如DrawingVisual、DrawingContext等等。

下面是来自WPF的有问题的代码块,需要移植到UWP:

代码语言:javascript
复制
if (faceRects.Length > 0)
{
    DrawingVisual visual = new DrawingVisual();
    DrawingContext drawindContext = visual.RenderOpen();

    drawindContext.drawimage(bitmapImage,
        new Rect(0, 0, bitmapImage.Width, bitmapImage.Height));

    double dpi = bitmapImage.DpiX;
    double resizefactor = 96 / dpi;

    foreach (var facerect in faceRects)
    {
        drawindContext.drawrectangle(
            Brushes.transparent,
            new Pen(Brushes.red, 2),
            new Rect(
                faceRect.Left * resizefactor,
                faceRect.Top * resizefactor,
                faceRect.Width * resizefactor,
                faceRect.Height * resizefactor
            )
        );
    }

    drawindcontext.close();

    rendertargetbitmap facewithrectbitmap = new rendertargetbitmap(
        (int)(bitmapsource.pixelwidth * resizefactor),
        (int)(bitmapsource.pixelheight * resizefactor),
        96,
        96,
        pixelformats.pbgra32);

    facewithrectbitmap.render(visual);

    facephoto.source = facewithrectbitmap;
}

有什么办法可以替代吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-18 13:57:47

UWP使用了一组新的名称空间--大多数名称空间都以Windows.*作为前缀,这与系统相反。* WPF的前缀,尽管有系统.*名称空间被UWP和WPF使用。下面是一个用于新命名空间的链接。为了更好地掌握UWP基础知识,您也可能喜欢阅读通用Windows平台应用指南

如注释部分所示,您需要的是一个以Windows.*开头的名称空间,所提供的链接应该会使您正确。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33706819

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档