问题标签 [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.

0 投票
1 回答
719 浏览

c++-cli - 表达式必须具有类类型(使用 Win2D 的 C++ Windows 8 应用程序中的初学者错误)

我正在尝试在 Windows 8 应用程序中开始使用 Win2D。我只是试图将库安装到我的新项目并使用其中一个函数画一个圆圈,但由于我不明白的错误而无法继续。

下面显示的是在 Mainpage.xaml.cpp 文件中自动创建的事件处理程序。我的错误是函数内部单行代码开头的'args'部分带有红色下划线。将鼠标悬停在“args”下的红线上会显示消息“表达式必须具有类类型”。有人能帮忙吗?


如果需要,这是完整的代码

在 MainPage.xaml.h

在 MainPage.xaml

在 MainPage.xaml.cpp(完整代码)

0 投票
2 回答
1002 浏览

c# - 如何将蒙版应用到 CompositionBrush

如何应用 alpha 蒙版或剪贴蒙版,使除矩形之外的所有内容都变得模糊?

我照常做:GraphicsEffect->EffectFactory->Brush->Set to SpriteVisual

在此处输入图像描述

0 投票
1 回答
1064 浏览

c# - 使用 Win2D 绘制可编辑和可选择的形状?

我以前用过System.Windows.Shapes添加ShapesCanvas-controls。它们可以像对象一样使用,并且在我编辑字段时视觉效果会发生变化。我还可以为点击等添加事件处理程序。

我需要这种功能,方法是使用Win2D. 有什么简单的方法吗?

我正在尝试创建一个像这样的简单应用程序:

  • 用户可以在画布上绘制形状
  • 可以通过单击来选择和突出显示形状
  • 可以操纵选定的形状(颜色、不透明度、宽度、高度、位置等)
  • 形状可以相互叠加(Z-index)

我想一种方法是使用-methods创建自定义Shape类。Draw然后我只会操纵对象 - 变化将通过 - 方法反映到视觉效果Draw。在每次画布失效时,将再次绘制对象。

有任何想法吗?

0 投票
1 回答
310 浏览

uwp - 如何在uwp中同时画两个笔画?

我尝试从中画两条线,PointerMoveEventCanvas结果不如使用InkCanvas.

在此处输入图像描述 在此处输入图像描述

有没有可能InkCanvas达到这个目的?

0 投票
1 回答
142 浏览

c# - 将 Win2D.win81 安装为 NuGet 包。目标框架不兼容

所以我目前正在尝试通过 VS2015s 包管理器将 Win2D.win81 安装为 NuGet 包。我的目标是重写一个简单的图形库,以便现在使用 WPF 控件而不是 winforms,并从 Win2D 与 GDI+ 的性能中受益。

为此,我创建了一个新的 ClassLibrary 项目并添加了一个 userControl (WPF)。现在我正在尝试通过包管理器将 Win2D 添加到项目中,但它一直拒绝告诉我包不针对我的目标框架。如果我没有尝试将我的项目设置为 .Net 3.5 到 4.6.2 以及介于两者之间的任何版本并且它总是拒绝安装,那么这没什么大不了的。

来自 PM 的 Excat 错误:

无法安装软件包“Win2D.win81 1.20.0”。您正在尝试将此包安装到以“.NETFramework,Version=v4.6”为目标的项目中,但该包不包含任何与该框架兼容的程序集引用或内容文件。

0 投票
1 回答
580 浏览

c# - 如何使用 Win2D(行间距)计算 FontFamily 的高度?

我想知道如何使用 Win2D 在 Window 通用应用程序中计算给定字体的高度(及其属性,如大小、重量、样式......)。

我以前使用过 a CanvasTextLayout,但它需要一个文本才能工作,就像这一行:

var ctl = new CanvasTextLayout(session, "Some text", new CanvasTextFormat(), constraintWidth, constraintHeight);

就我而言,我不会有文本,因为我正在寻找的是给定字体的所有字形(及其样式、大小、重量......)都适合的高度。

编辑:我也尝试过这个CanvasFontFace类,但它似乎没有任何公共构造函数。

0 投票
1 回答
136 浏览

geometry - Win2D 只画几何图形的某些笔画?

我目前正在使用 CanvasPathBuilder 用线条、弧线和贝塞尔曲线构建 Win2D CanvasGeometry。我需要能够只为其中一些绘制笔画,其他需要参与后续段的放置但不被绘制。在 Win2D 中有没有办法做到这一点?

0 投票
1 回答
97 浏览

uwp - DrawGlyphRun 与样式模拟?

我正在使用 Win2D 开发 UWP 应用程序,我需要非常精细地控制文本的布局,因此我使用的是 DrawGlyphRun。我看不出有任何方法可以让 DrawGlyphRun 使用模拟斜体和/或粗体,有没有办法做到这一点?

0 投票
1 回答
1796 浏览

c# - 在 UWP 中保存图像时访问被拒绝。访问被拒绝。(来自 HRESULT 的异常:0x80070005 (E_ACCESSDENIED))

我正在开发 Windows 10 SDK 上的通用 Windows 应用程序,以在图像中识别的面上绘制矩形。

我正在使用 Win2D 编辑图片并在其上绘制矩形。我可以从图片库中读取文件,但是当我在编辑后尝试保存图像时,会出现以下错误:

访问被拒绝。(来自 HRESULT 的异常:0x80070005 (E_ACCESSDENIED))

以下是我用来在图像上绘制矩形的方法:

在 offscreen.SaveAsync 的最后一行抛出异常。

上述错误的堆栈跟踪是:

在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务) 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) 在 System.Runtime.CompilerServices.TaskAwaiter.GetResult() 在 identifyFacesApp.IdentifiedFaces.d__5.MoveNext()

我已经在 appmanifest 文件中设置了访问图片文件夹的权限。

我是否需要设置一些额外的权限才能将图像保存在磁盘中。

当我尝试将图像保存在任何其他位置时,也会发生同样的错误。

0 投票
1 回答
171 浏览

c# - Windows SDK 10240 上的投影效果

我知道有很多方法可以通过周年更新和以前的 SDK 使用 Windows.Composition 添加阴影。不幸的是,我必须坚持使用 10240 版本,并且此 API 不可用。我尝试使用 Win2D 但没有成功。关于如何向 Grid XAML 元素添加阴影的任何想法?