如何使用 C# 调整动画 gif 图像的大小?

2024-02-06

有没有一种方法可以使用 C# 创建动画 gif 图像的副本?

我想要的是使用用户提供的高度和宽度参数生成给定 gif 图像的副本。我已经尝试了几个小时来完成此任务,但生成的图像没有保留原始动画。


我花了一段时间才找到这个问题,但终于找到了解决方案:

Install 魔法网通过 NuGet,可以在此处找到许可证:
https://magick.codeplex.com/license https://magick.codeplex.com/license

示例代码:

var newWidth = 100;
using (var collection = new MagickImageCollection(new FileInfo(@"C:\test.gif")))
{
    collection.Coalesce();
    foreach (var image in collection)
    {
        image.Resize(newWidth, 0);
    }
    collection.Write(@"c:\resized.gif");
}

根据我的测试,这适用于 Alpha 通道和不同的帧速率。看起来很完美!

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

如何使用 C# 调整动画 gif 图像的大小? 的相关文章

  • 我应该把 try/catch 和“using”语句放在哪里? [复制]

    这个问题在这里已经有答案了 可能的重复 try catch using 正确的语法 https stackoverflow com questions 4590490 try catch using right syntax 我想try c
  • JSON.Net 反序列化返回“null”

    我正在使用 JSON Net 反序列化 JSON 字符串 JSON 字符串是 string testJson Fruits Apple color red size round Orange Pro
  • 锁定 ASP.NET 应用程序变量

    我在 ASP NET 应用程序中使用第三方 Web 服务 对第 3 方 Web 服务的调用必须同步 但 ASP NET 显然是多线程的 并且可能会发出多个页面请求 从而导致对第 3 方 Web 服务的同时调用 对 Web 服务的调用封装在自
  • 进程退出后 POSIX 名称信号量不会释放

    我正在尝试使用 POSIX 命名信号量进行跨进程同步 我注意到进程死亡或退出后 信号量仍然被系统打开 在进程 打开它 死亡或退出后是否有办法使其关闭 释放 早期的讨论在这里 当将信号量递减至零的进程崩溃时 如何恢复信号量 https sta
  • MFC CList 支持复制分配吗?

    我在 MSVC 中查找了 CList 定义afxtempl h http www cppdoc com example mfc classdoc MFC AFXTEMPL H html并记录在MSDN http msdn microsoft
  • 将 OpenCV Mat 转换为数组(可能是 NSArray)

    我的 C C 技能很生疏 OpenCV 的文档也相当晦涩难懂 有没有办法获得cv Mat data属性转换为数组 NSArray 我想将其序列化为 JSON 我知道我可以使用 FileStorage 实用程序转换为 YAML XML 但这不
  • 将下拉列表与字典绑定

    我将字典绑定到下拉列表 举例来说 我的字典中有以下项目 Test1 123 Test2 321 我希望下拉文本采用以下格式 Test1 Count 123 Test2 Count 321 我沿着以下路径走 但没有运气 MyDropDown
  • while循环中的变量初始化

    我有一个可以分块读取文件的函数 public static DataObject ReadNextFile 数据对象看起来像这样 public DataObject public string Category get set And ot
  • C# 编译器数字文字

    有谁知道 C 编译器数字文字修饰符的完整列表 默认情况下 声明 0 使其成为 Int32 声明 0 0 使其成为 Double 我可以在末尾使用文字修饰符 f 来确保某些内容被视为 Single 例如像这样 var x 0 x is Int
  • 静态类与类的实例

    我有一个静态类 用于访问我的公共属性 整个应用程序的全局属性 和我在应用程序运行期间使用的方法 例如 我在静态类中设置了一些属性 并且在应用程序运行时我可以从属性中获取值 但我可以使用单例模式创建非静态类并以相同的方式使用它 问题 对于我的
  • 你好,我最近正在开发我的新游戏,我遇到了*无限跳跃*的问题

    所以基本上当我按跳跃 空格键时我会跳跃但是如果我连续按空格键它 只是跳啊跳啊跳等等 我不想要我只想它跳一次 code if Input GetKeyDown space isGrounded velocity y Mathf Sqrt ju
  • 如何在 C# 中获取 Json 数组?

    我有一个像这样的 Json 字符串 我想将它加载到 C 数组中 当我尝试这样做时 我收到异常 我的字符串 customerInformation customerId 123 CustomerName Age 39 Gender Male
  • C++ 到 C# 事件处理

    所以我有我的C WinForm 应用程序 我从中调用我的C CLI MFC dll图书馆 但也有一些events在我的 C 库上 甚至此事件也发生在该库的本机 非 CLI 部分 我需要从我的 C 应用程序调用一些代码 并获取一些有关此事件的
  • doxygen c++:记录由“using”声明公开的私有继承成员

    作为一个例子 我有以下课程 class A public void methodOne class B private A public Brief description using A methodOne 我还没有找到强制 doxyge
  • EnumDisplayDevices 与 WMI Win32_DesktopMonitor,如何检测活动监视器?

    对于我当前的 C 项目 我需要为在大量计算机上连接并处于活动状态的每个监视器检测一个唯一的字符串 研究指出了两种选择 使用 WMI 并查询 Win32 DesktopMonitor 以获取所有活动监视器 使用 PNPDeviceID 来唯一
  • C 中使用 getrandom 实现随机浮点数

    我试图生成一个介于 0 和 1 之间的随机浮点数 无论是在 0 1 还是 0 1 对我来说都不重要 网上关于此的每个问题似乎都涉及rand 呼叫 播种time NULL 但我希望能够每秒多次调用我的程序 并每次都获得不同的随机数 这引导我找
  • 浮点字节序?

    我正在为实时海上模拟器编写客户端和服务器 并且由于我必须通过套接字发送大量数据 因此我使用二进制数据来最大化可以发送的数据量 我已经了解整数字节顺序以及如何使用htonl and ntohl为了规避字节顺序问题 但我的应用程序与几乎所有模拟
  • 如何将 int 作为“void *”传递给线程启动函数?

    我最初有一个用于斐波那契变量数组的全局变量 但发现这是不允许的 我需要进行基本的多线程处理并处理竞争条件 但我无法在 pthread 创建中将 int 作为 void 参数提供 我尝试过使用常量指针 但没有成功 由于某些奇怪的原因 void
  • 将 Swagger 与命名空间版本的 WebApi 结合使用

    我已经找到了如何使用基于名称空间的 WebAPI 版本这个班 https aspnet codeplex com SourceControl changeset view dd207952fa86 Samples WebApi Namesp
  • SQL Server“未找到网络路径”在不同环境中随机且不频繁地发生

    类似 如果不是同一个问题 随机遇到网络路径未找到异常 https stackoverflow com questions 38696448 network path not found exception encountered rando

