Como leer archivos PDF en Android

Iniciado por MaX2, 23 Agosto 2021, 18:18 PM

0 Miembros y 2 Visitantes están viendo este tema.

MaX2

Hola Machacador, tengo varias aplicaciones de esas instaladas, y mediante un Intent se pueden abrir, pero no me interesa ese método, el funcionamiento del trabajo con la aplicación no es el mismo, busco que el pdf se muestre dentro de la aplicación.

rub'n

@MaX2 Te estas volviendo loco

Con el api también puedes leer, escribir, crearlo etc.

Wtf, estas hablando como para atrás y palante como dice  en mi jodida tierra.


rubn0x52.com KNOWLEDGE  SHOULD BE FREE!!!
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen

MaX2

#12
Si la verdad es que me estoy liando un poco.

Te entendí que con la librería iText no se podían leer PDFs, que solo era para crearlos, y la verdad que la información que veo y los ejemplos son para crear PDFs.

Vale, vamos a probar con la librería iText...

Me pones dos enlaces para poner las dependencias de iText
Uno que me lleva a cargar la librería:
implementation 'com.itextpdf:itext7-core:7.1.16'

y otra que es esta:
implementation 'com.itextpdf:itextpdf:5.5.13.2'

Cual de las dos es el que tengo que utilizar, solo para leer PDFs de la memora externa ?
Supongo que el segundo, por poner en el texto itextpdf, entonces la otra para que es?

O hay que poner las dos, lo pregunto ya que pones los dos link, para no ir pegando bandazos, y no liarme.

Y los links que has ido poniendo, son para crear PDFs, como te digo yo solo quiero Leer PDFs de la Memoria Externa.

rub'n

#13
Okk bien eso es, si te trancas siempre empieza desde el inicio que seguro algo se escape socio.

Si te fijas ambas dependencias son números diferentes una más actual que otra.

Usa la 7.1.16

Prueba el ejemplo así como esta, y crea tu pdf con a penas una letra en el y ábrelo con el plugin que te pase de android.

Aplica la de Jack el destripador, "empecemos por partes"


* Que estas haciendo actualmente para leer desde la memoria externa?


rubn0x52.com KNOWLEDGE  SHOULD BE FREE!!!
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen

MaX2

La pregunta que me haces te la responde después....

Mira, he creado un PDF con la librería iText, he puesto dos líneas de texto y he creado el pdf,
Luego lo he abierto y lo ha mostrado,

Ahora he probado con otro archivo que he creado con Word, he puesto una tabla con texto,



lo he abierto con esta librería, y lo ha convertido todo a texto, quitando la tabla que contenía el pdf,



no se si es porque estoy utilizando un TextView para mostrarlo, no se de otra forma :(  :-(

Hay PDFs que están escaneado, por lo que el contenido es una foto, lo he probado también, y no muestra nada, bueno una ventana en blanco.

Sobre la pregunta que me haces, lo que he estado utilizando hasta ahora para abrir los PDFs, que me ha empezado a dar error, no sé porque, si es porque la librería ya esta muerta, o tengo un problema con Android que no me deja cargar la librería (el error que me da es el que te he capturado en las imágenes de arriba)
La librería que estoy utilizando es la que he comentado en el primer post la PDFViewer

https://github.com/barteksc/AndroidPdfViewer

Para leer los PDFs primero autorizo la lectura en la memoria, y como hay muchas limitaciones con Android 11, los archivos los tengo en la carpeta Documents de la memoria externa

En el xml:

<com.github.barteksc.pdfviewer.PDFView
    android:id="@+id/pdf2View_PDF"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_centerInParent="true" />


En el Java para mostrar el PDF:

pdfView.fromFile(file)
        .load();


este es el código que estoy utilizando para mostrar los PDFs, y que me ha estado funcionando hasta ahora, que me muestra este error:



Si a pesar de mostrarme ese error, intento generar el apk, me muestra este error:





rub'n

Ese error de esa dependencia no deberias de tenerla socio.

Intenta probar esta a ver que tal.

https://developer.android.com/reference/android/graphics/pdf/PdfRenderer.html


rubn0x52.com KNOWLEDGE  SHOULD BE FREE!!!
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen

MaX2

#16
Que no debería de tener ese error, ya, pero como solucionarlo ?

Y con el iText que pasa? Dices que también se pueden mostrar los pdf, como se pueden mostrar como con cualquier otra librería ?

Y el PdfRenderer, no crees que es un poco lento, hay que crea un renderizador y para cada página, solo puede tener una página abierta en un momento dado, imaginate un documento con 100 paginas o mas.

rub'n

Cita de: MaX2 en  5 Septiembre 2021, 18:04 PM
Y con el iText que pasa? Dices que también se pueden mostrar los pdf, como se pueden mostrar como con cualquier otra librería ?

* Perdoname tu aqui, te complique, la api itext tu le pasas la salida de tu pdf. la ruta mejor dicho.

Es posible que me compartas el proyecto asi por privado?


rubn0x52.com KNOWLEDGE  SHOULD BE FREE!!!
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen

MaX2

Si, no hay problema, pero déjame que termine de probar alguna cosa mas, que me has pillado a medias, y lo limpio un poco de porquería, que te va hacer de no entenderlo, que el proyecto que tengo es con el que realizo las pruebas de todo.