javascript - 在jspdf中为pdf创建矩阵类型卡片,与sap ui5集成
问题描述
希望你做得很好。
我的要求是创建矩阵类型卡片,使用 jspdf,与 sap ui5 集成。
到目前为止,我已经将 jspdf 与 SAP ui5 集成并使用卡片生成 pdf。
但是卡片的布局,需要根据随附的屏幕截图进行自定义。
我使用了来自 jsfiddle 的链接来创建 jspdf 中的卡片,该卡片发布在其中一条评论中。
////代码开始
var doc = new jsPDF('p', 'pt', 'a4');
var pageWidth = 595;
var pageHeight = 842;
var pageMargin = 20;
pageWidth -= pageMargin * 2;
pageHeight -= pageMargin * 2;
var cellPadding = 10;
var cellWidth = 180;
var cellHeight = 70;
var lineHeight = 20;
var startX = pageMargin;
var startY = pageMargin;
doc.setFontSize(12);
function createCard(item) {
var requiredWidth = startX + cellWidth + (cellPadding * 2);
var requiredHeight = startY + cellHeight + (cellPadding * 2);
if (requiredWidth <= pageWidth) {
textWriter(item, startX + cellPadding, startY + cellPadding);
startX = requiredWidth;
} else {
if (requiredHeight > pageHeight) {
doc.addPage();
startY = pageMargin;
} else {
startY = requiredHeight;
}
startX = pageMargin;
textWriter(item, startX + cellPadding, startY + cellPadding);
startX = startX + cellWidth + (cellPadding * 2);
}
}
function textWriter(item, xAxis, yAxis) {
doc.text(item.Name, xAxis, yAxis);
doc.text(item.Email, xAxis, yAxis + lineHeight);
doc.text(item.Company, xAxis, yAxis + (lineHeight * 2));
}
for (var i = 0; i < data.length; i++) {
createCard(data[i]);
}
////代码结束
PFA,卡片截图,正在生成。
任何人都可以帮助我吗?
解决方案
推荐阅读
- python - Python 包认为我的依赖版本比我旧
- kubernetes - 如何与同一 k8s 集群中的 pod 内的 Kubernetes CRD 服务通信?
- r - 将一个单元格数据拆分为两个变量,然后保存在 csv 中
- javascript - Javascript String Array-Like-Object behaviour
- python - 更好地映射辅助函数或父函数?
- docker - Docker:使用自定义退出代码退出
- python - 遍历键值对列表并使用 Python 获取特定的键和值
- excel - Talend 导入、转换原始文件并导出为 CSV
- python - 在 Python 中重命名文件,获取 FileNotFoundError
- python - aiohttp ClientSession.get() 方法静默失败 - Python3.7