随机推荐

  • 混合混合模式背景,子内容不受影响

    我正在尝试使用混合混合模式来创建具有多重效果叠加的背景 该叠加效果还可以显示部分背景 我还需要子内容不受混合模式的影响 像这样 我尝试将混合模式设置为取消设置 我也尝试使用隔离 隔离 但似乎无法使该选项起作用 我不想使用伪元素或将内容放置在
  • 如何在 django Rest Framework 中反转 ViewSet 自定义操作的 URL

    我已经为 ViewSet 定义了自定义操作 from rest framework import viewsets class UserViewSet viewsets ModelViewSet action methods get det
  • QTableView格式化数字

    我已经创建了一个代表 我可以对齐并粗体显示表格上的数字 我想强制它们保留两位小数 例如 1 2 应显示为 1 20 这是 delagte 的标题 ifndef TOTALDELEGATE H define TOTALDELEGATE H i
  • Unity (Unity5) 中 c# 中的属性 - 可以避免支持变量吗

    对于Unity5 很难确切地知道正在使用什么版本的c Mono Net 我们的属性完全像这样 private int distance public int Distance private set distance value contr
  • 当元素为空时,保存会向 XML 添加返回换行符

    我正在加载一个 XML 文档 其中有一些没有内部文本的标签 如果我用一些数据填充内部文本 那么它会根据需要工作 您可以在一行上获得开始标记 内部文本和结束标记 如下所示
  • Android Web 视图中的 Html 音频

    我是 HTML 和 Java 的初学者 我正在尝试使用 HTML 和 Java 通过 Web 视图在 Android 上的简单 Web 应用程序中播放音频文件 我已经成功地让它在 Android 4 0 上运行 但它不适用于 2 3 3 或
  • Erubis 块助手通过 concat 抛出错误

    我有几个块助手 这是我正在做的一个简单示例 def wrap foo foo block data capture block content div class data div concat content end 我只是尝试 erub
  • Hibernate 缓存级别 1

    我对缓存级别 1 有一个误解 到目前为止 我发现缓存级别 1 仅用于推迟 sql 调用 直到刷新事务 但是物体呢 例如 我仅使用缓存级别 1 如果我在 1 个事务内多次加载同一个对象 会发生什么情况 hibernate 是否使用某种身份映射
  • 提交颠覆时可以修改文本文件吗?

    我想在正在提交的文本文件上运行以下脚本 Send the commands H and w to ed ed will append newline if the file does not end in one printf s n H
  • 将标记捕捉到最近的折线点 Google 地图颤动

    我正在为我的大学班车编写一个简单的公交车跟踪应用程序 我已经将公交车 GPS 绘制为导航箭头以及地图上的路线 现在 由于实际的 GPS 坐标与绘制的路线相比 与公交车的实际位置有一些偏差 因此稍微偏离了道路 我可以调用任何方式或方法将这些标
  • Rails ActiveRecord 按连接表关联计数排序

    我有一个Resource可以使用 Acts As Votable 宝石进行投票的模型 Github页面 https github com ryanto acts as votable 投票系统运行完美 但我试图显示按数量排序的页面votes
  • 如何更改已发布扩展的发布者名称?

    我想更改 VScode 市场中的发布者名称 我怎么做 迟回复 你看过这个吗VS Code Github 问题 https github com Microsoft vscode issues 3670 基本上他们说他们could从技术上讲
  • 处理 Hibernate 事务

    目前我已将此代码复制到each我的控制器方法之一 Transaction transaction HibernateUtil getSessionFactory getCurrentSession getTransaction if Hib
  • 在 Rails 3 应用程序中使用 jQuery-UJS 进行远程 link_to 时出现解析器错误:如何调试?

    我正在尝试使用 Rails 3 单击链接后替换 div 的内容 remote link remote gt true和 jQuery 到目前为止 我已经能够让控制器渲染正确的部分 同时使用 200 HTTP 代码进行响应 我设置了一些回调来
  • 在 R 中更改 Tor 身份

    我将 Tor 与 R 结合使用 并希望针对每个新请求更改我的 IP 我的代码如下 library RCurl opts lt list proxy 127 0 0 1 proxyport 8118 for i in 1 10 con lt
  • 适用于 Android 的 Adob​​e AIR 上的无引脚 OAuth

    我在 Adob e AIR for Desktop iOS 上使用了无引脚 OAuth 但在 Android 上则不行 由于某种原因 我们没有得到 oauth verifier 其中包含 Android 设备上 StageWebView 中
  • Kotlin 中从 String 到 List 的 jOOQ 转换器

    我正在处理一种罕见的情况 我发现将 JSON 存储在 RDBMS 字段中是可以接受的 JSON 文档是一个数组或键值对象 So the jOOQ转换器 https www jooq org doc 3 11 manual code gene
  • 我无法将 jsPDF 与 Angular 10 一起使用

    我试图使用打印我的页面jspdf图书馆 我已经尝试了很多解决方案来完成这里的示例和几乎每个谷歌建议链接 但我仍然无法修复它 这是我到目前为止所尝试过的 import as jsPDF from jspdf openPDF void cons
  • 提供通过 Node.js 中的链接标签链接到 HTML 文件的 CSS 样式表,无需框架

    我一直通过反复试验的方式自学 Node js 我使用 Node js HTTP 类构建了一个简单的服务器 我发现我可以异步读取文件并使用异步服务提供数据fs readFile cbk 回调方法 目前我不明白的是如何响应请求所需的所有其他资源
  • 如何使用 C# 调整动画 gif 图像的大小?

    有没有一种方法可以使用 C 创建动画 gif 图像的副本 我想要的是使用用户提供的高度和宽度参数生成给定 gif 图像的副本 我已经尝试了几个小时来完成此任务 但生成的图像没有保留原始动画 我花了一段时间才找到这个问题 但终于找到了解决方案