在 Windows Phone 8.1 中共享渲染到位图图像

2023-11-27

我想在 Windows Phone 8.1 中将画布作为图像共享。为此,我首先将画布转换为图像,然后共享它。我尝试了我的 Windows 8.1 代码。没有发生错误,但共享源应用程序中没有图像,仅出现描述和标题。

这是代码:

private async void DataTransferManager_DataRequested(DataTransferManager sender, DataRequestedEventArgs e)
        {
            e.Request.Data.Properties.Title = "My app";
            e.Request.Data.Properties.Description = "app description";

            DataRequest request = e.Request;

            // Request deferral to wait for async calls
            DataRequestDeferral deferral = request.GetDeferral();

            // XAML objects can only be accessed on the UI thread, and the call may come in on a background thread
            await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, async () =>
            {
                try
                {

                    RenderTargetBitmap renderTargetBitmap = new RenderTargetBitmap();
                    InMemoryRandomAccessStream stream = new InMemoryRandomAccessStream();
                    // Render to an image at the current system scale and retrieve pixel contents
                    await renderTargetBitmap.RenderAsync(SavedCanvas);
                    var pixelBuffer = await renderTargetBitmap.GetPixelsAsync();

                    // Encode image to an in-memory stream
                    var encoder = await BitmapEncoder.CreateAsync(BitmapEncoder.PngEncoderId, stream);

                    encoder.SetPixelData(
                        BitmapPixelFormat.Bgra8,
                        BitmapAlphaMode.Ignore,
                        (uint)renderTargetBitmap.PixelWidth,
                        (uint)renderTargetBitmap.PixelHeight,
                        DisplayInformation.GetForCurrentView().LogicalDpi,
                        DisplayInformation.GetForCurrentView().LogicalDpi,
                        pixelBuffer.ToArray());

                    await encoder.FlushAsync();


                    request.Data.Properties.Thumbnail = RandomAccessStreamReference.CreateFromStream(stream);

                    //  e.Request.Data.Properties.Thumbnail=(RandomAccessStreamReference.CreateFromStream(stream));
                    // Set content of the DataProviderRequest to the encoded image in memory
                    request.Data.SetBitmap(RandomAccessStreamReference.CreateFromStream(stream));
                }
                finally
                {
                    deferral.Complete();

                }
            });

        }

enter image description here

enter image description here

这在 Windows 8.1 中工作得很好,我认为在这里也应该工作得很好。在消息、OneNote 等共享应用程序中看不到图像。

需要帮助。谢谢。


