Exportation de fichiers PNG de haute qualité à partir de LibreOffice Draw

5

J'ai besoin de générer un fichier PNG d'une image composée dans LibreOffice Draw. Lorsque j'exporte directement au format PNG, la qualité est presque parfaite, mais elle est légèrement floue. Cependant, lorsque j'exporte directement vers un fichier PDF avec compression sans perte, la qualité est parfaite, mais pas au format PNG.

Les dimensions de l'image sont 495x304. Chaque fois que j'essaie de convertir le fichier PDF "parfait" en un fichier PNG de haute qualité, le fichier PNG avec un grossissement de 100% (tel que visualisé en évidence) est environ 2 à 3 fois plus volumineux que l'image du fichier PDF. Ou, lorsque le fichier PDF est converti au format PNG à des dimensions approximativement correctes, le fichier PNG est trop net.

J'ai essayé des commandes comme ça

gs -sDEVICE=pngalpha -sOutputFile=new.png -r144 image.pdf

et

convert -quality 100 -density 300 image.pdf new.png

Mais aucune de ces commandes ne rend un fichier PNG avec une qualité équivalente à celle du fichier PNG pouvant être directement exporté dans LibreOffice Draw.

Ma question est donc la suivante: comment procéder: (1) exporter au format PNG de meilleure qualité directement à partir de LibreOffice Draw; ou (2) convertissez le fichier PDF de qualité parfaite en fichier PNG de qualité comparable et aux mêmes dimensions.

Et voici les paramètres d'exportation que j'utilise lors de l'exportation directe au format PNG: entrez la description de l'image ici

synaptik
la source
1
Je ne vois pas comment cela est lié à la programmation.
leonbloy
Tu as raison. J'ai lu des articles similaires dans SO sur l'utilisation d'Imagemagick pour convertir des fichiers PDF au format PNG. À l'origine, mon article portait moins sur LibreOffice Draw, mais davantage sur les utilitaires de conversion Linux. Mais même alors, vous avez raison, pas approprié pour SO.
Synaptik
Comme pour (2), s'il vous plaît jeter un oeil à cette Q & A
Glutanimate
@ Glutanimate Merci. J'ai essayé Inkscape et c'était très bien.
Synaptik
1
@ Glutanimate Assez curieusement, j'ai trouvé que la meilleure solution dans mon cas consistait simplement à utiliser un outil de capture d'écran standard et à prendre un "cliché" du fichier PDF.
Synaptik

Réponses:

4

L'outil d'exportation de LibreOffice en général présente un inconvénient. Cela fait des années et c'est encore cassé. Une alternative consiste simplement à prendre une capture d'écran, mais vous ne pouvez évidemment pas contrôler la résolution.

Il est donc préférable d’exporter au format SVG, puis de convertir le fichier SVG au format PNG avec Inkscape . Une fois téléchargé, vous pouvez convertir le fichier avec la commande suivante:

inkscape -z -e out.png -w 1024 in.svg

Si vous êtes sous Windows (x64), vous aurez besoin de mettre le chemin complet

"C:/Program Files/Inkscape/inkscape.exe" -z -e out.png -w 1024 in.svg 

Si vous installez la version 32 bits, cela devrait fonctionner:

"C:\Program Files (x86)/Inkscape/inkscape.exe" -z -e out.png -w 1024 in.svg 

J'espère que ça aide quelqu'un

toto_tico
la source
1

Je sais que ce n'est peut-être pas la meilleure solution, mais si vous recherchez une interface graphique pour le faire, je pense qu'une alternative est d'ouvrir le fichier PDF dans GIMP, puis une boîte de dialogue vous demandant des détails sur l'importation DPI et le nombre de pages que vous souhaitez importer, puis exporter au format PNG, enregistrer ... terminé: D

Est-ce si simple, j'espère que cela aide quelqu'un.

Lyoneel
la source
Merci de rappeler GIMP. Inspiré par votre solution, j'ai constaté que l'exportation de LibreOffice au format SVG conserve une transparence alpha parfaite. Puis ouvrez-le dans GIMP, puis faites ce que vous voulez.
Jmgonet