Estoy tratando de seguir la documentación para pdfjs que se encuentra aquí https://www.pdftron.com/documentation/core/guides/features/manipulation/remove/ en un intento de eliminar una página de un PDF que he subido a mi página html . Aquí está mi código html:
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdf.js/2.2.228/pdf.js"></script> <input type="file" id="input"/> <script> document.getElementById('input').addEventListener('change', function(e){ var reader = new FileReader() reader.onload = function(x){ window['pdfjs-dist/build/pdf'].getDocument({data:x.target.result}).promise.then(function(doc){ doc.pageRemove(doc.getPageIterator(5)); console.log(doc.numPages) })} reader.readAsBinaryString(e.target.files[0]) }, false) </script>lo que da este error de consola cuando subo un archivo PDF a la página:
removeDemo.html:10 Uncaught (in promise) TypeError: doc.getPageIterator is not a functionEl PDF que estoy cargando tiene más de 5 páginas, por lo que pedir que eliminen la 5.ª página en particular no debería ser el problema. Sin embargo, parece que funciona otra funcionalidad, por ejemplo, tengo una línea en el código anterior que imprime el número de páginas del documento. Esto funciona bien cuando comento la línea 'getPageIterator'. Entonces parece ser un problema con esta función específica, en lugar de un problema más general. Quisiera saber a que se debe este problema. En caso de que esto sea relevante, lo estoy ejecutando en cromo en un macbook pro.
Por favor, hágame saber si hay algo en la pregunta anterior que pueda aclarar más.
Mozilla led pdf.js es principalmente un visor de pdf del complemento del navegador, sin funciones de edición.
La función a la que llama doc.pageRemove(doc es para usar con PDFTron webview / edit SDK y, por lo tanto, es específica para esa biblioteca comercial de JavaScript.
La documentación a la que se vinculó, desde PDFTron, no tiene nada que ver con PDF.js, es un SDK completamente separado. Esta es la razón por la que recibe un error al realizar una llamada a la API de SDK en un SDK diferente.
Dado que PDF.js no admite la eliminación de páginas de un PDF (ni la edición en general), supongo que su intención es usar PDFTron SDK para eliminar (o editar de otras formas) un archivo PDF en el lado del cliente del navegador.
En cuyo caso desea hacer lo siguiente.
Vea este ejemplo: https://www.pdftron.com/documentation/web/samples/pdf-manipulation/#page-operations
Consulte aquí para comenzar con el SDK: https://www.pdftron.com/documentation/web/get-started/