gpt4 book ai didi

php - 通过 PHP 保存 png 时获取深色图像

转载 作者:行者123 更新时间:2023-11-28 02:59:31 26 4
gpt4 key购买 nike

我正在尝试使用手机保存从 HTML5/Canvas 捕获的图像。我正在使用 PHP (symfony2)。我按照这篇文章 (How to save a PNG image server-side, from a base64 data source) 中的说明进行操作,但我保存的是一张黑色的空图像,而不是我捕获的图像。

这是我的 JavaScript 发布代码:

var dataUrl = canvas.toDataURL();
$.ajax({
type: "POST",
url: "{{ path("personne_photo_capture",{"id":entity.personne.id}) }}",
data: {
imgBase64: dataUrl
}
}).done(function (msg) {
$('#msg').html(msg);

}).fail(function (xhr, textStatus, errorThrown) {
$('#msg').html(xhr.responseText);
});

以及 PHP 保存代码:

$rawData = $_POST['imgBase64'];
if (isset($rawData)) {
$filteredData = explode('base64,', $rawData);
$data = base64_decode($filteredData[1]);
$filename = "profil.png";
file_put_contents('picts/small/' . $filename, $data);
}

最佳答案

首先,确保在客户端指定数据类型为

 dataType: 'text',

在服务器端将前两个语句替换为:

$data = base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $data));

要获得进一步的指示,请在先前提出的问题上循环

How to save a PNG image server-side, from a base64 data string

关于php - 通过 PHP 保存 png 时获取深色图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35267036/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com