Bonjour,
je cherche à faire du dessin vectoriel dans un PDF afin d'un mettre des dessins et du texte.
J'ai testé plusieurs lib mais elles ne permettaient pas de mettre du texte.
J'ai atterri sur freehep et sa multitude de JAR associés.
Déjà à ce niveau je ne suis pas sûr d'avoir tout bien paramétré correctement dans mon projet. (Si tu l'utilises et que tu peux m'aider ce serait génial !)
Ensuite j'ai enfin réussi à générer un PDF.
Sauf que je ne pige pas bien le fonctionnement, j'ai des blancs pas possible en haut et en bas de ma page (1/6 de la page en haut, idem en bas et sur les coté je dirais 1cm)
Le dessin donc ne part pas d'en haut, et je ne comprends pas le lien avec l'objet dimension dans cette fenêtre de dessin.
Mon code est le suivant :
S'il y a quelqu'un qui a déjà utilisé cet lib et peux me donner des conseils sur comment gérer les différents formats (A3-A4 ....) et bien faire partir les dessins avec l'axe x,y (0,0) en haut à gauche comme sur d'autres lib que j'ai pu trouver je suis preneur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 public static void main(String[] args) throws FileNotFoundException { // Comment faire pour le format A3 du pdf PDFGraphics2D graphics = new PDFGraphics2D(new FileOutputStream(FILE_OUT), new Dimension(200, 200)); Properties properties = new Properties(); // properties.setProperty(PDFGraphics2D.ORIENTATION, "PORTRAIT"); // properties.setProperty(PDFGraphics2D.PAGE_SIZE, "A3"); properties.setProperty(PDFGraphics2D.PAGE_MARGINS, "0"); graphics.startExport(); graphics.setStroke(new BasicStroke(3)); graphics.setPaintMode(); graphics.setClip(0, 0, 297, 420); //graphics.setBackground(Color.GRAY); //graphics.setProperties(properties); graphics.drawLine(0,0,200.0,0); graphics.setColor(Color.GREEN); graphics.drawLine(0, 10, 300, 10); graphics.setColor(Color.CYAN); graphics.drawLine(0, 20, 350, 20); graphics.setColor(Color.black); graphics.drawLine(0, 30, 570, 30); graphics.setColor(Color.gray); graphics.drawLine(1.0,-145.0,200.0,250.0); graphics.drawLine(1.0,1.0,200.0,250.0); graphics.drawLine(1.0,100.0,200.0,250.0); graphics.endExport();
Merci.
Partager