无法保存数据:image / jpeg; base64

时间:2016-09-02 23:59:22

标签: javascript php android image

我有这个代码在网页上为客户显示颜色转换后的图像,客户可以点击下载按钮下载图像, 它在PC上工作正常,但如果我尝试在Android手机上下载图像,我会收到错误“只能下载http或https网址” 我猜它是因为保存的图像有一条路径,如“data:image / jpeg; base64,/ 9j / 4AAQSkZJRgABAQAAAQABAAD // gA8Q1JFQVRPU” 我怎么才能使这个工作?它需要转换还是什么? 这是我的代码:

imagejpeg($gd,NULL,100);
$outputBuffer = ob_get_clean();
$base64 = base64_encode($outputBuffer);
echo '<a id="downloadimage" style="text-decoration:none;" download>
	<img id="image2" style="border:1px solid lightgrey;" width="300" height="400" src="data:image/jpeg;base64,'.$base64.'" />
	<li style="padding-top:10px;textalign:center;display:block;border-radius:10px;background-color:royaleblue;height:30px;width:100px;background-color: lightgray;
padding-left: 30px;margin-left: 80px;">download</li></a>';	

1 个答案:

答案 0 :(得分:0)

base base64编码数据以二进制格式表示图像的实际内容,不能与img标签一起使用。您需要在“../../file.jpg”中提供本地存储在手机中的实际路径,或者在“http://www.google.com/happy.png”中提供云中的实际路径。