Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 如何使用Spring和Angular js创建Pdf_Angularjs_Spring Mvc_Pdf Generation - Fatal编程技术网

Angularjs 如何使用Spring和Angular js创建Pdf

Angularjs 如何使用Spring和Angular js创建Pdf,angularjs,spring-mvc,pdf-generation,Angularjs,Spring Mvc,Pdf Generation,我想创建一个PDF文件,这样当我点击一个按钮时,它应该满足要求。但是我无法做到这一点,关于如何使用RestEndCall通过后端使用SpringMVC和前端使用Angular4/5/6/7/8+ 另外,我应该向后端发送哪些数据?确切地说,我不想一个一个地创建每个单元格。如果有任何其他选项可以创建与网页完全相似的PDF 您询问如何创建PDF格式的页面截图 实际上,用于制作pdf的客户端库受到功能的限制,结果很差 剩下的是服务器端渲染 我很早以前就成功了,还有其他的选择 您可以通过搜索Java的wk

我想创建一个PDF文件,这样当我点击一个按钮时,它应该满足要求。但是我无法做到这一点,关于如何使用
RestEndCall
通过后端使用
SpringMVC
和前端使用
Angular4/5/6/7/8+


另外,我应该向后端发送哪些数据?确切地说,我不想一个一个地创建每个单元格。如果有任何其他选项可以创建与网页完全相似的PDF

您询问如何创建PDF格式的页面截图

实际上,用于制作pdf的客户端库受到功能的限制,结果很差

剩下的是服务器端渲染

我很早以前就成功了,还有其他的选择

您可以通过搜索Java的
wkhtmltopdf
PhantomJS
备选方案来开始实施之旅


这应该如何工作?当
true
script(例如相同的wkhtmltopdf)生成作业时,无头浏览器打开URL并等待window.variable。有一个无头浏览器列表。最佳PDF解决方案将基于其中任何一种解决方案。

您可以在前端轻松实现,无需请求支持。 下面是一个示例:

<html ng-app="app">
<head>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.5/angular.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.22/pdfmake.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/0.4.1/html2canvas.min.js"></script>
</head>
<script>
var app = angular.module("app", []);

 app.controller("listController", ["$scope",
   function($scope) {
     $scope.data=  [{"agence":"CTM","secteur":"Safi","statutImp":"operationnel"}];

     $scope.export = function(){
        html2canvas(document.getElementById('exportthis'), {
            onrendered: function (canvas) {
                var data = canvas.toDataURL();
                var docDefinition = {
                    content: [{
                        image: data,
                        width: 500,
                    }]
                };
                pdfMake.createPdf(docDefinition).download("test.pdf");
            }
        });
     }
   }
 ]);
</script>
</head>
<body>
  <div ng-controller="listController">
    <div id="exportthis">
      download me as a pdf
    </div>
    <button ng-click="export()">export</button>
  </div>
<body>
</html>

var-app=angular.module(“app”,[]);
app.controller(“listController”,[“$scope”,
职能($范围){
$scope.data=[{“代理”:“CTM”、“部门”:“Safi”、“statutImp”:“operationnel”}];
$scope.export=函数(){
html2canvas(document.getElementById('exportthis'){
onrendered:函数(画布){
var data=canvas.toDataURL();
变量定义={
内容:[{
图片:数据,
宽度:500,
}]
};
下载(test.pdf);
}
});
}
}
]);
以pdf格式下载我
出口

您可以使用pd4ml和itext pdf添加更多关于您的问题的信息吗?您可以将HTML页面转换为pdf,或者您可以制作自己的pdfdo。您的意思是,您想将当前网页保存为pdf?您考虑过使用谷歌的Puppeter吗?这确实是最好的答案,我们目前正在使用wkhtmltopdf,虽然它并不总是能够完美地实现转换,但它确实是我们发现的最好的。