Ich bin neu in ES6 und Promise. Ich versuche pdf.js, um Texte aus allen Seiten einer PDF-Datei in ein String-Array zu extrahieren. Und wenn die Extraktion abgeschlossen ist, möchte ich das Array irgendwie parsen. Sagen Sie pdf-Datei (bestanden über typedarray
korrekt) hat 4
Seiten und mein Code:Wie man Text aus einem pdf mit pdf.js korrekt extrahiert
let str = [];
PDFJS.getDocument(typedarray).then(function(pdf) {
for(let i = 1; i <= pdf.numPages; i++) {
pdf.getPage(i).then(function(page) {
page.getTextContent().then(function(textContent) {
for(let j = 0; j < textContent.items.length; j++) {
str.push(textContent.items[j].str);
}
parse(str);
});
});
}
});
Es zu arbeiten schafft, aber natürlich, das Problem ist, meine parse
Funktion 4
mal aufgerufen. Ich möchte nur parse
aufrufen, nachdem alle 4-Seiten-Extraktion durchgeführt wurde. Jeder Rat ist willkommen. Bitte erhelle mich.
Ähnlich http://stackoverflow.com/a/40494019/1765767 - Sammle Seitenversprechen mit Promise.all und vergesse nicht, das zu verketten. – async5
@ async5 Es funktioniert! Ich versuchte es zuerst [http://stackoverflow.com/a/28875245/6153990] und es funktionierte mit einer leichten Änderung, aber die Antwort, die Sie zur Verfügung gestellt haben, sieht korrekter aus. Bitte antworte darauf als Antwort, damit ich es annehmen kann. Vielen Dank! –