Мне нужно отобразить каждую страницу PDF-файла где-нибудь на моем сайте. Я использую Angular в качестве основы (я новичок в этом) и уже использую пакет ng2-pdf-viewer.
Проблема в том, что я не знаю, как "получить"количество страниц из загруженного файла PDF. Я знаю, что пакет предоставляет событие after-load-complete
, но мне нужно знать, сколько страниц имеет PDF-файл, прежде чем он появится на экране. Это вообще возможно? например:
Мой компонент
export class PdfComponent implements OnInit {
pages: Array<any> = []
file: any
importPdf(event: any) {
const pdf = document.getElementById("file")
if (typeof(FileReader) !== 'undefined') {
const reader = new FileReader()
reader.onload = (e: any) => {
this.file = e.target.result
}
reader.readAsArrayBuffer(pdf.files[0])
}
// here I want to know how much pages have pdf
}
}
Шаблон
<input type="file" (change)="importPdf($event)">
<div class="panel" *ngFor="let page of pages">
<pdf-viewer
[src]="file"
[page]="page"
[show-all]="false"
[original-size]="false"
></pdf-viewer>
<!-- Here display pdf pages from pages variable with-->
</div>