我正在尝试使用pdfreader 包在一个对象中获取 pdf 的所有页面。该函数在处理它时最初返回每个页面(作为它自己的对象)。我的目标是编写一个将所有页面作为页面对象数组返回的包装器。有人可以解释为什么这不起作用吗?
我试过:
添加 .then 和返回条件 - 因为我希望 parseFileItems 方法返回一个值:
let pages = [];
new pdfreader.PdfReader()
.parseFileItems(pp, function(err, item) {
{
if (!item) {
return pages;
} else if (item.page) {
pages.push(lines);
rows = {};
} else if (item && item.text) {
// accumulate text items into rows object, per line
(rows[item.y] = rows[item.y] || []).push(item.text);
}
}
})
.then(() => {
console.log("done" + pages.length);
});
并得到了错误
TypeError:无法读取未定义的属性“then”
我正在修改的功能(来自包文档):
var pdfreader = require("pdfreader");
var rows = {}; // indexed by y-position
function printRows() {
Object.keys(rows) // => array of y-positions (type: float)
.sort((y1, y2) => parseFloat(y1) - parseFloat(y2)) // sort float positions
.forEach(y => console.log((rows[y] || []).join("")));
}
new pdfreader.PdfReader().parseFileItems("CV_ErhanYasar.pdf", function(
err,
item
) {
if (!item || item.page) {
// end of file, or page
printRows();
console.log("PAGE:", item.page);
rows = {}; // clear rows for next page
} else if (item.text) {
// accumulate text items into rows object, per line
(rows[item.y] = rows[item.y] || []).push(item.text);
}
});
凤凰求蛊
POPMUISE
相关分类