您将位图传递给不支持位图的应用程序,则该位图将被忽略。通常需要发送位图文件。 您可以保存文件,然后加载该存储文件,也可以在内存中创建一个存储文件。 出于测试目的,我会将文件保存到 StorageFile,确保文件可以在应用程序中正确显示,然后确保它在共享时正常工作。 该示例可能会有所帮助。http://code.msdn.microsoft.com/windowsapps/File-access-sample-d723e597

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Windows Phone 8.1 中共享渲染到位图图像 的相关文章

  • boost::asio + std::future - 关闭套接字后访问冲突

    我正在编写一个简单的 TCP 客户端来发送和接收单行文本 异步操作由 std future 处理 以便于超时阻塞查询 不幸的是 我的测试应用程序在破坏服务器对象时因访问冲突而崩溃 这是我的代码 TCP客户端 hpp ifndef TCPCL
  • c和java语言中的换行符

    现在行分隔符取决于系统 但在 C 程序中我使用 n 作为行分隔符 无论我在 Windows 还是 Linux 中运行它都可以正常工作 为什么 在java中 我们必须使用 n 因为它与系统相关 那么为什么我们在c中使用 n 作为新行 而不管我
  • 如何在 C++ 中的文件末尾添加数据?

    我已按照网上的说明进行操作 此代码应该将输入添加到文件 数据库 的末尾 但当我检查时 数据会覆盖现有数据 请帮忙 这是我的代码 int main string name string address string handphone cou
  • 如何使用MemoryCache代替Timer来触发一个方法?

    以下方法通过等待已运行操作的结果来处理并发请求 对数据的请求可能会使用相同 不同的凭据同时出现 对于每组唯一的凭据 最多可以有一个GetCurrentInternal呼叫正在进行中 当准备就绪时 该呼叫的结果将返回给所有排队的服务员 pri
  • 如何读取扩展文件属性/文件元数据

    因此 我按照教程使用 ASP net core 将文件 上传 到本地路径 这是代码 public IActionResult About IList
  • std::cout 和 std::wcout 有什么区别?

    在c 中 有什么区别std cout and std wcout 它们都控制流缓冲区的输出或将内容打印到控制台 或者它们只是相似吗 它们作用于不同的字符类型 std cout uses char作为字符类型 std wcout uses w
  • 如何为 C 分配的 numpy 数组注册析构函数?

    我想在 C C 中为 numpy 数组分配数字 并将它们作为 numpy 数组传递给 python 我可以做的PyArray SimpleNewFromData http docs scipy org doc numpy reference
  • ASP.NET:获取自 1970 年 1 月 1 日以来的毫秒数

    我有一个 ASP NET VB NET 日期 我试图获取自 1970 年 1 月 1 日以来的毫秒数 我尝试在 MSDN 中寻找方法 但找不到任何东西 有谁知道如何做到这一点 从 NET 4 6 开始 该方法ToUnixTimeMillis
  • 关于在 Windows 上使用 WiFi Direct Api?

    我目前正在开发一个应用程序 我需要在其中创建链接 阅读 无线网络连接 在桌面应用程序 在 Windows 10 上 和平板电脑 Android 但无关紧要 之间 工作流程 按钮 gt 如果需要提升权限 gt 创建类似托管网络的 WiFi 网
  • 单击 form2 上的按钮触发 form 1 中的方法

    我对 Windows 窗体很陌生 我想知道是否可以通过单击表单 2 中的按钮来触发表单 1 中的方法 我的表格 1 有一个组合框 我的 Form 2 有一个 保存 按钮 我想要实现的是 当用户单击表单 2 中的 保存 时 我需要检查表单 1
  • 使用 JNI 从 Java 代码中检索 String 值的内存泄漏

    我使用 GetStringUTFChars 从使用 JNI 的 java 代码中检索字符串的值 并使用 ReleaseStringUTFChars 释放该字符串 当代码在 JRE 1 4 上运行时 不会出现内存泄漏 但如果相同的代码在 JR
  • 如何将整数转换为 void 指针?

    在 C 中使用线程时 我面临警告 警告 从不同大小的整数转换为指针 代码如下 include
  • 如何将自定义 JSON 文件添加到 IConfiguration 中?

    我正在使用 asp net Autofac 我正在尝试加载自定义 JSON 配置文件 并基于该文件创建 实例化 IConfiguration 实例 或者至少将我的文件包含到默认情况下构建的 IConfiguration asp net 中
  • 将 log4net 与 Autofac 结合使用

    我正在尝试将 log4net 与 Autofac 一起使用 我粘贴了这段代码http autofac readthedocs org en latest examples log4net html http autofac readthed
  • 等待线程完成

    private void button1 Click object sender EventArgs e for int i 0 i lt 15 i Thread nova new Thread Method nova Start list
  • 私有模板函数

    我有一堂课 C h class C private template
  • HttpWebRequest 在第二次调用时超时

    为什么以下代码在第二次 及后续 运行时超时 代码挂在 using Stream objStream request GetResponse GetResponseStream 然后引发 WebException 表示请求已超时 我已经尝试过
  • 有没有办法强制显示工具提示?

    我有一个验证字段的方法 如果无法验证 该字段将被清除并标记为红色 我还希望在框上方弹出一个工具提示 并向用户显示该值无效的消息 有没有办法做到这一点 并且可以控制工具提示显示的时间 我怎样才能让它自己弹出而不是鼠标悬停时弹出 If the
  • Linq-to-entities,在一个查询中获取结果+行数

    我已经看到了有关此事的多个问题 但它们已经有 2 年 或更长 的历史了 所以我想知道这方面是否有任何变化 基本思想是填充网格视图并创建自定义分页 所以 我还需要结果和行数 在 SQL 中 这将类似于 SELECT COUNT id Id N
  • 在客户端系统中安装后桌面应用程序无法打开

    我目前正在使用 Visual Studio 2017 和 4 6 1 net 框架 我为桌面应用程序创建了安装文件 安装程序在我的系统中完美安装并运行 问题是安装程序在其他计算机上成功安装 但应用程序无法打开 edit 在客户端系统中下载了

