如何将 .png 文件转换为 .bmp?

Posted

技术标签:

【中文标题】如何将 .png 文件转换为 .bmp?【英文标题】:How to convert .png file to .bmp? 【发布时间】:2013-07-24 07:15:27 【问题描述】:

我需要将 .png 文件转换为 .bmp;我正在使用printer_draw_bmp() 中的结果打印出条形码。

GD 可以生成 WBMP,但据我所知,它与 .bmp 不同。我该如何进行这种转换?还是有另一种直接打印.png的方法?

【问题讨论】:

你真的尝试过使用 wbmp 吗? 谢谢你,杰克 :) 我试过 wbmp 但它不起作用.. 也许你会想在你的问题中强调这一点;在这一点上似乎只是推测。 【参考方案1】:

Github 上有一个开源项目,允许在 php 中读取和保存 BMP 文件(和其他文件格式)。

项目名为PHP Image Magician.

【讨论】:

【参考方案2】:

AFAIK,GD 不支持 bmp 格式。但是您可以使用ImageMagick 将文件保存为 bmp 格式:

$im = new Imagick('image.png');
$im->writeImage('image.bmp');

或者如果你想将图像输出到 http 响应:

$im = new Imagick('image.png');
$im->setImageFormat('bmp');
echo $im;

【讨论】:

不确定,ImageMagick 很棒。 +1 我已经安装了 ImageMagick 并添加了扩展,但它总是显示 "Class 'Imagick' not found" 。为什么? @santi_nc,你重启了 apache(或者你正在使用的任何服务器)吗? 现在可以使用了。但我还有另一个问题。即使图像已经转换,printer_draw_bmp() 仍然无法加载图像。它说图像不是位图。 bmp 和 bitmap 有什么不同吗? @santi_nc 你如何阻止“Class Imagick not found”问题?

以上是关于如何将 .png 文件转换为 .bmp?的主要内容,如果未能解决你的问题,请参考以下文章

如何将emf文件转换成png格式

将 Png 转换为 Bmp 和位图数组

iOS:将 png 图像转换为 1 位 bmp 图像

如何将 PNG 图像转换为 SVG? [关闭]

将位图 (bmp) 转换为具有透明度的 png (Windows c++)

HEIC文件怎么打开,一键批量将HEIC图片转换JPG/PNG/BMP