调整 WriteableBitmap 的大小

2024-01-14

我创建了 Gray16 格式的 WriteableBitmap。我想将此 WriteableBitmap 调整为我已知的尺寸,并保留像素格式(Gray16)。

是否有人致力于调整 WriteableBitmap 的大小。请帮我。

我也在网上搜索了一下,发现http://writeablebitmapex.codeplex.com/ http://writeablebitmapex.codeplex.com/但这是由于程序集引用错误造成的。

请帮我。


您可以使用以下函数来调整大小writableBitmap:

WriteableBitmap resize_image(WriteableBitmap img, double scale)
{
    BitmapSource source = img;

    var s = new ScaleTransform(scale, scale);

    var res = new TransformedBitmap(img, s);

    return convert_BitmapSource_to_WriteableBitmap(res);
}

WriteableBitmap convert_BitmapSource_to_WriteableBitmap(BitmapSource source)
{
    // Calculate stride of source
    int stride = source.PixelWidth * (source.Format.BitsPerPixel / 8);

    // Create data array to hold source pixel data
    byte[] data = new byte[stride * source.PixelHeight];

    // Copy source image pixels to the data array
    source.CopyPixels(data, stride, 0);

    // Create WriteableBitmap to copy the pixel data to.      
    WriteableBitmap target = new WriteableBitmap(source.PixelWidth
        , source.PixelHeight, source.DpiX, source.DpiY
        , source.Format, null);

    // Write the pixel data to the WriteableBitmap.
    target.WritePixels(new Int32Rect(0, 0
        , source.PixelWidth, source.PixelHeight)
        , data, stride, 0);

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

调整 WriteableBitmap 的大小 的相关文章

  • 如何检查图像对象与资源中的图像对象是否相同?

    所以我试图创建一个简单的程序 只需在单击图片框中更改图片即可 我目前只使用两张图片 所以我的图片框单击事件函数的代码 看起来像这样 private void pictureBox1 Click object sender EventArgs
  • 无法使用已与其底层 RCW 分离的 COM 对象。在 oledb 中

    我收到此错误 但我不知道我做错了什么 下面的代码在backrgroundworker中 将异常详细信息复制到剪贴板 System Runtime InteropServices InvalidComObjectException 未处理 通
  • C++ 子字符串返回错误结果

    我有这个字符串 std string date 20121020 我正在做 std cout lt lt Date lt lt date lt lt n std cout lt lt Year lt lt date substr 0 4 l
  • WPF 中的调度程序和异步等待

    我正在尝试学习 WPF C 中的异步编程 但我陷入了异步编程和使用调度程序的困境 它们是不同的还是在相同的场景中使用 我愿意简短地回答这个问题 以免含糊不清 因为我知道我混淆了 WPF 中的概念和函数 但还不足以在功能上正确使用它 我在这里
  • 指针问题(仅在发布版本中)

    不确定如何描述这一点 但我在这里 由于某种原因 当尝试创建我的游戏的发布版本进行测试时 它的敌人创建方面不起作用 Enemies e level1 3 e level1 0 Enemies sdlLib 500 2 3 128 250 32
  • C#:如何防止主窗体过早显示

    在我的 main 方法中 我像往常一样启动主窗体 Application EnableVisualStyles Application SetCompatibleTextRenderingDefault false Application
  • C 预处理器库

    我的任务是开发源分析工具C程序 并且我需要在分析本身之前预处理代码 我想知道什么是最好的图书馆 我需要一些重量轻 便于携带的东西 与其推出自己的 为什么不使用cpp这是的一部分gcc suite http gcc gnu org onlin
  • Cython 和类的构造函数

    我对 Cython 使用默认构造函数有疑问 我的 C 类 Node 如下 Node h class Node public Node std cerr lt lt calling no arg constructor lt lt std e
  • 在 ASP.NET Core 3.1 中使用包含“System.Web.HttpContext”的旧项目

    我们有一些用 Net Framework编写的遗留项目 应该由由ASP NET Core3 1编写的API项目使用 问题是这些遗留项目正在使用 System Web HttpContext 您知道它不再存在于 net core 中 现在我们
  • vector 超出范围后不清除内存

    我遇到了以下问题 我不确定我是否错了或者它是一个非常奇怪的错误 我填充了一个巨大的字符串数组 并希望在某个点将其清除 这是一个最小的例子 include
  • 从路径中获取文件夹名称

    我有一些路c server folderName1 another name something another folder 我如何从那里提取最后一个文件夹名称 我尝试了几件事 但没有成功 我只是不想寻找最后的 然后就去休息了 Thank
  • 当操作繁忙时,表单不执行任何操作(冻结)

    我有一个使用 C 的 WinForms 应用程序 我尝试从文件中读取一些数据并将其插入数据表中 当此操作很忙时 我的表单冻结并且无法移动它 有谁知道我该如何解决这个问题 这可能是因为您在 UI 线程上执行了操作 将文件和数据库操作移至另一个
  • Discord.net 无法在 Linux 上运行

    我正在尝试让在 Linux VPS 上运行的 Discord net 中编码的不和谐机器人 我通过单声道运行 但我不断收到此错误 Unhandled Exception System Exception Connection lost at
  • 如何使我的表单标题栏遵循 Windows 深色主题?

    我已经下载了Windows 10更新包括黑暗主题 文件资源管理器等都是深色主题 但是当我创建自己的 C 表单应用程序时 标题栏是亮白色的 如何使我自己的桌面应用程序遵循我在 Windows 中设置的深色主题 你需要调用DwmSetWindo
  • 将文本叠加在图像背景上并转换为 PDF

    使用 NET 我想以编程方式创建一个 PDF 它仅包含一个背景图像 其上有两个具有不同字体和位置的标签 我已阅读过有关现有 PDF 库的信息 但不知道 如果适用 哪一个对于如此简单的任务来说最简单 有人愿意指导我吗 P D 我不想使用生成的
  • 32 位到 64 位内联汇编移植

    我有一段 C 代码 在 GNU Linux 环境下用 g 编译 它加载一个函数指针 它如何执行并不重要 使用一些内联汇编将一些参数推送到堆栈上 然后调用该函数 代码如下 unsigned long stack 1 23 33 43 save
  • 为什么 C# Math.Ceiling 向下舍入?

    我今天过得很艰难 但有些事情不太对劲 在我的 C 代码中 我有这样的内容 Math Ceiling decimal this TotalRecordCount this PageSize Where int TotalRecordCount
  • 为什么我收到“找不到编译动态表达式所需的一种或多种类型。”?

    我有一个已更新的项目 NET 3 5 MVC v2 到 NET 4 0 MVC v3 当我尝试使用或设置时编译出现错误 ViewBag Title财产 找不到编译动态表达式所需的一种或多种类型 您是否缺少对 Microsoft CSharp
  • ASP.NET MVC 6 (ASP.NET 5) 中的 Application_PreSendRequestHeaders 和 Application_BeginRequest

    如何在 ASP NET 5 MVC6 中使用这些方法 在 MVC5 中 我在 Global asax 中使用了它 现在呢 也许是入门班 protected void Application PreSendRequestHeaders obj
  • 限制C#中的并行线程数

    我正在编写一个 C 程序来生成并通过 FTP 上传 50 万个文件 我想并行处理4个文件 因为机器有4个核心 文件生成需要更长的时间 是否可以将以下 Powershell 示例转换为 C 或者是否有更好的框架 例如 C 中的 Actor 框

随机推荐

  • 绕过 SSO 的 cypress 脚本示例

    我正在设置新的 cypress 测试来测试 Dynamics 365 应用程序中的一些功能 但是 我留下了一个带有 url 的浏览器窗口https login microsoftonline com https login microsof
  • D3、SVG 和 textPath:如何向下移动文本?

    我有一个图表 其中使用 textPath 沿着其中一个路径编写了一些文本 但是 我的问题是 我需要文本位于文本路径的另一侧 即位于其下方 这是一个例子 我需要此处的文本位于纯蓝色区域内 也就是说 你实际上可以阅读它 这里的蓝色弧线是文本路径
  • python 2.7:无法在 Windows 上使用 pip“bash:pip:找不到命令”

    我正在尝试安装位于以下位置的 SciPy 堆栈 https scipy org stackspec html https scipy org stackspec html 我只允许有2个链接 尝试明智地使用它们 我意识到有更简单的方法可以做
  • git 如何处理文件系统中的移动文件?

    如果我在存储库中移动文件 例如从一个文件夹移动到另一个文件夹 git 是否足够聪明 知道这些是相同的文件 并且仅更新其对存储库中这些文件的引用 或者新提交实际上创建了这些文件 我问这个问题是因为我想知道 git 对于存储二进制文件有多大用处
  • 如何在 Web 表单数据绑定表达式中使用扩展方法?

    有人在数据绑定表达式中成功使用了扩展方法吗 假设我有一个名为 GetName 的扩展方法附加到 MyClass 在后面的代码中 我已经验证了这一点 MyClass myObject new MyClass MyClass GetName 但
  • 怎么能不把孩子当道具呢。相反,将子级嵌套在 React 的开始和结束标签之间?

    错误说 不要将孩子作为道具传递 相反 当我添加这部分 children 时 将子级嵌套在开始和结束标记之间 我不熟悉反应和脉轮所以有人可以帮助解决这个问题吗
  • Powershell 中的快速注册表搜索器

    我正在尝试将我在 Github 上找到的这个搜索注册表脚本合并到我的一个脚本中 https github com KurtDeGreeff PlayPowershell blob master Search Registry ps1 htt
  • 如何在 mongodb 类别中返回布尔值

    如果我有一个收藏Friends like id ObjectId abcdef1 user Jim user2 Jon id ObjectId abcdef2 user Jim user2 Fred id ObjectId abcdef3
  • Android Studio:NoClassDefFoundError

    我正在尝试构建一个使用 javamail 和 gmail 的 smtp 服务发送电子邮件的应用程序 但是当我运行它时 当我调用 Session getInstance 时它会崩溃 调试后发现这是一个关于 com sun mail util
  • python:绘制线框3D长方体

    我想在 python 中绘制 3d 长方体 输入 中心 中心3分 半径 3 个半径值 每个维度一个 理想情况下 它应该是一个线框图 我需要看看里面有什么 我不太确定如何去做 使用 python matplotlib 或 Mayavi 就可以
  • 有什么方法可以让 python 文件名不以完全限定名称结尾吗?

    假设我们有这样的文件结构 project ticklers kitten tickler py class KittenTickler puppy tickler py class PuppyTickler 假设 KittenTickler
  • 导入文本文件出现错误

    我有一个包含以下数据的文本文件 5298 10036 4 360 8 6128 11947 2 385 7 9472 18930 0 233 4 5056 9790 1 293 6 我使用以下代码读取该文件 file1 open test
  • 适用于 VISTA、7 及更高版本的 Windows API

    WinAPI Win32 之间有什么根本区别吗 利用新操作系统功能是否需要任何其他知识 过去编写过 Win32 应用程序的人是否可能会陷入任何陷阱 我不是在谈论 Silverlight 那是一个完全不同的蜡球 我还没有在工作中支持这一点的
  • 我可以安全地将 OpenMP 与 C++11 结合使用吗?

    OpenMP 标准仅考虑 C 98 ISO IEC 14882 1998 这意味着在 C 03 甚至 C 11 下没有支持使用 OpenMP 的标准 因此 任何使用 C gt 98 和 OpenMP 的程序都会在标准之外运行 这意味着即使它
  • 使用 rhino 的 JavaAdapter 的示例

    有人可以给我提供一个如何使用 Rhino 的 java 适配器在 java 脚本中扩展 java 类的示例吗 对于其他可能遇到此问题的人来说 有一个很好的例子here http my opera com sutabi blog puttin
  • 已达到 Google App Engine 前端实例时间限制

    我有一个使用 Google App Engine 免费选项托管的静态 html 网站 我没有任何流量可言 因为它是新网站 唯一的流量是我自己访问该网站 我注意到 只有 15 个主页请求 我的前端实例消耗时间为 5 按照这个速度 我的网站每天
  • 如何在Tableau中显示40+列?

    我正在尝试制作一份包含大约 40 列 Dims measure 的列表报告 但无法正确完成 该要求推动了Tableau通过利用其仅 16 列的限制来限制 我怎样才能完成这件事 我读了这个 http www tableausoftware c
  • Dot:如何用黑色轮廓装饰图形节点,同时用另一种颜色填充?

    我需要格式化点图的帮助 为了简化我的问题 我在这里有一个点代码 我通过点工具运行它 digraph G TestNode label Test Node shape egg style filled color yellow 结果是这样的
  • HTTParty 的内存问题和下载大文件

    这会导致 Ruby 的内存问题吗 我知道如果大小超过 10KB Open URI 就会写入 TempFile 但是 HTTParty 会在写入 TempFile 之前尝试将整个 PDF 保存到内存中吗 src Tempfile new fi
  • 调整 WriteableBitmap 的大小

    我创建了 Gray16 格式的 WriteableBitmap 我想将此 WriteableBitmap 调整为我已知的尺寸 并保留像素格式 Gray16 是否有人致力于调整 WriteableBitmap 的大小 请帮我 我也在网上搜索了