我使用jsPDF在客戶端生成pdf。通過函數doc.save('filename.pdf'),我可以下載它。 現在我需要將它保存在服務器上,所以我使用.ajax()發送PDF數據並用PHP腳本接收它,但生成的pdfURL上的圖像不顯示(http://mydomain/tmp/test.pdf);只顯示文字。如何從ajax數據發送到服務器的pdf(使用jsPDF)
你能幫我一下嗎?
我的js代碼:
//doc.save('test.pdf'); WORKS WELL
var pdf = doc.output();
$.ajax({
method: "POST",
url: "inc/test.php",
data: {data: pdf},
}).done(function(data){
console.log(data);
});
PHP腳本:
<?php
if(!empty($_POST['data'])){
$data = $_POST['data'];
print_r($data);
file_put_contents("../tmp/test.pdf", $data);
} else {
echo "No Data Sent";
}
exit();
?>
這是PHP腳本proccess後生成的PDF: http://control.edge-cdn.com.ar/tmp/test.pdf
,這是與生成doc.save()函數: http://control.edge-cdn.com.ar/repo/all.pdf 關心!
因此,test.pdf確實以pdf格式打開,它只包含帶有破碎圖像的文本? –
您是否在同一臺計算機上使用相同的軟件打開兩個pdf(一個來自服務器,另一個使用js保存)? –
- >您可以使用js生成pdf文件doc.output();數據?也許這是負責該錯誤(和doc.save()也許可以)的方法... –