[Libreoffice/cups] Problème marge lors impression via "hpcups"

Applications, problèmes de configuration réseau
Répondre
kero
Daikyu
Messages : 89
Inscription : dim. 26 août 2012, 11:30

[Libreoffice/cups] Problème marge lors impression via "hpcups"

Message par kero »

Bonjour,

Descriptif simple:
J'ai un problème lors de l'impression avec Writer: si la marge supérieure de la page à imprimer est inférieure à 1,5cm, la partie supérieure du texte n'est pas imprimée.

Plus précisément
En préliminaire: mon imprimante est une HP Officejet 6700 Premium et j'imprime via le serveur cups. Jusqu'à récemment, je pouvais utiliser le driver hplip (qui intègre hpijs, le driver de HP pour Linux), mais depuis peu, ce dernier a été déclaré "deprecated", ce qui fait qu'il n'est plus utilisable. Du coup, on nous demande d'utiliser le driver "hpcups" à la place, un driver natif qui vient avec le serveur d'impression cups.

En préliminaire toujours: mes pages sont généralement configurées dans Writer avec une marge de 1cm (haut/droite/gauche) et 1,3cm (bas). Mon imprimante a la capacité d'imprimer avec de telles marges. Elle l'a toujours fait avec l'ancien driver hplip. En fait, je peux imprimer des pages comportant une bordure qui se trouve à 1 mm de la page.

Le driver hpcups fonctionne globalement bien, sauf pour le détail sus-mentionné: lorsque j'imprime une page dont la marge supérieure est configurée à moins de 1,5 cm, tout ce qui se trouve à moins de 1,5 cm n'est pas imprimé. Alors bien sûr, j'ai pensé dans un premier temps que le problème venait du nouveau driver et pourtant, avec ce même driver hpcups, l'imprimante parvient à imprimer une page de test avec des marges très réduites. Et même: si je prends un document Libreoffice, si j'imprime directement le haut de la page est découpé, mais si je convertis d'abord en PDF et j'imprime, la page est imprimée complètement.

Autrement dit, on dirait que le problème ne se situe pas dans le driver en soi, mais dans l'intéraction entre Libreoffice et hpcups. À noter d'ailleurs qu'avec un autre driver (Gutenprint), Libreoffice imprime sans ce problème de marge (mais je ne peux utiliser ce driver-là puisqu'il ne gère pas la couleur).

Voilà voilà... Problème complexe. Si quelqu'un avait une idée ?

kero
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17222
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [Libreoffice/cups] Problème marge lors impression via "hpcups"

Message par benjarobin »

Bonjour,
Essaye de changer les options dans cups: http://localhost:631/admin/
-> Gérer les imprimantes
-> Clique sur ton imprimante dans la liste
-> Dans le menu déroulant "Administration" sélectionne "Définir les options de l'imprimante"
-> Change "Media Size:" par "A4 Borderless 210x297mm"
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
kero
Daikyu
Messages : 89
Inscription : dim. 26 août 2012, 11:30

Re: [Libreoffice/cups] Problème marge lors impression via "hpcups"

Message par kero »

Hello benjarobin,

Merci pour ta réponse (et désolé) de répondre si tard, j'étais complètement pris par le boulot.

Le format de page est déjà configuré à ce que tu dis (A4 Borderless 210x297mm) et d'ailleurs, si par exemple j'imprime un PDF, je n'ai pas ce problème de marge. Le problème ne se pose que lorsque j'imprime un fichier depuis Libreoffice (et uniquement au niveau de la marge supérieure). Mais le problème ne se pose que lorsque j'imprime avec hpcups. Si j'imprime avec le driver gutenprint, ça passe sans problème (mais ce driver, une fois encore, ne gère pas les couleurs :/).

Compliqué, du coup.
hopimet
Elfe
Messages : 996
Inscription : mer. 14 mars 2012, 22:48

Re: [Libreoffice/cups] Problème marge lors impression via "hpcups"

Message par hopimet »

Salut,

Question bête : dans libreoffice quand tu vas dans fichier/paramétrage de l'imprimante/propriétés, la taille du papier est bien A4 ?
kero
Daikyu
Messages : 89
Inscription : dim. 26 août 2012, 11:30

Re: [Libreoffice/cups] Problème marge lors impression via "hpcups"

Message par kero »

hopimet: oui.

