IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Entrée/Sortie Java Discussion :

Comment peut on imprimer un fichier PDF avec format de page specifique


Sujet :

Entrée/Sortie Java

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 26
    Points : 13
    Points
    13
    Par défaut Comment peut on imprimer un fichier PDF avec format de page specifique
    Bonjour

    j'ai construit une page de rapport avec iText sous forme de fichier PDF avec page de taille spécifique ,mai quand j'ai voulu tester l'impression depuis adobe acrobat reader la taille de la zone d'impression a changer,avec une imprimante EPSON une zone vide a été ajouté a droite ,qui na pas posé de problème techniquement,mai avec une HP la zone a été ajouté a droite qui a posé un problème,aussi quand j'ai ouvert le fichier dans une autre version de Adobe l'impression a aussi changé de forme
    voila un morceau de code de création du rapport:

    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
     
    public class FirstPdf {
    	Font font;
    	Paragraph p;
    	Document document;
    	Rectangle pageSize;
    	static PdfWriter pdfWriter;
    	public FirstPdf()
    	{
    		pageSize = new Rectangle(465.4f, 314.7f);
    		document = new Document(pageSize,0,0,pageSize.getWidth(),pageSize.getHeight());
    		document.bottom(0);
    		document.left(0);
    		try {
    		pdfWriter.getInstance(document,
    		new FileOutputStream(".//temp//HelloWorld.pdf"));
    		document.setPageSize(pageSize);
    		document.open();
    		BaseFont bf = BaseFont.createFont(
    				"c:/windows/fonts/arialbd.ttf", BaseFont.IDENTITY_H, true);
    				font = new Font(bf, 10);
    				imprimer();
    				} catch (Exception e) {}
            }
    ...
     
    	public void imprimer(){				
    		try {
    				MultiColumnText mct = new MultiColumnText(document.top(),document.bottom());	
    				float[] left ={0f,document.top(),0f,document.bottom()};
    				float[] right = {(pageSize.getWidth()/2)+10,document.top(),(pageSize.getWidth()/2)+10,document.bottom()};
     
    				mct.addColumn(left,right);				
    				p = new Paragraph();
    				mct.addElement(p);
     
    		        p = new Paragraph(113f,"NOM Prénom",font);
    		        p.setFirstLineIndent(102f);
    		        p.setAlignment(Element.ALIGN_JUSTIFIED);
                    mct.addElement(p);
     
    		        p = new Paragraph(34f,"1985 à Télagh",font);
    		        p.setFirstLineIndent(100f);
    		        p.setAlignment(Element.ALIGN_JUSTIFIED);
                    mct.addElement(p);	
     
     				document.add(mct);
     
     
    				} catch (DocumentException e) {
    					// TODO Auto-generated catch block
    					e.printStackTrace();
    				}
    				document.close();		
     
    				}
     
    		// handle exception
     
    	public static void main(String[] args) throws Exception {
    		// TODO Auto-generated method stub
     
    		new FirstPdf();
    	}
    	}


    Comment je peut imprimer des rapports a travers mon application en cliquant sur le bouton imprimer,quelque soit l'impriment

    merci d'avence

  2. #2
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 083
    Points
    7 083
    Par défaut
    un fichier PDF c'est comme une image, ca ne bouge pas en fonction du rendu / de la machine.

    En revanche, pour imprimer il faut parfois effectuer des transformations (ajout de marges pour les reliure, contenu en-dehors des marges minimales de l'imprimante, format PDF trop grand pour une feuille physique (ex: PDF en A3 sur une feuille A4). Attention également aux propriétés d'impression enregistrée pour chaque imprimante. Voilà pourquoi tu as des résultats différents.

    Pour imprimer quelque chose en Java tu peux utiliser l'API Java Print (Un tutoriel). Le problème c'est qu'un PDF n'est pas un document Java Print. Il faudra regarder du côté des bibliothèques de gestion PDF si des interfaces sont fournies.
    Pour un projet une de nos équipes a utilisé la librairie JPedal.

    Sinon il y a java.awt.Desktop.print(java.io.File)
    Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
    Ceylon : Installation - Concepts de base - Typage - Appels et arguments

    ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
    Une solution vous convient ? N'oubliez pas le tag
    Signature par pitipoisson

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 26
    Points : 13
    Points
    13
    Par défaut
    Merci Nemek

    Je sais pas si tu a remarqué que le format du papier que je veut utilisé n'existe pas généralement dans le dialogue de l'impression est logiquement c'est ça la cause du décalage car quand je sélectionne "Aucun" pour l'ajustement il y a quand même une zone qui est ajouter
    je suppose que le problème vient du dialogue nom pas de l'imprimante
    comment peut on réglé ça.

  4. #4
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 26
    Points : 13
    Points
    13
    Par défaut
    Pour le PDF mon choix c'est été d'après un conseil http://www.developpez.net/forums/d10...ssion-imprime/

  5. #5
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 083
    Points
    7 083
    Par défaut
    Il faut que tu gères un "Scale" (Zoom/Dézoom) ou un "Split" (découpage) sur plusieurs feuilles.
    Quoiqu'il en soit c'est à la charge du code envoyant les données à l'imprimante (toi-même manuellement, ou via des options de la librairie choisie). L'imprimante ne saura pas (sauf fonction avancée) imprimer du contenu format A3 sur une feuille A4.
    Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
    Ceylon : Installation - Concepts de base - Typage - Appels et arguments

    ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
    Une solution vous convient ? N'oubliez pas le tag
    Signature par pitipoisson

  6. #6
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 26
    Points : 13
    Points
    13
    Par défaut
    Le rapport est de taille 162x111mm,comment envoyer cette charge de donné a l'iprimente

Discussions similaires

  1. Réponses: 6
    Dernier message: 24/11/2013, 00h56
  2. Fichier PDF avec format capable d'être lu sur le WEB
    Par Marcel Chabot dans le forum Reports
    Réponses: 0
    Dernier message: 10/01/2013, 20h00
  3. [Débutant] imprimer un fichier pdf avec c# (wpf)
    Par amados20 dans le forum C#
    Réponses: 2
    Dernier message: 27/03/2012, 17h42
  4. [C#] Comment imprimer un fichier .pdf ?
    Par petoulachi dans le forum C#
    Réponses: 9
    Dernier message: 05/10/2005, 15h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo