2016-11-23 6 views
0

J'ai une table avec une cellule et que vous voulez placer un graphique à barres horizontales en elle. Je veux peindre ce tableau avec des rectangles dans cette cellule pour éviter une autre bibliothèque.Comment dessiner des rectangles dans une cellule de table?

Ai-je besoin d'une toile pour dessiner les rectangles? Comment placer la toile dans la cellule et comment créer la toile sur la bonne page (de la cellule)?

Merci!

Répondre

0

iText7 a deux types d'objets de toile:

Une mise en page Canvas, un objet de haut niveau qui agit comme un pont entre les opérations de haut et de bas niveau qui vous permet d'ajouter des objets de haut niveau à un spécifié région. Cette toile n'a pas de concept de page.

Un PdfCanvas qui vous permet de faire des opérations à faible niveau soit sur une page ou forme spécifique XObject, tels que tracer des lignes, l'ajout de texte à des positions absolues, ...

Les constructeurs de Canvas nécessitent soit une forme XObject ou un PdfCanvas, donc une page peut être spécifiée pour Canvas cette façon.

Maintenant, pour dessiner des rectangles dans les cellules, je vous recommande de mettre en œuvre votre propre cellule événement, et en utilisant PdfCanvas pour dessiner les rectangles à l'intérieur du code de gestion des événements.

Quelques liens utiles: partie Tutoriel sur les gestionnaires d'événements (dernier exemple est celui que vous voulez): http://developers.itextpdf.com/content/itext-7-jump-start-tutorial/chapter-3-using-renderers-and-event-handlers

dessin à l'aide pdfCanvas: http://developers.itextpdf.com/content/itext-7-jump-start-tutorial/chapter-2-adding-low-level-content