Cela dit, j'ai un peu exploré davantage le problème ce soir et j'ai constaté un certain nombre de choses:
- Lorsque je fais la même opération depuis un autre ordi (un laptop, avec une configuration similaire), je n'ai pas de problème. Ce n'est donc pas l'assemblage libreoffice/cups/hpcups qui est fondamentalement en cause. Il y a un problème spécifique à mon PC.
- Sur mon PC, lorsque je fais la même opération à partir d'un compte user vierge, avec un libreoffice vierge, le problème se maintient. Ce n'est donc pas de libreoffice que vient le problème, mais de cups.
- lorsque j'imprime une feuille configurée, dans Libreoffice, en format "Letter" et pas "A4", le problème disparait. L'impression est entière. Alors que lorsque j'imprime en A4, le problème persiste. Alors que pourtant, cups est bien configuré en (A4 Borderless 210x297mm) - ce qui est, d'ailleurs, la configuration du cups qui se trouve sur le laptop.

On dirait donc un problème du type: cups reçoit un fichier en A4 mais décide qu'il s'agit d'un format Letter ou décide de le traiter en format Letter.

Peut-être que vous avez une idée de la manière d'explorer dans cette direction ?

À noter aussi qu'entretemps, j'ai supprimé cups/libcups avec les fichiers de configuration et reconfiguré le tout pour partir d'une installation vierge. Le problème persiste...
kero
Daikyu
Messages : 89
Inscription : dim. 26 août 2012, 11:30

Re: [Libreoffice/cups] Problème marge lors impression via "hpcups"

Message par kero »

Bon, pour résumer les principales trouvailles. Au cas où de nouveaux lecteurs passeraient par ici. Et pour demander un conseil spécifique.

J'ai pu déterminer que:
1) Le problème semble venir de l'installation de cups sur mon ordinateur, ou en tout cas, pas de Libreoffice, puisque depuis un autre ordi, Libreoffice parvient sans problème à imprimer via son cups local en utilisant le driver hpcups.
2) Le problème semble être une question de format papier et pas de marge, puisque si - dans Libreoffice - je configure la page à imprimer en "Letter", ça imprime normalement, alors qu'en "A4", ça foire. Alors que l'imprimante est configurée en A4 dans cups.

À noter: j'ai tenté d'importer la configuration de cups de l'autre ordi (/etc/cups) sur l'ordi avec le problème, et le problème persiste. Le problème ne semble pas venir d'une erreur dans /etc/cups.

Maintenant, j'ai une question: je crois comprendre (mais en réalité je ne comprends rien là-dessus) que lorsque Libreoffice doit imprimer du matériel, il y a tout un tat de softs intermédiaires/conversions de fichiers qui interviennent entre Libreoffice et cups. Je pense à PostScript, GhostScript, et autres bidules de ce genre. Mais je ne comprends pas trop comment tout ça intéragit. Quelqu'un aurait-il des suggestions de ce coté-là ?

Merci encore :)
kero
Daikyu
Messages : 89
Inscription : dim. 26 août 2012, 11:30

Re: [Libreoffice/cups] Problème marge lors impression via "hpcups"

Message par kero »

Bon. J'ai encore trituré la bécane un bon coup pour chercher la source du problème, alors je vais refaire le point (merci d'oublier tout ce qui a été dit jusqu'ici). Des fois que - à partir des observations que j'ai faites - quelqu'un aurait une idée pour la suite des opérations.

Donc, plusieurs remarques:
1) Pour rappel, le problème de base est que lorsque j'imprime une feuille A4 depuis Libreoffice sur mon imprimante HP Officejet 6700 Premium, via cups avec le driver hpcups, avec une marge du haut de page qui est inférieure 1,5 cm, tout ce qui se trouve au-delà de cette marge n'est pas imprimé (alors que par ailleurs, les pages de test ou impression de PDF montrent que l'imprimante peut parfaitement imprimer avec une marge plus réduite).
1) J'avais fait une erreur dans mes tests et en fait, il apparaît que le problème se retrouve sur mon autre laptop avec Archlinux/cups/hpcups/libreoffice.
2) J'ai fait d'autres tests sur mon PC avec d'autres softs et il apparaît que le problème ne se pose PAS si j'utilise Abiword mais se pose aussi si j'utilise Openoffice. De plus, avec Libreoffice, si j'utilise le driver hpcups pour une version proche d'imprimante HP (Officejet 6600), le problème disparaît.

Maintenant, j'ai activé les traces de débugguage de cups et j'ai remarqué des choses intéressantes. Peut-être que ça peut donner des indications à quelqu'un pour m'aider.

Je ne transmets ici que la partie des logs où il me semble trouver des choses pertinentes. S'il peut être utile d'en donner plus, laissez-moi savoir.

