2012-10-16 34 views
5

questa è la mia prima domanda o piuttosto domande. Sono nel mio ultimo semestre questo college e Reading PDF è uno dei componenti che sto sviluppando per la mia tesi.Leggere un documento PDF in Android

Ho letto domande sulla lettura di un documento PDF ma non ci sono risposte concrete. Voglio sapere quali sono i modi per leggere un documento PDF? quello che ho letto che ci sono API disponibili in grado di leggere documenti PDF come PDFBox, muPDF e iText. Non ho visto altre API ma questo è quello che ho letto su altri post.

Il problema è il primo PDFBox Ho letto che PDFBox non può essere utilizzato a causa delle dipendenze di AWT e Android non ha classi AWT e relative a Swing. PDFBox è fuori questione. muPDF non ho letto nulla su muPDF, mi è stato consigliato ma voglio sapere se è possibile leggere documenti PDF. iText questa è l'API più comune che incontro nelle domande relative a PDF e Android. Il problema qui è la sua licenza? (correggetemi se im sbagliato) Non ho provato niente di tutto questo 3 ancora perché voglio sapere se ci sono altri soluzioni accanto a questo 3.

Altro che le API, penso PDF Applicazioni Reader possono essere utilizzate anche se non sbaglio? se può essere usato, allora, COME?. Non sto cercando un codice ma una spiegazione su come l'hai fatto e come l'hai implementato nella tua applicazione.

ho pensato in un altro modo, ma non so se questo è possibile. che ne dici di convertire un documento PDF in un file .txt o .doc? dentro l'androide. sarebbe come quando carico un documento PDF all'interno di Android un codice convertirà quel documento PDF in un file .txt/.doc e l'applicazione cercherà ed estrarrà il testo dal file .txt/.doc piuttosto che dal documento PDF.

se ti stai chiedendo perché ho bisogno di questo tipo di componente, perché sto lavorando su un'applicazione che avrebbe RICERCA e ESTRATTO testo da un documento PDF utilizzando Android.

Questa è la mia domanda:

  1. Quali sono i modi per leggere un documento PDF in Android?
  2. Quali sono le tue esperienze nell'uso di questo tipo di metodo?
  3. Come hai fatto a utilizzare questo tipo di metodo (solo un flusso/spiegazione farebbe)?
  4. Se il metodo ha una licenza quale sarebbe il problema in futuro?

PS: correggimi se sbaglio.

Grazie.

risposta

1

Questa è una risposta specifica per iText in modo che non risponda a tutte le vostre domande, ma potrebbe comunque essere di aiuto.

Quali sono i modi per leggere un documento PDF in Android?

ho utilizzare i binding Java iText (Continuate a leggere per scoprire sulla licenza LGPL)

Quali sono le vostre esperienze nell'utilizzo di questo tipo di metodo?

Grande! Copre tutto ciò che è legato al PDF. (Le versioni precedenti potrebbero essere leggermente diverse)

Come hai fatto a utilizzare questo tipo di metodo (basterebbe un flusso/una spiegazione)?

Suppongo che questa domanda sia correlata all '"altro modo" a cui pensavi quindi non è rilevante per la libreria di PDF iText?

Se il metodo ha una licenza quale sarebbe il problema in futuro?

ho ancora vi incoraggio a utilizzare la versione aggiornata di iText, se si utilizza la versione 2.1.7 o precedente iText si cade sotto la vecchia licenza LGPL, e ha di gran lunga più libero regno ed è più adatto per scopi commerciali o uso privato/chiuso senza problemi reali. Da quello che posso dire tutta la funzionalità che cercate è disponibile nella versione 2.1.7.

La licenza AGPL per la versione corrente di iText è abbastanza decente, da quello che ho capito è necessario pubblicare il programma con una licenza simile e rendere il codice liberamente disponibile per gli altri (pagherebbe comunque per controllare i dettagli), se la condivisione del codice non è un problema, vale la pena esaminare l'ultima versione di iText.


Riferimenti:

LGPL licenza: http://www.gnu.org/licenses/lgpl.html

iText AGPL licenza: http://itextpdf.com/terms-of-use/agpl.php

+0

puoi dare qualche idea su come usare iText nelle applicazioni. –

+0

Grazie per il tempo che ha risposto alla mia domanda. sulla domanda 3 'Voglio sapere come hai usato iText in applicazione' come ha detto SahilmahajanMJ. Sicuramente controllo iText. Grazie ancora. – Christian

+0

a proposito, in merito alla licenza e se la mia domanda fosse stata caricata su "Google Play" sarebbe stata rimossa a causa della licenza itext? – Christian

0

stavo anche lavorando su un'applicazione Android, in cui ho bisogno di aprire i file PDF nella mia applicazione Android . Per prima cosa ho pensato di farlo utilizzando le API straniere. Ho provato a usare mupdf, ma non è stata una bella esperienza.

Quindi il nostro team leader mi ha suggerito di installare prima un'applicazione di visualizzazione pdf nel dispositivo e quindi di utilizzare il codice per aprire il pdf attraverso l'applicazione di visualizzazione pdf installata.

Si può facilmente scaricare applicazione visualizzatore PDF dal gioco gogle, quindi è possibile utilizzare il seguente codice per aprire il pdf nella vostra applicazione,

   File file = new File("/sdcard/MyPDFfile.pdf"); 
       Uri path = Uri.fromFile(file); 
       Intent intent = new Intent(Intent.ACTION_VIEW); 
       intent.setDataAndType(path, "application/pdf"); 
       intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
       startActivity(intent); 

Questo codice cercherà automaticamente l'applicazione pdf installata nel dispositivo e passerà l'intento a quella applicazione per aprire il file pdf.

+1

Questo è il modo Android. Non è quello che sta chiedendo. Ha bisogno di ESTRARRE il testo. –