10
votes

Comment créer un fichier PDF à l'aide d'ITEXT ou d'une autre bibliothèque sur Android?

Comment créer un fichier PDF à l'aide d'ITEXT ou d'une autre bibliothèque sur Android?

Y a-t-il un tutoriel sur IText pour Android?

merci


2 commentaires

De quoi créez-vous le PDF? Je suis inconnu avec itext .


Non, je souhaite créer un fichier PDF dans une application Android à l'aide de texte et d'images.


6 Réponses :


0
votes

J'ai utilisé ITEXT dans une application Java Swing - Cela a bien fonctionné pour créer des fichiers PDF de base. Le code va quelque chose comme ceci: XXX

Si vous avez besoin de plus d'informations, faites le moi savoir. Bonne chance!


5 commentaires

Salut Tarrant, je souhaite créer un fichier PDF dans l'application Android non dans Java Swing.


J'utilise un code simple pour créer un fichier PDF dans ma carte SD à l'aide de la bibliothèque ITEXT PDF, mais cela donne des erreurs suivantes. 1. n'a pas pu trouver la classe 'com.itextpdf.text.pdf.pdfgraphics2d', référencé de la méthode com.itextpdf.text.pdf.pdfcontentbyte.creationgraphics 2. ne pouvait pas Rechercher classe 'com.itextpdf.text.pdf.pdfprintergraphics2d', référencé de la méthode com.itextpdf.text.pdf.pdfcontentbyte.createprintergraphics 3. ERROR / DALVIKVM (309) : Impossible de trouver la classe 'org.bouncycastle.cms.cmsenvelopeddata', référencé de la méthode com.itextpdf.text.pdf.pdfreader.readdecrypteddocobj


Je suppose que vous avez ajouté la bibliothèque à votre projet. Je pense que vous devrez peut-être exécuter DX (dans Android SDK) sur le fichier JAR depuis que, sauf si vous utilisez Eclipse? DX est utilisé pour transformer des fichiers de classe dans un pot non-android en fichiers DEX afin qu'ils puissent être trouvés / utilisés sur l'appareil.


Oui, j'ai ajouté la bibliothèque à mon projet et j'utilise Eclipse comme IDE.Coulez-vous s'il vous plaît partager la version d'IText que vous avez utilisée? Comme ITEXT 5.0.7 est destiné à développer des applications sur Android, mais ce n'est pas gratuit.Ils sont facturés environ 1500 $ pour la licence. Avez-vous une autre bibliothèque PDF open source pour Android.Veuillez-vous partager si vous le savez.


J'ai utilisé ITEXT 2.0.6. Je crois que c'était une source ouverte à l'époque.



14
votes

Vous pouvez utiliser ITEXT pour créer des PDF. Utilisez la dernière version (5.1.3) et n'incluez que l'ITEXTPDF-5.1..jar dans le chemin de construction. Vous pouvez utiliser quelque chose comme ça pour accomplir la création PDF.

Document document = new Document();
file = Environment.getExternalStorageDirectory().getPath() + "/Hello.pdf"
PdfWriter.getInstance(document,new FileOutputStream(file));
document.open();
Paragraph p = new Paragraph("Hello PDF");
document.add(p);
document.close();


3 commentaires

Obtenir une erreur ici ..... pdfwriter.getinstance (document, nouveau fichierOutPutStream (fichier)); Dis-moi la solution possible


Les gens ici peuvent vous aider mieux si vous postez l'erreur. Et descendez simplement parce qu'une solution n'a pas fonctionné pour vous n'est pas la voie à suivre. Veuillez passer du temps à apprendre le code de conduite avant de poster quelque chose. De plus, personne ne va vous promener à travers une solution sans que vous ayez essayé de le déboguer au moins un peu.


Même code que j'utilise, dans la console, il montre un format approprié, mais après la création d'alignement de PDF n'est pas approprié



3
votes

Ceci est mon exemple de codage pour la création de fichier PDF avec du texte et de l'image Contenu à l'aide de la bibliothèque ITEXT et pour stocker le fichier PDF dans l'externe Emplacement de stockage. La seule chose est que vous devez télécharger l'ITEXT Bibliothèque et ajoutez-le dans votre projet. xxx


0 commentaires

0
votes
package com.cete.androidexamples.dynamicpdf.helloworld;

import com.cete.dynamicpdf.*;
import com.cete.dynamicpdf.pageelements.Label;

import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.widget.Toast;

public class DynamicPDFHelloWorld extends Activity {
    private static String FILE = Environment.getExternalStorageDirectory()
            + "/HelloWorld.pdf";

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        // Create a document and set it's properties
        Document objDocument = new Document();
        objDocument.setCreator("DynamicPDFHelloWorld.java");
        objDocument.setAuthor("Your Name");
        objDocument.setTitle("Hello World");

        // Create a page to add to the document
        Page objPage = new Page(PageSize.LETTER, PageOrientation.PORTRAIT,
                54.0f);

        // Create a Label to add to the page
        String strText = "Hello World...\nFrom DynamicPDFâ„¢ Generator "
                + "for Java\nDynamicPDF.com";
        Label objLabel = new Label(strText, 0, 0, 504, 100,
                Font.getHelvetica(), 18, TextAlign.CENTER);

        // Add label to page
        objPage.getElements().add(objLabel);

        // Add page to document
        objDocument.getPages().add(objPage);

        try {
            // Outputs the document to file
            objDocument.draw(FILE);
            Toast.makeText(this, "File has been written to :" + FILE,
                    Toast.LENGTH_LONG).show();
        } catch (Exception e) {
            Toast.makeText(this,
                    "Error, unable to write to file\n" + e.getMessage(),
                    Toast.LENGTH_LONG).show();
        }
    }
}
add DynamicPDF to  libs files
you can downloade it from  link

0 commentaires

11
votes

4 commentaires

itextpdf v5.0.6 est répertorié comme la dépendance. J'ai deux problèmes avec ça. 1. 5.0.6 est incroyablement vieux. S'en tenir aux versions plus récentes pour de nouvelles applications. 2. Vous utilisez ITEXT Java et non Itextg (Port Android). Le port Android a quelques modifications mineures. Pour nommer quelques-uns: exclure l'utilisation de l'API qui n'est pas dans l'API Android (Java.Awt) et la prévention de l'affrontement des espaces de noms (Bouncycastle).


oui, je suis en train de construire un deuxième exemple en utilisant iTextg;)


Bien. Tout d'abord, merci que je souhaiterais avoir vu votre solution quelques heures auparavant. Deuxièmement, je dois demander qu'Ext n'est pas gratuit, n'est-ce pas?


J'ai utilisé Itextg Voici le gist que j'ai utilisé pour créer PDF. J'ai ajouté le filigrane, l'image et l'utilisation de la table Gist.github.com/Mhd-zulqarnain/e99C42C4D35DCAffD610507f75 402



1
votes

J'ai créé un exemple de projet pour créer le fichier PDF à partir de données à l'aide de la bibliothèque ITEXTPDF / ITEXT7 Library strong>

Exemple de lien de projet: https://github.com/rheyansh/rpdfgenerator p>

Ajouter en dessous de la dépendance dans votre application Gradule: P>

val dummyInfo = dummyModel()
                RPdfGenerator.generatePdf(this, dummyInfo)


0 commentaires