- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我在 Nodejs 上使用了这个模块:https://github.com/bpampuch/pdfmake
这是我创建它的代码:
const fonts = {
Roboto: {
normal: './fonts/Roboto-Regular.ttf',
bold: './fonts/Roboto-Medium.ttf',
italics: './fonts/Roboto-Italic.ttf',
bolditalics: './fonts/Roboto-Italic.ttf'
}
};
let PdfPrinter = require('pdfmake/src/printer');
let printer = new PdfPrinter(fonts);
let fs = require('fs');
module.exports.generateFile = function (data,callback) {
let fileName = "Logins_" + data[0]["userLogin"] + ".pdf";
let filePath = __dirname + "/files/" + fileName;
let logins = [ ['userLogin', 'softwarePassword', 'softwareName'] ];
for (let obj of data) {
let arr = [];
for(let x in obj){
arr.push(obj[x]);
}
logins.push(arr);
}
let docDefinition = {
content: [
{
table: {
// headers are automatically repeated if the table spans over multiple pages
// you can declare how many rows should be treated as headers
headerRows: 1,
widths: [ '*', 'auto', 100, '*' ],
body: logins
}
}
]
};
try {
let chunks = [];
let result;
let doc = printer.createPdfKitDocument(docDefinition);
doc.pipe(fs.createWriteStream(filePath));
doc.end();
callback(null,fileName,filePath)
} catch (err){
callback(err);
}
};
我得到了这个屏幕:
大家有什么想法吗?在回调中,我使用 res.download 以及文件名和文件路径。我尝试了一切
最佳答案
在本地和 Node 服务器上测试的工作解决方案
为什么pdfmake
无法打开文件是因为文件流fs
仍在写入内存块,这使得它不可读,下载的PDF将被损坏,大小为0KB。
解决方案:向fs.createWriteSteam
添加事件监听器并等待fs
完成写入然后发送文件。
var temp123;
pdfDoc.pipe(temp123 = fs.createWriteStream('./PDF/' + name), { encoding:'utf16' });
pdfDoc.end();
temp123.on('finish', async function () {
// do send PDF file
res.download('name.pdf');
});
关于node.js - pdfMake - 无法打开文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42117885/
有没有办法动态检查 PDFMake 中的剩余页面高度?动态创建页面时,我希望能够检查剩余的可用页面高度以将其与元素高度进行比较,以便无法剪切页面上的最后一个元素(例如图像或长文本区域内容)而是转移到另
我正在使用 pdfmake 创建 PDF 并成功使用数据 URI 嵌入图像。这是一个小图像,大约 200 像素宽,我想让它右对齐。有没有办法将图像推送到 PDF 的右侧? 最佳答案 您可以使用文档定义
安装后pdfmake使用 npm: npm install pdfmake --save-dev 并使用 webpack 编译包运行时出现错误: pdfmake = require 'pdfmake'
我正在尝试制作一个包含 html 表格的应用程序。 我想要一个下载按钮和 onClick 事件,下载一个包含所有 html 表格的 PDF 文件。 可以吗? 谁能帮我实现一个将 html 表格转换为对
看起来像这样 question已经asked不少times使用旧版本的 PDFMake,但尚未使用似乎是最新的目录结构进行更新。另外,将字体复制到根“字体”文件夹中并不是很好。 我究竟如何获得在 No
在我的 PDF 下载中,我需要能够同时使用英语和中文作为插入文本的语言,但是虽然英语可以,但我不能让中文工作。 我遵循了 here 中的文档, 但无论我尝试使用什么字体,新添加的总是显示为空框,更确切
我正在尝试使用 DataTables 导出功能,在那里我可以导出为 CSV、xlxs、pdf。现在我当前的要求是导出自定义 pdf(更改字体大小、颜色等)。在 DataTable 文档中,它指出我们可
我有一个字符串,我想将其设置为 pdf 的标题。我尝试使用以下代码。但是背景没有正常出现。我想将背景颜色设置为整行,但它恰好位于文本下方。任何帮助将不胜感激。 var dd = { conte
我正在使用 pdfMake 生成表格报告。一些报告非常宽,不适合标准页面宽度,即使在横向模式下也是如此。目前,当表格内容溢出页边距时,pdfMake 会切断表格内容。 我想在表格太宽时分页,就像行溢出
我有一个项目要打印工作报告。我在 pdfmake 生成的报告中放置复选标记时遇到了麻烦,我按照以下链接中的一些说明进行操作: https://github.com/bpampuch/pdfmake/w
可以用pdfmake绘制lines,circles和other shapes吗?如果是,是否有documentation或样本?我想用jsPDF替换pdfmake。 最佳答案 是的,有可能。 pdfm
无论我如何尝试,我都无法在第二列内对齐表格。 var docDefinition = { content: [ { columns: [
我正在研究用于创建 pdf 的 pdfmake.js 库。我需要一些帮助来更改表格和单元格的线宽。 我的表对象是 { table: { body: [
在添加 HTML5 export functionality 的过程中对于 jQuery 的数据表,我注意到其中一个必需的插件 (PDFMake)与我当前使用的 underscore.js 模板冲突。
我正在使用 pdfmake 在客户端创建 PDF。我们有一个所见即所得的编辑器,允许用户创建 pdf。然后将其解析以与 pdfmake 一起使用。 但是,我无法使用普通字体。该插件使用 vfs_fon
我正在使用 PdfMake 在客户端生成 pdf。我将技能列表存储在一个数组中,如下所示: var skills: ["hiking", "running", "typing", "etc"]; 我正
我正在努力尝试使用 PDFmake 将文本放在图像上,我正在使用 PDFMAKE Playground 图像演示 var dd = { content: [ {
我在客户端使用它,我的 pdf 文件将只包含图像。无论我添加多少,第一张图片的宽度和高度都是相反的。从第二个和更远的地方开始,一切看起来都还不错。 我正在使用的配置是: var content = [
我正在尝试使用 pdfmake 增加 pdf 的标题大小。 目前我可以在页面的左右两侧都得到一个页眉,这是我想要的,但是当高度超过 26 时,图像消失了,因为页眉的空间有限。 可以减少边距以增加尺寸,
我已将默认字体更改为支持阿拉伯语的字体应该以这种方式显示的话: تقارير حرو الرسائل 但它们显示为 الرسائل حركو توارير function processDoc(do
我是一名优秀的程序员,十分优秀!