我需要使用Spreadsheet_Excel_Writer将图像插入Excel文件,因此我必须将其转换为BMP 24位。我使用代码:
$preview_file = DIR_CACHE . $productId . '-1.bmp';
$preview = new Imagick(DIR_IMAGE . $row['image']);
$preview->resizeImage(100, 100, imagick::FILTER_UNDEFINED, 1);
$preview->setFormat('BMP3');
$preview->writeImage($preview_file);
$worksheet->insertBitmap( $i, $j++, $preview_file, 0, 0, 1, 1 );
但是在Excel图片中显示出错误。我试图用Paint重新保存它并添加到Excel - 它变得很好。所以,我比较了两个文件并看到:
我如何解决这个问题?
更新
结果BMP的链接:
https://dl.dropboxusercontent.com/u/17397112/613-1.bmp https://dl.dropboxusercontent.com/u/17397112/613-2.bmp
excel中的错误显示为: