如何从图像资源创建一个base64编码的字符串

24

我已经通过AJAX将一个Base64编码的字符串发送到PHP,并使用imagecreatefromstring创建了一个图像资源 - 一切都很好。

现在我想在调整图像大小后获取Base64编码的字符串,但我找不到一个函数来获取Base64编码的字符串。


@mishu 当然...我尝试了base64encode($imageres)和ob_contents等方法,但都不起作用... - netzaffin
你可以使用resample来在调整大小后获取base64编码字符串。 - eQ19
1个回答

53

本文翻译自http://www.php.net/manual/en/book.image.php#93393

$image = imagecreatefromstring($file);

// start buffering
ob_start();
imagepng($image);
$contents =  ob_get_clean();

echo "<img src='data:image/png;base64,".base64_encode($contents)."' />";

imagedestroy($image);

嗯,我确定之前试过这个!现在它可以工作了。非常感谢你。 - netzaffin
@netzafin:我知道那种感觉 ;) - Michael Robinson
3
根据手册$contents = ob_get_clean();ob_get_contentsob_end_clean 的一句话简写。 - totymedli

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接