问题标签 [microsoft.ink]

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 回答
2019 浏览

javascript - 在不使用 HTML5 Canvas 的情况下将图像转换为 base64

首先,一点背景:

对于这篇序言的冗长性质,我提前道歉;但是,它可能有助于提供不特定于问题性质的替代解决方案。

我有一个使用嵌入式 WinForm 用户控件的 ASP.NET MVC 应用程序。这些控件通过Microsoft.Ink库为 TabletPC 提供“墨水覆盖”支持。由于 IE8 企业标准,它们是一种不幸的必需品;否则,HTML5 Canvas 将是解决方案。

无论如何,图像 URLInkPicture通过<PARAM>.

中的相应属性UserControl获取该 URL,调用执行 的方法HttpWebRequest,并将返回的图像放置在InkPicture.

问题

这行得通,但是在这个过程中有很多开销会显着延迟我的网页加载(15 张图片需要 15 秒......不理想)。由于 FileIO 权限问题(无论是否完全信任,我未能成功消除该问题),因此在这种情况下执行Image img = new Bitmap(url);UserControl操作不起作用。


初步解决方案

尽管使用canvas不是当前的选项,但我决定使用它来测试解决方案。我会在 javascript 中加载每个图像,然后使用canvasandtoDataUrl()来获取 base64 数据。然后,我没有将 URL 传递给 theUserControl并让它完成所有的工作,而是将 base64 数据作为 a 传递<PARAM>。然后它会快速将该数据转换回图像。

15 张图像的 15 秒现在不到 3 秒。因此,我开始寻找适用于 IE7/8 的 image->base64 解决方案。


以下是一些额外的要求/限制:

  • 解决方案不能有外部依赖项(即 $.getImageData)。
  • 它需要 100% 封装,以便便携。
  • 图片的来源和数量是可变的,它们必须是 URL 格式(base64 数据不是一个选项)。

我希望我已经提供了足够的信息,并且感谢您提供的任何指导。

谢谢。

0 投票
1 回答
412 浏览

cruisecontrol.net - 测试在 CruiseControl 中失败,但在我运行它们时成功

我在 Windows 7 Pro 专用构建机器上设置了 CruiseControl.NET (v 1.6.7981.1)。我有一个 VS2012 项目设置来构建然后使用 Gallio.Echo.exe 运行 MBUnit 测试。我的问题是,当 CC.NET 运行这些测试时,其中一些测试失败了,但是当我从命令行运行完全相同的程序时,使用与 CC 任务中指定的参数完全相同的参数,在包含测试,每一个测试都通过。我似乎无法弄清楚发生了什么。谁能解释为什么某些测试在 CruiseControl 运行时可能会失败,但在我运行时会通过?我已经尝试在 CruiseControl 服务运行的同一帐户下运行它们,所以我认为这不是权限问题。我什至尝试将其关闭再打开(机器)。

CruiseControl 以具有管理员权限的登录作为 Windows 服务运行。我们的 VS 项目是一个 .NET 4.0 桌面应用程序,但我们包含了一个以前为 .NET 3.5 构建的旧项目,升级到 .NET 4.0。这个项目引用了 Microsoft.Ink 程序集(v 6.1.0.0),我已经确认这是在构建机器上的 GAC 中。实际上,失败的测试正在测试使用此程序集的应用程序的一部分。我们计划稍后替换这个遗留项目,但现在必须接受它。

这是 CruiseControl 中的测试报告中的错误:

System.Runtime.InteropServices.COMException:灾难性故障(来自 HRESULT 的异常:0x8000FFFF(E_UNEXPECTED))错误代码:Microsoft.Ink.InkOverlayClass.set_Enabled(布尔收集)在 Microsoft.Ink.InkPicture.set_InkEnabled(布尔值)的 -2147418113 .vb:第 1201 行.......

这是失败的(VB.NET)代码

除了这个(发生 COMException: ErrorCode = -2147287036)和这个(仅在 VS 2010 上运行时:COMException: Catastrophic Failure: Error Code: -2147418113)之外,我似乎找不到任何关于错误的信息发现很有帮助,因为我没有分配资源,当我在 VS2012 中运行该程序时,我没有遇到任何问题。真正的关键是(如前所述)当我使用与 CruiseControl 配置中指定的参数相同的参数从命令提示符(以运行 CruiseControl 服务的同一用户登录)运行测试时,测试工作完美。

Gallio.Echo.exe /rnf:test-report /rt:Xml-Inline /v:Quiet "C:\My project\testAssembly.dll"

任何帮助将非常感激。

0 投票
1 回答
210 浏览

windows-8 - 适用于 Windows 8 的 Windows 墨迹 - 如何设置笔纹理

任何人都知道是否可以将自定义纹理设置为 Windows.UI.Input.Inking 绘图笔触?如果可能,该怎么做?

0 投票
1 回答
484 浏览

windows-8 - 如何使用 Ink 和 WinRT 识别基本形状

有没有一种简单的方法可以使用 WinRT 进行形状识别?
使用 WPF 很简单,我可以只使用 InkAnalysis,但它似乎在 WinRT(?) 中不可用。我希望能够绘制圆形、矩形和正方形的基本形状,并且我希望能够识别它们。

有什么建议么?

0 投票
2 回答
168 浏览

windows-8 - 有没有办法检测笔是否靠近 WinRT 中的屏幕

我希望能够检测我是否有一支笔靠近屏幕。
例如,如果我用笔打开它,我想显示一个不同的应用栏。
另外,当我将笔靠近它(不一定要触摸它)时,我想在屏幕上显示其他内容。

/吉米

0 投票
1 回答
926 浏览

c# - 手写笔墨水压力不工作

我正在尝试将 Ink 功能应用于我的 Windows Store 应用程序。

基于MSDN 中的 Simplified Ink Sample(注意我使用 C# 示例),我修改了 Scenario1.xaml.cs 中的第 51 行,drawingAttributes.IgnorePressure = false;以便使用 Stylus Pressure。

仅供参考,下面是第 46~52 行的代码块。

但笔画粗细并没有像我预期的那样改变。我drawingAttributes.PenTip = PenTipShape.Circle;在第 51 行之后立即添加,但压力不受影响。

我错过了什么吗?我的手写笔与 Fresh Paint 应用程序或其他压力敏感应用程序(我使用的是联想 x230t 平板电脑)正常工作。

0 投票
1 回答
326 浏览

c# - 如何限制 microsoft inkoverlay 在输入控件(如(文本框、复选框)中绘制?

我想限制InkOverlay在文本框和复选框中绘图,但我需要在标签中绘图。如何实现这一点。

如果我设置

它正在申请所有控件。我需要在标签和图片控件上绘制。

0 投票
2 回答
466 浏览

directx - 使用 directX 渲染墨水

如何使用 DierctX 在屏幕上渲染墨水?

我知道 C# 中的 InkManager 用于在画布上呈现墨水。我正在尝试使用 SharpDX 做类似的功能。但我没有任何示例代码可供参考。

是否有任何教程或示例代码解释了使用 directX 渲染墨水?一切都好,无论是 C++ 还是 C#

0 投票
1 回答
1159 浏览

windows-phone-8 - Windows Phone - WriteableBitmap.Render 不适用于 InkPresenter

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

这是我的代码:

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

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

0 投票
1 回答
528 浏览

windows-phone-8 - 如何细化inkpresenter WP8的笔画

我正在使用墨水演示器来绘制笔画。但问题是在绘制曲线时,它会绘制锯齿线。直线没有问题。这就是我所做的......我不知道在哪里进行更改以使线条更平滑。