从 .EXE 中提取 .PNG?
Posted
技术标签:
【中文标题】从 .EXE 中提取 .PNG?【英文标题】:Extracting a .PNG from .EXE? 【发布时间】:2011-03-04 11:44:54 【问题描述】:我一直在想如何从 .exe 窗口文件的图标中提取图像。 有没有一种简单的方法可以用 GD 做到这一点?
我认为步骤是:
从 .exe 中提取 .ico 将 .ico 转换为 .PNG【问题讨论】:
图标通常是非常小的图形,旨在清楚地显示某些内容。这意味着它们通常包含 JPEG 无法处理的图像类型。您几乎肯定想重新考虑并改用 PNG。 当然不仅仅是一个概念。我看到的最简单的方法是调用一个像 ResHacker 这样可以为你做这件事的程序,而不是试图找到一个可以为你做这件事的函数或 pear 库。不过,有趣的问题。 也许有可能......让我们等待:) 【参考方案1】:图标是fairly complex beast。转换为 PNG 并不容易,因为:
单个 .exe 中可以有多个图标; 一个图标内可以有多个图像,具有不同的大小和颜色深度; 可以通过多种方式压缩图像; 图像具有位掩码(使反转背景颜色等效果成为可能),这在 PNG 中没有等效项。据我所知,GD 不支持图标格式。 Imagemagick 似乎,也许你可以使用它。否则您可能需要编写自己的图标提取器。
【讨论】:
+1 不知道为什么有人投了反对票! ImageMagick 会很好地完成这项工作。 @David:我没有,但这可能是因为——尽管这个答案很好地涵盖了问题——它实际上并没有提供一个可靠的解决方案。 @Tomalak 对某人投反对票的意思是因为他们没有一直牵着你的手为你写代码!只是我的意见。 @David:我同意。正如我所说,我没有投反对票。也就是说,这不是填充“JFGI!”的资源;它是收集编程知识的资源。最好的 SO 答案是彻底、合理的,并通过代码示例提供了一个全面的解决方案。如果有人比你或我更严格一点,我可以理解为什么有人会否决它。 感谢您的回复。问题不会是从 ico 转换为 png,真正的问题 (imo) 还很早:如何提取 ico 形式的 exe .. 我不认为 imagemagick 可以做到这一点以上是关于从 .EXE 中提取 .PNG?的主要内容,如果未能解决你的问题,请参考以下文章