Voilà deux extraits pris de /var/log/cups/error_log après une impression foireuse:
D [28/Jun/2018:12:50:44 +0200] [Job 3155] 3 filters for job:
D [28/Jun/2018:12:50:44 +0200] [Job 3155] pdftopdf (application/pdf to application/vnd.cups-pdf, cost 66)
D [28/Jun/2018:12:50:44 +0200] [Job 3155] gstoraster (application/vnd.cups-pdf to application/vnd.cups-raster, cost 99)
D [28/Jun/2018:12:50:44 +0200] [Job 3155] hpcups (application/vnd.cups-raster to printer/HP_Officejet_6700, cost 0)
D [28/Jun/2018:12:50:44 +0200] [Job 3155] job-sheets=none,none
D [28/Jun/2018:12:50:44 +0200] [Job 3155] argv[0]="HP_Officejet_6700"
D [28/Jun/2018:12:50:44 +0200] [Job 3155] argv[1]="3155"
D [28/Jun/2018:12:50:44 +0200] [Job 3155] argv[2]="keikoz"
D [28/Jun/2018:12:50:44 +0200] [Job 3155] argv[3]="PlanningTravail.odt"
D [28/Jun/2018:12:50:44 +0200] [Job 3155] argv[4]="1"
D [28/Jun/2018:12:50:44 +0200] [Job 3155] argv[5]="Duplex=None InputSlot=Tray1 PageSize=A4.Duplex job-uuid=urn:uuid:85bae156-3acd-3fd7-6141-240a734334ad job-originating-host-name=localhost date-time-at-creation= date-time-at-processing= time-at-creation=1530183044 time-at-processing=1530183044 document-name-supplied=DS9pHR"
D [28/Jun/2018:12:50:44 +0200] [Job 3155] Ghostscript using Any-Part-of-Pixel method to fill paths.
D [28/Jun/2018:12:50:44 +0200] [Job 3155] Ghostscript command line: gs -dQUIET -dPARANOIDSAFER -dNOPAUSE -dBATCH -dNOINTERPOLATE -dNOMEDIAATTRS -dShowAcroForm -sstdout=%stderr -sOutputFile=%stdout -sDEVICE=cups -sMediaType=Plain -sOutputType=0 -r600x600 -dMediaPosition=1 -dDEVICEWIDTHPOINTS=595 -dDEVICEHEIGHTPOINTS=841 -dcupsBitsPerColor=8 -dcupsColorOrder=0 -dcupsColorSpace=17 -dcupsInteger0=26 -scupsPageSizeName=A4.Duplex -I/usr/share/cups/fonts -c \'<</.HWMargins[9.360000 33.192001 9.359985 42.552002] /Margins[0 0]>>setpagedevice\' -f -_
Les éléments mis en gras me semblent intéressants. Je ne comprends pas pourquoi le papersize est à A4.Duplex alors que nulle part le duplex est activé. De plus, à noter qu'une marge de page est définie qui semble faire partie du problème (je ne sais pas si c'est lié au A4.Duplex ou pas...). Maintenant, ce qui est intéressant, c'est que le log de cups est différent (et plus cohérent) aussi bien lorsque j'impime SOIT avec Abiword SOIT avec Libreoffice + hpcups pour Officejet 6600. Dans tous ces cas, le log, pour le passage équivalent, donne:
D [28/Jun/2018:13:11:19 +0200] [Job 3158] 3 filters for job:
D [28/Jun/2018:13:11:19 +0200] [Job 3158] pdftopdf (application/pdf to application/vnd.cups-pdf, cost 66)
D [28/Jun/2018:13:11:19 +0200] [Job 3158] gstoraster (application/vnd.cups-pdf to application/vnd.cups-raster, cost 99)
D [28/Jun/2018:13:11:19 +0200] [Job 3158] hpcups (application/vnd.cups-raster to printer/HP_Officejet_6700, cost 0)
D [28/Jun/2018:13:11:19 +0200] [Job 3158] job-sheets=none,none
D [28/Jun/2018:13:11:19 +0200] [Job 3158] argv[0]="HP_Officejet_6700"
D [28/Jun/2018:13:11:19 +0200] [Job 3158] argv[1]="3158"
D [28/Jun/2018:13:11:19 +0200] [Job 3158] argv[2]="keikoz"
D [28/Jun/2018:13:11:19 +0200] [Job 3158] argv[3]="abiword, tâche n°2"
D [28/Jun/2018:13:11:19 +0200] [Job 3158] argv[4]="1"
D [28/Jun/2018:13:11:19 +0200] [Job 3158] argv[5]="InputSlot=Tray1 number-up=1 MediaType=Plain PageSize=A4 noCollate OutputMode=Normal ColorModel=RGB Duplex=None job-uuid=urn:uuid:ef77a143-a9ee-3f6e-4fdf-9d60704df776 job-originating-host-name=localhost date-time-at-creation= date-time-at-processing= time-at-creation=1530184279 time-at-processing=1530184279"
D [28/Jun/2018:13:11:19 +0200] [Job 3158] Ghostscript command line: gs -dQUIET -dPARANOIDSAFER -dNOPAUSE -dBATCH -dNOINTERPOLATE -dNOMEDIAATTRS -dShowAcroForm -sstdout=%stderr -sOutputFile=%stdout -sDEVICE=cups -sMediaType=Plain -sOutputType=0 -r600x600 -dMediaPosition=1 -dDEVICEWIDTHPOINTS=595 -dDEVICEHEIGHTPOINTS=841 -dcupsBitsPerColor=8 -dcupsColorOrder=0 -dcupsColorSpace=17 -dcupsInteger0=26 -scupsPageSizeName=A4 -I/usr/share/cups/fonts -c \'<</.HWMargins[9.360000 9.360000 9.359985 9.359985] /Margins[0 0]>>setpagedevice\' -f -_
On voit dans cet extrait que le format de page est correct et que les marges sont plus faibles.

