繁体   English   中英

php base64编码imagecreatetruecolor

[英]php base64 encode imagecreatetruecolor

我有一个php脚本,可生成图像,然后将图像输出为png。

$img = imagecreatetruecolor($graphWidth,$graphHeight);
...
*drawing routines*
...
header("Content-type: image/png");
imagepng($img);

我现在需要的是使php脚本对base64图像数据进行编码,然后输出该字符串(这样,我最终可以将编码后的数据传递给java脚本,该Java脚本对该图像进行解码并将其添加到生成的pdf中)。

我已经尝试了很多次,以使其自己可以使用其他stackoverflow帖子/答案等进行工作,但是我对该技术的了解还不足以使其能够正常工作。

有人可以帮我吗?

提前致谢,

克里斯

之所以不起作用,是因为$img的图像是资源,而不是实际的PNG图像。 当您调用imagepng() ,它将输出图像。

我要做的是创建一个输出缓冲区,并对其进行base-64编码。

ob_start();
imagepng($img);
$buffer = ob_get_clean();
ob_end_clean();
echo base64_encode($buffer);

不要忘记更改Content-Type标头,因为它不再是image/png

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM