本文主要是介绍PHPWord 又拍云图片导出被识别为 image/webp 无法导出的问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.解决办法读取图片转jpg 存储在windows 临时目录中,然后读取图片
if (!empty($v['goods_img'])) {foreach ($v['goods_img'] as $imgs) {if (!empty($imgs)) {$imageUrl = trim('http://cdn.wowo.com' . '/' . $imgs . '!/fh/100');$imageSize = @getimagesize($imageUrl);if ($imageSize !== false) {// 获取图片的 MIME 类型$mimeType = $imageSize['mime'];// 如果图片是 webp 格式,进行转换if ($mimeType === 'image/webp') {$imgData = file_get_contents($imageUrl);// 生成临时文件保存 webp 图片数据$tempFilePath = tempnam(sys_get_temp_dir(), 'webp');file_put_contents($tempFilePath, $imgData);// 使用 GD 库打开临时文件并转换为 JPEG$image = imagecreatefromwebp($tempFilePath);if ($image !== false) {$outputFile = tempnam(sys_get_temp_dir(), 'img') . '.jpg';imagejpeg($image, $outputFile);imagedestroy($image);// 添加转换后的 JPEG 图片到文档中$cell->addImage($outputFile, array('alignment' => 'right'));// 删除临时文件//unlink($outputFile);} else {// 处理转换失败的情况(如记录日志或通知用户)// 此处根据需要进行处理}// 删除临时 webp 文件//unlink($tempFilePath);} else {// 非 webp 格式,直接添加图片$cell->addImage($imageUrl, array('alignment' => 'right'));}}}}}
这篇关于PHPWord 又拍云图片导出被识别为 image/webp 无法导出的问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!