问题标签 [win2d]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 如何将 CanvasControl 的内容保存为图像文件
我正在使用Win2D制作一个类似绘画的程序。MyCanvasControl
包含用户绘制的一些文本、图像和一些线条。我想将其全部内容保存CanvasControl
为磁盘上的文件(以任何标准图像格式)。我想这样做,因为我想(稍后)在标准Image
控件中显示它。
我该怎么做?我尝试使用RenderTargetBitmap
加载CanvasControl
(下面的代码),但由于某种原因它会剪切图像并且只制作了一个小的水平顶部图像。
c# - 缩小画布但保持“可见”屏幕比例
我正在制作一个类似于绘画的程序,其中包含一个Canvas
和几个形状(用户可以绘制的线条、矩形等)。我希望用户能够在Canvas
很大程度上使用捏合手势来放大和缩小它(在合理的范围内,比如比默认大小Width
=1000 和Height
=1000 小/大 5 倍)。
使用ScaleTransform
来自控件的ManipulationDelta
. 但我希望它Canvas
和以前一样大小;意思是如果Canvas
占据了整个屏幕然后用户向内捏,Canvas
它的内容应该变小,但Canvas
仍然必须占据整个屏幕空间(所以一切看起来更小,但现在用户有更多空间来绘制形状)。
为此,我尝试根据缩放的数量增加Width
和。Height
Canvas
你会认为这段代码可以解决问题;我正在通过增加比例来抵消较小的比例尺寸,因此最终结果将是相同的 - 但没有缩小,但/Canvas
没有明显的增加。但是,我可以在调试输出中看到高度/宽度值已从默认值 5000 更改为 6000.13~。Width
Height
谁能告诉我我做错了什么?或者如果有更好的方法来做到这一点?请注意,这Canvas
并不是真正的内置的,而是CanvasControl
来自 Win2D 的,尽管这无关紧要。
graphics - 从 Kinect v2 传感器捕获图像
我是 Kinect 开发的新手。我正在使用 Kinect v2 并按照此处找到的 Face Basics 示例创建 Windows 商店应用程序。如果面部被接合,我希望能够捕捉面部图像。但是我无法从 Win2D 捕获图像CanvasControl
。我不确定我还能如何捕捉面部图像。
任何人都可以帮助我如何做到这一点?
c# - Win2D中Vector2类型的绘制方式不一致
我在 Windows 10 中迈出了进入 UAP 世界的第一步。
我正在尝试编写一个使用 Win2D 库在 IoT / R-PI2 设备上显示图形的小应用程序。
我有一个显示单行的绘图方法:
VS2015 社区版。IntelliSense 告诉我,我提供了带有参数“a”和“b”的不兼容的 vector2 类型。它期待 Windows.Foundation.Numerics.Vector2 而不是 System.Numerics.Vector2。
但是,该程序在桌面和 r-pi 上编译和运行都很好。
我的应用程序的一部分基于本教程,其中该方法显然需要System.Numeric.Verctor2
参数。
我在另一篇文章中读到,Windows 8.1 和 10 之间的 API 以及这个GitHub 问题已经发生了变化。
我还导入了这篇文章中提到的包,但它没有改变任何东西。
我不知道这篇文章是否与我的问题有关,但至少它提到了这两个命名空间的问题。
为什么 IntelliSense 将此代码突出显示为错误?VS中是否有错误?
我在这里做错什么了吗?
项目:https ://github.com/chrisi/IoTCanvas
一些相关的系统/IDE规范:
- Microsoft Visual Studio 社区 2015 版本 14.0.23107.0 D14REL
- Microsoft .NET 框架版本 4.6.00079
- 安装版本:社区
- Visual Basic 2015 00322-20000-00000-AA366
- 视觉 C# 2015 00322-20000-00000-AA366
- Visual C++ 2015 00322-20000-00000-AA366
- Windows Phone SDK 8.0 - ENU 00322-20000-00000-AA366
- 适用于 Visual Studio 包 1.0 的 Application Insights 工具
- JetBrains ReSharper Ultimate 2015.2 Build 103.0.20150818.200216
- 微软 Azure 移动服务工具 1.4
- NuGet 包管理器 3.2.0
- PreEmptive Analytics Visualizer 1.2
- SQL Server Compact &SQLite 工具箱 4.3.0
- 适用于通用 Windows 应用程序的 Visual Studio 工具 14.0.23309.00 d14oob
xaml - 如何使用 Win2D 创建一个模糊的背景对话框?
我正在使用 Win2D 库,我需要知道如何显示一个不透明的对话框,并在打开时显示模糊的透明背景,如 Windows 10 开始菜单和通知面板。我已经看到很多模糊图像的示例,但我真正想做的是像一个磨砂玻璃对话框。
这里显示了我想要做的一个例子,但我需要它用于 windows 应用程序而不是 wpf。
c# - Windows 商店应用导航
我正在制作 Pacman Windows 商店应用游戏。我使用 win2d 库制作动画。我在页面之间导航时遇到问题。这是我的主页,它创建了新游戏。
但是在游戏课结束时,我必须以某种方式回到我的主页。我尝试了很多方法,但它们对我不起作用。游戏类:
如何浏览页面?谢谢。
c# - 如何将实时高斯模糊效果应用于 UWP 应用程序?
最近在学习UWP,想搭建一个简单的demo,只想生成一个像Aero这样简单的现场模糊效果。它有时很有用(例如实时相机滤镜),所以我提出了这样的想法:
首先我导入了 win2D 库并在 RootGrid 上放置了一个CanvasAnimatedControl:
这个模糊层的资源是Frame:
并且每次帧更新时,MainFrame_LayoutUpdated方法尝试保存使用 RenderTargetBitmap 的快捷方式,但是 win2D 无法接收此对象作为其 CanvasBitmap,因此将其转换为 byte[] 并保存;
在BlurLayer_Draw方法中,只需刷新并应用模糊效果: private void BlurLayer_Draw(ICanvasAnimatedControl sender,
完成所有这些后,它就起作用了。但是这个解决方案真的很糟糕,win2D Canvas 被严重延迟了。那么,我应该怎么做才能让它高性能呢?
c# - Win2D CanvasBitmap 与 Microsoft.UI.Composition CompositionImage
编辑:
他们在最后一次构建中删除了 CompositionImage ...
我想知道 Win2DCanvasBitmap
和 Microsoft.UI.Composition之间的区别CompositionImage
。
在这两种情况下,我都能够显示图像,但我真的不知道/理解这两种方法之间的区别。
CanvasBitmap
方法:
XAML:
代码:
CompositionImage
方法:
XAML:
代码:
有什么不同?最好的方法是什么?
为了把事情放在上下文中,我有一个显示很多小图像的应用程序。我需要应用程序内存不足并快速绘制图像。
谢谢,阿德里安。
c# - Win2d 模糊在 C++ 中并不总是有效
我正在尝试用 C++ 编写 WP 应用程序,并且在模糊 .png 图像时遇到了一个奇怪的问题。它有时有效,有时无效。当它不起作用时,它看起来好像图像是不可见的。只是为了确保我在 C# 中实现了同样的东西并且它工作得很好。这是我的 C# 代码
在 C++ 中或多或少(我希望)等价
通过按下按钮调用方法。知道可能出了什么问题吗?
c++ - 将 IBuffer 转换为字节数组 C++
我搜索了论坛并遇到了这个从 Windows::Storage::Streams::IBuffer 中获取字节数组,但我无法从中得到任何东西。对我来说,这可能有点太令人费解了。
我的问题的症结在于我有一个调用 RenderTargetBitmap->GetPixelsAsync() 的 IBuffer。我现在需要使用此处提供的函数从该数据创建 CanvasBitmap http://microsoft.github.io/Win2D/html/M_Microsoft_Graphics_Canvas_CanvasBitmap_CreateFromBytes.htm
我发现无法将数据从 IBuffer 获取到可以工作的数组中。我找到了一种将数据放入向量的方法
但是从这一点开始,我发现没有办法将它放入数组中。我试图使用如何在 C++ 中将向量转换为数组中的所有想法,但无济于事。任何帮助将不胜感激