Imprimer un énorme SVG

16

J'utilise Google Chrome pour afficher un fichier .svg 1178x5408. Il comprend beaucoup de petits "subgraphics" (captures d'écran de dialogues, reliés par des flèches .. pensez "wizard"), le tout est créé par graphviz.

Maintenant, je veux l'imprimer correctement. Pour moi, il est important de ne pas réduire le tout à une seule feuille de papier, car je ne vois plus rien des petites captures d'écran.

Quelles sont mes meilleures options?

akira
la source
1
Vous pouvez obtenir de meilleures réponses si vous spécifiez le système d'exploitation que vous utilisez.
Doug Harris
@Doug Harris: non. c'est un problème général, je l'ai sous tous les OS que j'utilise.
akira
1
Je voulais dire que s'il existe un système d'exploitation préféré, vous obtiendrez des recommandations d'outils spécifiques au système d'exploitation. En outre, la mise en place d'une balise de système d'exploitation sur la question attirera les utilisateurs dont le système d'exploitation est spécifié comme balise préférée.
Doug Harris
je ne peux pas mettre assez de balises OS dessus, je suis intéressé à résoudre le problème sur tous les systèmes d'exploitation :)
akira
1
Akira, la solution pour un OS ne sera pas la solution pour un autre. Nous essayons de résoudre votre problème spécifique, pas de fournir des réponses à la vie, à l'univers et à tout. Le simple fait d'ajouter "J'utilise Google Chrome sur Windows ME" suffira et nous permettra de présenter une solution beaucoup plus précise. Ajouter que vous souhaitez également connaître la solution pour d'autres systèmes d'exploitation est correct, mais c'est secondaire à votre problème spécifique et doit être traité comme tel.
music2myear

Réponses:

10

Je vous suggère d'utiliser Inkscape pour ouvrir le fichier SVG et l'imprimer à partir de là. Il a de bien meilleures options d'impression que Chrome pour SVG.

Shift+ Ctrl+ Dvous donnera des options de document:

Options de document

BloodPhilia
la source
2
Pour amplifier BloodPhilla, il est certainement surprenant que le format SVG - où "S" signifie Scalable ait une largeur et une hauteur "naturelles" spécifiées dans la <svg>balise. Bien qu'Inkscape soit un bon outil, si vous êtes désespéré, vous pouvez toujours ouvrir un .svg dans votre éditeur préféré et modifier les dimensions dans la balise d'ouverture.
msw
1
@msw - Cela corromprait votre image SVG car cela entraînerait des poportions.
BloodPhilia
bonne réponse, c'était aussi une de mes approches, ça n'a pas si bien marché. inkscape imprimait uniquement la première page, iirc. je vais vérifier à nouveau.
Akira
non, ce ne sera pas le cas, car les propriétés sont référencées à la taille de la fenêtre, pas à la dimension de l'image.
stevenvh
3
Hiya, pourriez-vous nous en dire plus sur ce qu'il faut faire dans InkScape, s'il vous plaît? J'ai un grand svg (width = "6137pt" height = "3092pt") qui n'a pas d'importance ce que je fais, soit il sort très petit sur une page, soit il n'en imprime qu'une seule page en taille réelle! À votre santé.
IanVaughan
6

Je devais juste résoudre ça aujourd'hui. J'ai utilisé Print d'Inkscape et imprimé dans un fichier PDF (qui est une fonctionnalité standard sur Linux; je ne connais pas les autres plateformes), puis j'ai utilisé pdfposter pour le diviser en pages:

pdfposter -m a4 -p a3 infile.pdf outfile.pdf

Traduction: utilisez des pages A4 pour créer une affiche au format A3.

Marius Gedminas
la source
2

ok, j'ai utilisé wkhtmltopdf pour obtenir un .pdf raisonnable et beau à partir de ce .svg:

% wkhtmltopdf.exe input.svg output.pdf
akira
la source
J'ai donc un SVG avec width = "2447pt" height = "2716pt". wkhtmltopdf me donne deux pages: le coin supérieur gauche et le coin inférieur gauche. L'autre moitié du SVG est juste coupée.
Marius Gedminas
@MariusGedminas vient de passer --page-width et --page-height en mm
dlamblin
2

J'ai juste réussi avec les étapes suivantes:

  1. Ouvrez le SVG dans Inkscape. J'utilise la version 0.48 pour Windows.
  2. Exportez vers un PDF. J'ai utilisé les paramètres par défaut.
  3. Ouvrez le PDF dans Foxit Reader .
  4. Impression; sous la section "Gestion de l'impression", pour la liste déroulante "Type de mise à l'échelle", choisissez l'option "Tile grandes pages".

Suite à ce qui précède, mon SVG semble susceptible d'imprimer sur des pages de format 13 par 10 lettres.