Enfin, à noter que si j'utilise Libreoffice + hpcups6700 (c'est-à-dire la configuration qui pose problème) mais avec la page configurée en "Letter" au lieu de A4, l'impression se fait aussi normalement, et dans les logs, les marges (HWMargin) sont également plus faibles, et d'ailleurs, il n'y a plus l'ajout de ".Duplex". Voilà un extrait plus court:
D [28/Jun/2018:13:21:10 +0200] [Job 3162] Ghostscript command line: gs -dQUIET -dPARANOIDSAFER -dNOPAUSE -dBATCH -dNOINTERPOLATE -dNOMEDIAATTRS -dShowAcroForm -sstdout=%stderr -sOutputFile=%stdout -sDEVICE=cups -sMediaType=Plain -sOutputType=0 -r600x600 -dMediaPosition=1 -dDEVICEWIDTHPOINTS=612 -dDEVICEHEIGHTPOINTS=792 -dcupsBitsPerColor=8 -dcupsColorOrder=0 -dcupsColorSpace=17 -dcupsInteger0=2 -scupsPageSizeName=Letter -I/usr/share/cups/fonts -c \'<</.HWMargins[9.360000 9.360000 9.359985 9.359985] /Margins[0 0]>>setpagedevice\' -f -_
Donc, pour conclure, on dirait qu'il y a un problème dans l'intéraction entre Libreoffice et le driver hpcups/6700, mais seulement dans le cas de certains formats de page (A4 en tout cas, on ne sait pas si c'est le cas pour d'autres) sans que je parvienne à comprendre qui est le fautif/d'où vient le problème.

Si quelqu'un est arrivé au bout du pavé, je l'en remercie. Des idées ? :)
kero
Daikyu
Messages : 89
Inscription : dim. 26 août 2012, 11:30

Re: [Libreoffice/cups] Problème marge lors impression via "hpcups"

Message par kero »

Bon, après avoir encore un peu cherché, il m'apparait qu'il doit y avoir un bug. Libreoffice transforme le format de page de A4 en A4.Duplex, pour une raison qui m'échappe. J'ai aussi pu voir qu'il y a pas mal de problèmes liés à Libreoffice et l'impression Duplex (beaucoup de gens ont le problème inverse: ils ne parviennent pas à imprimer en Duplex).

J'ai posté un bugreport sur le bugzilla: https://bugs.documentfoundation.org/sho ... ?id=118467

En attente de résolution, donc. Merci à tous ceux qui ont essayé de m'aider.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17222
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [Libreoffice/cups] Problème marge lors impression via "hpcups"

Message par benjarobin »

Bravo pour ta persévérance, si je comprends bien tu as très bien isolé l'origine du problème et même "résolu/contourné" en modifiant le PPD pour supprimer les références à A4.Duplex
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
kero
Daikyu
Messages : 89
Inscription : dim. 26 août 2012, 11:30

Re: [Libreoffice/cups] Problème marge lors impression via "hpcups"

Message par kero »

Merci. :)

Et oui, c'est ça. Ça m'a pris pas mal de recherche mais ça m'a permis d'apprendre plein de trucs. Faut dire que depuis quelques temps, j'ai laissé la gestion de mon PC un peu en jachère. Y a pas mal de trucs à régler.

Anyway. Si j'ai des news du coté des développeurs, je ferai un update ici.
Répondre