gpt4 book ai didi

javascript - 如何在服务器上保存带有图像的 jsPDF?

转载 作者:行者123 更新时间:2023-11-28 00:15:22 26 4
gpt4 key购买 nike

我正在使用 jsPDF 在客户端创建 PDF。现在,我的 PDF 中有图片,我想将其保存在我的服务器上。

问题是,没有图像就没有问题,但如果有图像,生成的 PDF 就会损坏。

我该如何解决这个问题?

Javascript:

var pdf = doc.output(); 
var data = new FormData();
data.append("data" , pdf);
var xhr = new XMLHttpRequest();
xhr.open( 'post', 'ajax/upload.php', true );
xhr.send(data);

PHP:

if(!empty($_POST['data'])){
$data = $_POST['data'];
$fname = "einsatz.pdf"; // name the file
$file = fopen("../data/" .$fname, 'w'); // open the file path
fwrite($file, $data); //save data
fclose($file);
echo "Einsatzblatt saved";
}
else {
echo "No Data Sent";
}

感谢您的帮助!

更新 2015 年 5 月 29 日

该图像是使用 blockspring 插件从谷歌地图生成的。在那里我得到了一个base64 png。

blockspring.runParsed("b21fb2a7b862354a76a7806ae9fc0a4d", { "color": "#d52c11", "zoom_level": 16, "address": ""+ adresse + "" }, { "api_key": "br_3080_5cec24d3c19bdc66c763138a974e14311facf637" }, function(res){
var imgData = 'data:image/png;base64,' + res.params.maps.data;

然后我创建 PDF

var doc = new jsPDF('landscape');
doc.addImage(imgData, 'png', 150, 45, 125, 125);

最佳答案

我在java脚本中编码为base64,然后在服务器中解码它,它对我有用。

这是我的代码片段。

Javascript:

data: {pdfContent:btoa(pdfContent)} 

PHP:

$pdfContent = base64_decode($this->request->data['pdfContent']);

关于javascript - 如何在服务器上保存带有图像的 jsPDF?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30506191/

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