随机推荐

  • 使用java创建CSV文件

    我将使用 java 创建 CSV 文件 这是代码的一部分 try FileWriter writer new FileWriter sFileName writer append Title for StoredArticle sa3 hi
  • 按钮的 OnClickListener 上出现 NullPointerException

    我正在为人工智能学期项目编写 Android 游戏应用程序 我在主类的第 38 行收到 NullPointerException 它是启动屏幕中新游戏按钮的 setOnClickListener 相关部分 WW3Activity 类 pub
  • 量角器找不到角度

    我似乎无法让 Protractor 意识到 Angular 已加载并正在运行 当它打开 Chrome 时 我的应用程序会在浏览器中完全加载 因此我知道 Angular 已加载并正确运行 配置文件 exports config seleniu
  • var 在 Java 中做什么?

    我的一个朋友注意到 var
  • 我需要服务哪些 Android ABI(CPU 架构)?

    我决定为不同的 ABI 上传多个 APK 以缩小我的 apk 文件大小大规模地 因此我用android gt splits gt abi gt enable true 应用程序级别build gradle 我遇到过这些不同的 APK 风格
  • 检查列值是否位于其他两个列值之间(范围)

    我有一个如下所示的数据框 Dataframe X id number found 1 5225 NA 2 2222 NA 3 3121 NA 我有另一个数据框 如下所示 数据框 Y id number1 number2 1 4000 600
  • 在 Android Studio 中生成签名 APK 时,签名版本 - V1(Jar 签名)和 V2(完整 APK 签名)之间的区别?

    请至少选择一个要在 Android Studio 2 3 中使用的签名版本 现在 在 Android Studio 中生成签名的 APK 时 它显示两个选项 复选框 即 1 V1 Jar Signature and 2 V2 Full AP
  • IIS7 下超出 Web 配置大小限制 0x80070032

    我有一个web config文件在我当前在 IIS7 上运行的解决方案中相当大 它在我的开发服务器上运行完美 但是我遇到了错误0x80070032 配置错误无法读取配置文件 因为它超出了最大文件大小 我当前的解决方案使用一个非常大的web
  • XGBoost 最佳迭代

    我正在使用 XGBoost 算法运行回归 clf XGBRegressor eval set X train y train X val y val early stopping rounds 10 n estimators 10 verb
  • 将列添加到包含其他列值列表的 pandas DataFrame

    我有一个 DataFrame 需要向其中添加一列 该列必须是两个值的列表 当前表 lat long other value 0 50 50 x 1 60 50 y 2 70 50 z 3 80 50 a 需要的表 lat long othe
  • 如何解决嵌套映射函数中的 SPARK-5063

    RDD 转换和操作只能由驱动程序调用 不能在其他转换内部调用 例如 rdd1 map x gt rdd2 values count x 无效 因为值转换和计数操作无法在 rdd1 map 转换内部执行 有关更多信息 请参阅 SPARK 50
  • 在64位linux上从32位模式切换到64位(长模式)

    我的程序在 x86 64 CPU 64位操作系统 ubuntu 8 04 上以32位模式运行 是否可以在用户模式下暂时切换到64位模式 长模式 如果是这样 怎么办 背景故事 我正在编写一个与32位模式程序链接的库 因此它在启动时必须是32位
  • React/TypeScript - “Dispatch>”代表什么?

    我正在用 TypeScript 编写 React 组件的前端测试 由于代码来自更有经验的程序员 因此某些数据类型对我来说似乎有点新 现在我有了一个使用 Dispatch 作为数据类型定义的道具 我注意到使用 useState Hook 的
  • 使用 css3 反转边框半径[重复]

    这个问题在这里已经有答案了 自从 3 小时以来 我一直在尝试寻找如何反转边框半径 我在 css3 中看到了专门为此目的的一个小代码 但我找不到它 你一定知道我正在使用 wordpress 不幸的是 有想法吗 如果您的选项卡具有纯色背景色 您
  • vim 折叠搞乱了语法高亮

    我使用 vim 作为 LaTeX 并且使用 Latex suite 它为我提供了很好的语法突出显示和折叠 但在大文件中 语法突出显示变得 混乱 如果我打开所有折叠 语法突出显示就会正常 但我希望它始终 正常工作 我似乎记得一个选项会增加用作
  • 如何查询 Active Directory 对象的有效权限?

    我试图以编程方式确定当前用户是否对给定的 Active Directory 对象具有某些权限 特别是在本例中 我试图确定用户是否具有其他 Exchange 用户或通讯组列表对象的 发送为 权限 我已经弄清楚如何访问ntSecurityDes
  • 如何从充当服务器的 iPhone 流式传输视频?

    我正在开发一款适用于 iOS 的应用程序 其中一台 iPhone 必须将其摄像头录像实时传输到另一台 iPhone 为简单起见 两台 iPhone 都位于同一个 Wi Fi 网络中 流媒体应该可以工作without物理互连 例如用于将流路由
  • 对通用 Java 类中的通用变量使用数学运算符

    我正在尝试编写一些代码 使我能够对 T extends Number 对象实例执行基本数学运算 它需要能够处理任何数字类型的子类Number 我知道下面的一些类型Number have add 内置方法 有些甚至有 multiply 方法
  • 转发声明未命名结构的 typedef [重复]

    这个问题在这里已经有答案了 可能的重复 未命名结构的前向声明 如果我有 typedef struct tagPAGERANGE int iFirstPage int iLastPage PAGERANGE 我可以这样转发声明 struct
  • 在 Windows Phone 8.1 中共享渲染到位图图像

    我想在 Windows Phone 8 1 中将画布作为图像共享 为此 我首先将画布转换为图像 然后共享它 我尝试了我的 Windows 8 1 代码 没有发生错误 但共享源应用程序中没有图像 仅出现描述和标题 这是代码 private a