Mise à jour - J'ai eu quelques difficultés avec ce qui précède; certaines des pages «en mosaïque» n'imprimaient pas, mais pas toujours les mêmes pages, donc je soupçonne un problème subtil avec la façon dont Foxit Reader imprime les pages en mosaïque. Voici d'autres étapes que je viens de suivre et qui ont fonctionné sans problème:

  1. Ouvrez le SVG dans Inkscape.
  2. Exportez vers un PDF.
  3. Ouvrez le PDF dans Foxit Reader .
  4. Impression; sous la section "Gestion de l'impression", pour la liste déroulante "Type de mise à l'échelle", choisissez l'option "Tile grandes pages", et dans la sélection de l'imprimante ("Nom") choisissez "Foxit Reader PDF Printer" .
  5. Entrez un nom pour le nouveau PDF qui sera créé avec une page pour chaque page «en mosaïque» dans le PDF d'origine.
  6. Le nouveau PDF avec les pages en mosaïque devrait s'ouvrir automatiquement dans Foxit Reader; ce PDF peut être imprimé normalement et aucune page ne doit être sautée.
Kenny Evitt
la source
1

Vous pouvez essayer d'utiliser la dernière version de GhostPDL (application sœur de Ghostscript; code source disponible sur http://svn.ghostscript.com/ghostscript ) pour convertir le fichier en PDF. GhostPDL peut gérer SVG (et XPS ou PCL) de la même manière que Ghostscript gère PostScript. Alors voici la ligne de commande:

gsvg.exe ^
    -dNOPAUSE ^
    -dBATCH ^
    -dSAFER ^
    -sOutputFile=my.pdf ^
    -sDEVICE=pdfwrite ^
    -g1178x5408 ^
    c:/path/to/my.svg

Une fois que vous avez obtenu un PDF, vous devriez pouvoir l'imprimer facilement à partir d'Acrobat {, Reader}. Au moins maintenant avec PDF, nous connaissons différentes façons d'imprimer de manière fiable un fichier de grande dimension sur plusieurs feuilles de papier (lettre ou A4 ou A3) en utilisant un utilitaire "posterize".

Peut-être qu'une telle fonction "d'affiche" est également disponible auprès d'Inkscape (qui peut ouvrir et imprimer le SVG directement), mais je ne suis pas sûr du haut de ma tête.

Kurt Pfeifle
la source
des astuces pour intégrer les fichiers .png référencés dans le .pdf?
akira
@akira: Désolé, je ne comprends pas votre question. De quel .png parlez-vous?
Kurt Pfeifle
"Il comprend beaucoup de petits" subgraphics "(captures d'écran de dialogues, reliés par des flèches .. pensez" magicien ")" .. je parle des images .png qui sont référencées par le .svg
akira
@akira: vous n'avez pas indiqué dans votre question initiale, que les graphiques étaient des fichiers .png, et qu'ils n'étaient pas intégrés dans le .svg ... - Donc quand vous imprimez le .svg au format PDF, vous ne voyez pas les .pngs inclus dans les pages PDF?! Quel type de référence est utilisé? Est-il basé sur Internet ou sur un système de fichiers local? Utilise-t-il des chemins absolus ou relatifs?
Kurt Pfeifle
0

Étant donné que la plupart des réponses semblaient se concentrer sur des solutions de ligne de commande, j'aimerais ajouter ceci. Et cela va vraiment de pair avec la réponse de BloodPhilla (Inkscape), car vous devez d'abord convertir le SVG en PNG pour utiliser cet outil, mais le voici: PosteRazor . Une fois que vous avez un PNG, vous pouvez l’alimenter dans ce programme et en 4 étapes faciles de l’assistant vous obtenez un PDF de plusieurs pages qui peut être assemblé en une «affiche». J'ai dû jouer avec les marges et les chevauchements un peu pour obtenir les choses comme je le voulais, et vous devez être conscient de la limitation physique de votre imprimante sur l'impression des bords, mais dans l'ensemble, un petit outil utile pour ce genre de chose.

NateJ
la source
0

J'ai eu le même problème et j'ai opté pour l'utilisation d' Inkscape recommandée, mais pour subdiviser le graphique entier en agrupations logiques indépendantes et j'ai eu la chance que chacune soit dotée d'une taille de police raisonnablement lisible en feuilles A3.

  1. Sélectionnez les éléments que vous souhaitez intégrer, par exemple A3 et copiez-les dans un nouveau document. Fichier / Propriétés, sélectionnez A3, portrait ou paysage.
  2. Assemblez les éléments comme vous le souhaitez.
  3. Il doit y avoir un raccourci pour le faire progressivement avec la souris, mais je l'ai fait comme ceci: Sélectionnez-les tous, Objet / Transformations, onglet Echelle, "échelle proportionnellement" et essayez une valeur. Si l'un échoue, Ctrl + Z et essayez un autre.
  4. Fichier / Enregistrer une copie, tapez: pdf.

Répétez pour chaque partie, un PDF résultant pour chaque section.

Ouvrez avec une visionneuse PDF et imprimez.

Sinon, j'opterais pour la solution Kenny Evitt , mais vous devrez le faire.

Je ne comprends pas pourquoi la réponse de BloodPhilia , telle quelle , est actuellement la plus votée.

Raúl Moreno
la source