PerfectVector
Par Irene Kim8 min de lecture

Export Inkscape en ligne de commande : choisis la zone

Choisis les limites de page, de dessin ou d’objet pour tes exports PNG Inkscape. Compare les résultats réels, crée deux tailles et conserve ton original SVG.

Sur cette page

Pour exporter un PNG avec Inkscape en ligne de commande, choisis d’abord la zone : --export-area-page conserve le cadre de la page, --export-area-drawing épouse le dessin et --export-id cible les limites d’un objet. Ajoute --export-id-only si la sortie doit afficher uniquement cet objet. Le guide de la ligne de commande Inkscape distingue le recadrage sur un objet du masquage des autres objets.

Définis ensuite explicitement la largeur de sortie, la transparence et le nom du fichier. Ces choix facilitent l’examen et la reproduction d’un petit lot de livrables.

Ce qui a changé dans nos exports de test

Nous avons créé un SVG de 600 × 360 avec deux objets nommés : un badge vert et un échantillon corail qui chevauche son bord droit. La page comporte beaucoup d’espace vide. Les limites du dessin combiné sont de 400 × 180 unités ; le badge seul mesure 180 × 180.

Nous avons exporté la source avec l’application officielle Inkscape 1.4.4 pour macOS arm64, via son exécutable en ligne de commande. Les quatre exports ci-dessous demandent une largeur de 600 pixels et un fond transparent.

Choix d’exportSortie dans ce testContenu visible
Zone de pagePNG de 600 × 360Les deux objets avec les marges de la page.
Zone de dessinPNG de 600 × 270Les deux objets dans un cadrage plus serré.
ID du badgePNG de 600 × 600Le badge et une partie de l’échantillon qui le chevauche.
ID du badge avec --export-id-onlyPNG de 600 × 600Le badge uniquement.
Zone d’export et visibilité des objets
Exports PNG réels d’Inkscape comparant les marges de page, les limites serrées du dessin, un recadrage d’objet avec un échantillon superposé et un badge isolé
Sorties réelles d’Inkscape 1.4.4 à partir d’un seul SVG. Les aperçus sont redimensionnés pour tenir dans chaque panneau ; le damier se trouve derrière les PNG transparents.

L’objet isolé est bien plus grand dans son PNG car nous avons encore demandé 600 pixels sur ses limites plus étroites. Une largeur de sortie constante n’implique pas une échelle d’illustration constante lorsque la zone d’export change.

Ces exemples utilisent un SVG d’une seule page avec des formes ordinaires. Ils ne testent pas la sélection de plusieurs pages, les filtres ni les images liées.

Crée une source aux ID d’objets stables

Enregistre ce qui suit sous master.svg. L’ID de groupe badge permet à la commande d’exporter ensemble son cercle et ses tracés. Le second objet, swatch, dépasse volontairement les limites du badge.

<svg xmlns="http://www.w3.org/2000/svg"
     width="600" height="360" viewBox="0 0 600 360">
  <g id="badge">
    <circle cx="150" cy="160" r="90" fill="#236f62"/>
    <path d="M150 89L190 160L150 231L110 160Z" fill="#cde0a4"/>
    <path d="M150 115L175 160L150 205L125 160Z" fill="#236f62"/>
  </g>
  <rect id="swatch" x="200" y="140" width="260" height="80"
        rx="12" fill="#d68462"/>
</svg>

Pour un dessin existant, examine les ID du SVG avant d’écrire des scripts d’export. Un nom d’objet affiché dans un éditeur peut différer de l’id XML utilisé par la commande. Notre guide de modification des SVG explique comment examiner et modifier le code en conservant une sauvegarde.

Exporte la page, le dessin et le badge isolé

Les commandes ci-dessous utilisent la syntaxe Bash ou Zsh. Exécute-les depuis le dossier contenant master.svg. Fais d’abord pointer une variable shell vers ton exécutable Inkscape :

inkscape_bin=inkscape
mkdir -p exports

Ce réglage suppose que inkscape est disponible dans ton PATH. Pour une installation d’application macOS ordinaire, la valeur peut être /Applications/Inkscape.app/Contents/MacOS/inkscape. Mets le chemin entre guillemets lors de l’affectation si son emplacement contient des espaces.

Pour la page entière :

"$inkscape_bin" --batch-process master.svg \
  --export-type=png --export-area-page \
  --export-width=600 --export-background-opacity=0 \
  --export-filename=exports/page.png

Pour un recadrage autour du dessin :

"$inkscape_bin" --batch-process master.svg \
  --export-type=png --export-area-drawing \
  --export-width=600 --export-background-opacity=0 \
  --export-filename=exports/drawing.png

Pour le badge seul :

"$inkscape_bin" --batch-process master.svg \
  --export-type=png --export-id=badge --export-id-only \
  --export-width=600 --export-background-opacity=0 \
  --export-filename=exports/badge.png

Pour reproduire le cas témoin de chevauchement dans la figure, retire --export-id-only de la dernière commande et change le nom de sortie. L’échantillon corail apparaît alors dans le recadrage du badge. Sélectionner le cadrage par ID n’isole pas à lui seul l’illustration.

Le manuel Inkscape décrit ces options. --export-width définit la largeur de l’image matricielle en pixels et prime sur le réglage DPI. Les proportions de l’export déterminent la hauteur correspondante. Nous utilisons un seul choix de zone par commande et un chemin de sortie .png explicite.

Nous avons inclus --batch-process dans les commandes testées. Dans cette exécution sur macOS, un export sans cette option écrivait un PNG mais laissait le processus actif ; les commandes ci-dessus se terminaient normalement. Cette option est distincte de la boucle shell qui demande plusieurs tailles.

Crée deux tailles sans modifier l’original

Pour une paire de PNG cadrés sur la page, répète les mêmes réglages de zone et change uniquement la largeur et le nom de sortie :

for export_width in 240 480; do
  "$inkscape_bin" --batch-process master.svg \
    --export-type=png --export-area-page \
    --export-background-opacity=0 \
    --export-width="$export_width" \
    --export-filename="exports/page-${export_width}.png" || exit 1
done

Notre exécution a produit des PNG de 240 × 144 et 480 × 288. Les deux conservaient le même cadre de page et un fond transparent. Le hachage SHA-256 de master.svg correspondait avant et après les exports : les octets de la source étaient donc inchangés dans ce test.

Utilise des noms de sortie qui indiquent la source, la zone et la taille lorsque tu étends cette méthode à un traitement plus grand. Conserve les commandes dans un script à côté des sources pour reproduire les choix plus tard. Vérifie les premières sorties avant de traiter un grand dossier d’illustrations.

Vérifie les fichiers avant livraison

Examine les dimensions et le contenu visible. Une commande réussie peut quand même exporter le mauvais cadrage, un chevauchement indésirable ou davantage de marges que prévu.

  • Grandes marges vides : compare les exports de page et de dessin. Choisis le cadre attendu par la destination.
  • Un autre objet apparaît dans un recadrage par ID : vérifie si --export-id-only est nécessaire.
  • La transparence semble blanche dans un logiciel de visualisation : ouvre le PNG sur un fond contrasté. Un objet de fond blanc dans la source fait partie de l’illustration et reste visible même si le fond d’export est transparent.
  • L’illustration apparaît plus grande d’une sortie à l’autre : compare la zone d’export ainsi que la largeur en pixels.

Le guide d’export PNG Inkscape explique les notions de page, dessin, sélection et fond qui sous-tendent ces choix. Un PNG est un livrable matriciel : conserve donc le SVG pour les modifications. Consulte le guide des fichiers SVG si tu dois vérifier ce que contient réellement la source.

Si tu compares une autre méthode d’automatisation, notre guide Sharp de conversion SVG en PNG traite de son moteur de rendu et du dimensionnement. Ses options d’API ne se transposent pas directement à Inkscape.

Si l’illustration source existe uniquement en PNG ou JPG, le vectoriseur d’images PerfectVector peut préparer une illustration vectorielle modifiable avant cette étape d’export. Examine les tracés reconstruits dans un éditeur, puis choisis le cadre de page et les ID des objets. Le processus Trace Bitmap d’Inkscape est une autre méthode de préparation. Un SVG contenant déjà les tracés nécessaires peut passer directement à l’export.

FAQ

Pourquoi les exports de page et de dessin ont-ils des tailles différentes ? Leurs limites peuvent avoir des proportions différentes. Dans notre test, les deux demandaient 600 pixels de large, mais la page de 600 sur 360 produisait un PNG plus haut que les limites du dessin de 400 sur 180.

Pourquoi export-id inclut-il encore un autre objet ? Il choisit les limites d’export de l’objet cible. D’autres éléments traversant ces limites peuvent rester visibles. Ajoute export-id-only pour masquer les autres objets.

Ce lot de PNG écrase-t-il la source SVG ? Les commandes présentées lisent master.svg et écrivent des PNG aux noms distincts. Notre hachage source était inchangé après le test. Conserve l’original et les livrables séparément et examine toute action supplémentaire de modification ou d’enregistrement avant de l’ajouter au script.

Sources

  1. Inkscape Wiki — utilisation de la ligne de commande — Processus d’export et différence entre recadrage d’objet et sortie d’objet isolé.
  2. Inkscape — manuel de ligne de commande — Options de zone, d’objet, de taille, de fond et de sortie.
  3. Guide pour débutants Inkscape — export d’un fichier PNG — Notions de zone d’export et de transparence.

Si ton illustration nécessite encore des tracés vectoriels, vectorise l’image et examine d’abord le résultat. Enregistre ensuite l’original SVG, choisis une zone d’export et vérifie le cadrage et les dimensions du premier PNG avant de répéter le lot.

Plus depuis le blog

Repartez d’un SVG plus net
et plus facile à modifier