APIs d'export en PDF
les objets de l'API iText
I. L'objet Chunk
L'objet Chunk
est la plus petite partie de texte que l'on peut insérer dans un document. Les Chunk
peuvent être utilisé afin de définir des blocs,
ou pour construire des phrases et des paragraphes. Un Chunk est une chaîne de caractère avec une certaine police de caractère, un style et une taille.
Tous les autres paramètres d'affichage sont à définir dans l'objet qui va contenir le Chunk
.
La ligne suivante permet de créer un Chunk avec comme contenu Hello World écrit en rouge, italique et en police Courier de taille 20.
Chunk chunk = new Chunk("Hello world", FontFactory.getFont(FontFactory.COURIER, 20, Font.ITALIC, Color.BLACK));
Voici les différentes polices de caractères disponibles dans cette API:
- Courier
- Helvetica
- Times Roman
- Symbol
- ZapfDingbats
II. L'objet Phrase
Une Phrase
est une série de Chunk pour laquelle on a définit le leading (espacement entre deux lignes). Une Phrase
a une police de caractère par défaut, cependant, il est possible de modifier la police des Chunk
contenu dans la Phrase
.
III. L'objet Paragraph
Un paragraph
est une série de Chunk
et/ou de Phrase
. Tout comme pour l'objet Phrase
, il est possible de définir le leading entre celles-ci. Il est également possible de déterminer l'indentation du paragraphe.
Il y a plusieurs moyen de construire un Paragraph
.
Voici quelques exemples:
Paragraph p1 = new Paragraph(new Chunk("1er paragraphe.", FontFactory.getFont(FontFactory.HELVETICA, 12)));
Paragraph p2 = new Paragraph(new Phrase("2em paragraphe.", FontFactory.getFont(FontFactory.HELVETICA, 12)));
Paragraph p3 = new Paragraph("3em paragraphe.", FontFactory.getFont(FontFactory.HELVETICA, 12));
IV. l' Objet Anchor
L'objet Anchor
permet de définir un lien hypertexte, par exemple vers un autre document. Cet objet dérive de l'objet Phrase
et il est utilisé de la même façon.
Deux méthodes ont été rajouté afin de définir le nom et la référence de l'objet.
Anchor anchor = new Anchor("site web");
anchor.setReference("http://www.univ-mlv.fr/");
anchor.setName("website");
La méthode setName
est utilisée pour la définition de liens internes.
V. L'objet List
Grâce au classes List et ListItem, il est possible d'ajouter des listes dans nos documents PDF. Il est posssible de choisir si l'on veut une liste ordonnée ou non.
Exemple de liste ordonnée:
List list = new List(true, 20);
list.add(new ListItem("Titre 1"));
list.add(new ListItem("Titre 2"));
list.add(new ListItem("Titre 3"));
VII. L'objet Table
L'objet Table
est un rectangle qui contient des objets Cell
représentant une matrice. La matrice de la table n'est pas forcément une matrice m x n. En effet, elle peut contenir des trous ou des cellules plus grandes que l'unité.
La façon la plus commune de créer une table est de définir à l'avance le nombre de lignes et de colonnes que va contenir le tableau, comme dans l'exemple ci dessous.
Table aTable = new Table(2,2);
aTable.addCell("0.0");
aTable.addCell("0.1");
aTable.addCell("1.0");
aTable.addCell("1.1");
Cette table contient deux lignes et deux colonnes. Les cellules sont ajoutés automatiquement, commençant à la première ligne de la première colonne. lorsque la ligne est remplie, la prochaine celulle est insérée à la deuxième ligne de la première colonne et ainsi de suite. Il est également possible d'ajouter des cellules à une certaine position dans la table en le définissant comme ceci.
Table aTable = new Table(4,4);
aTable.setAutoFillEmptyCells(true);
aTable.addCell("2.2", new Point(2,2));
aTable.addCell("3.3", new Point(3,3));
aTable.addCell("2.1", new Point(2,1));
aTable.addCell("1.3", new Point(1,3));
Voici quelques paramètes de l'objet
Table
et de l'objet Cell
: