PerfectVector
Par Irene Kim

Bounding box EPS : corrige coupe et marges excessives

Diagnostique un EPS rogné ou trop espacé en comparant les limites déclarées aux marques peintes, puis réexporte et vérifie le véritable résultat destinataire.

10 min de lecture
Sur cette page

Si un EPS perd une partie du logo ou arrive avec trop d’espace, compare sa bounding box, ou boîte englobante déclarée, au dessin qu’il peint réellement. Un flux destinataire qui utilise une boîte trop petite peut couper des marques existantes ; une boîte trop grande peut laisser des marges indésirables. Réexporter depuis le master éditable est généralement la correction la plus claire. Agrandir une déclaration ne peut pas restaurer un dessin qui n’a jamais été enregistré ou reste exclu par un masque d’écrêtage.

Commence par l’EPS original, une référence visuelle complète et les exigences de l’application destinataire. Préserve l’original et teste un remplacement nommé séparément pour comparer la véritable livraison.

Lis correctement les quatre coordonnées

La boîte englobante d’un EPS décrit le rectangle qui enferme ses marques peintes. Dans cet en-tête :

%%BoundingBox: 20 15 101 66

20 15 est le coin inférieur gauche et 101 66 le coin supérieur droit. La largeur vaut 101 − 20 = 81 points et la hauteur 66 − 15 = 51 points. Les deux derniers nombres sont des coordonnées, pas une largeur et une hauteur. Un coin inférieur gauche non nul est valide.

La spécification EPSF 3.0 d’Adobe définit la boîte autour des marques peintes, y compris l’étendue du trait et les raccords de lignes. La seule ligne médiane d’un chemin peut donc sous-estimer les limites nécessaires. La spécification DSC 3.0 d’Adobe exige des arguments entiers pour %%BoundingBox.

Dessin conceptuel de feuille avec un cadre doré étroit qui coupe sa pointe et un cadre bleu-vert plus grand contenant de l’espace supplémentaire
Illustration conceptuelle : le dessin et son cadre déclaré sont séparés.

Associe le symptôme au prochain contrôle

SymptômeCause possibleContrôle utile
Un bord rectangulaire net traverse un signeLa coupe déclarée ou un cadre destinataire est trop petitCompare la déclaration, l’étendue peinte enregistrée et les réglages de recadrage destinataires
Le signe complet se trouve dans de grandes margesLimites déclarées trop grandes ou contenu peint supplémentaireInspecte la source complète et le véritable rectangle de placement
Un trait est rogné sur un bord autrement correctLes limites peuvent omettre l’étendue peinte du traitRecalcule depuis l’apparence complète dans l’application source
Une vignette diffère du résultat placéL’aperçu et le dessin rendu peuvent être des représentations différentesCompare un nouveau rendu et le véritable résultat destinataire
Une déclaration agrandie laisse encore du dessin manquantDonnées peintes absentes ou masque d’écrêtage appliquéRetourne au master éditable complet et inspecte le dessin lui-même

Une marge blanche exige aussi un contrôle de fond distinct. Elle peut être un espace environnant vide, un véritable objet blanc ou du contenu pixellisé. Le diagnostic de fond EPS couvre cette distinction ; changer les limites n’établit pas la transparence.

Même peinture, quatre déclarations de limites différentes

Nous avons créé quatre fichiers EPS avec un programme de peinture identique octet pour octet : un rectangle bleu-vert, un triangle sombre comportant un détail circulaire blanc et une barre orange près du bord droit. Rouvrir les commandes de peinture enregistrées a établi les mêmes limites peintes extérieures dans chaque fichier :

lower-left:  (20.25, 15.5)
upper-right: (100.75, 65.25)

Seuls les commentaires de limites changeaient. Les quatre en-têtes déclaraient PostScript LanguageLevel 2. Ghostscript 10.08.0 a rendu les véritables fichiers enregistrés avec png16m, -dEPSCrop et 288 dpi, soit quatre pixels par point dans cette étude.

DéclarationDimensions réelles du PNGRésultat observé
%%BoundingBox: 20 15 101 66324 × 204Signe complet avec de petites marges d’arrondi entier
%%BoundingBox: 20 15 60 66160 × 204Côté droit du triangle coupé ; barre orange hors du rendu
%%BoundingBox: 0 0 120 80480 × 320Signe complet avec un important espace blanc
Même boîte entière englobante et limites HiRes fractionnaires322 × 199Signe complet sans les marges d’arrondi entier dans ce moteur

Pour la dernière ligne, le commentaire supplémentaire était :

%%HiResBoundingBox: 20.25 15.5 100.75 65.25

Ici, HiResBoundingBox fournit des limites fractionnaires. Le recadrage observé suivait ces valeurs dans cette exécution de Ghostscript. Cela ne promet pas que tous les importateurs EPS donnent la même priorité au commentaire. Nous n’attribuons pas cette extension à la spécification DSC 3.0.

Les sorties 324 × 204 et 322 × 199 représentent des dimensions de recadrage différentes, pas un dessin à une autre échelle. Le rectangle entier déclaré de 81 × 51 points enferme un rectangle peint de 80,5 × 49,75 points. Sa marge d’arrondi est attendue dans ce fichier contrôlé.

Les contrôles de pixels ont trouvé la barre orange dans les rendus complets ; sa position connue se trouvait hors du rendu trop petit. Une passe Ghostscript bbox séparée sans recadrage EPS a signalé les mêmes limites peintes pour les quatre fichiers, en accord avec le rectangle englobant sérialisé. Cela confirme la faute de cet exemple : le rendu rogné perdait de la visibilité alors que les commandes de peinture enregistrées restaient présentes.

Les déclarations trop petites et trop grandes sont des témoins volontairement incorrects. L’étude teste un seul moteur et une géométrie simple remplie, sans impliquer de résultat d’importation dans une application, d’aperçu EPS, d’impression physique ou de conversion PerfectVector.

Diagnostique, corrige et vérifie un remplacement

1. Distingue la déclaration du dessin

Compare la référence complète au contenu réellement rendu du fichier. Si tu peux inspecter un en-tête EPS en texte brut, lis les deux déclarations de limites lorsqu’elles sont présentes. Ne suppose pas que l’on peut mesurer les marques d’un fichier quelconque en recherchant des nombres de coordonnées : le vrai PostScript peut utiliser transformations, procédures, texte, images et écrêtage.

Pour un contrôle technique de rendu avec Ghostscript installé, voici le modèle de commande que nous avons testé :

gs -dSAFER -dBATCH -dNOPAUSE \
  -sDEVICE=png16m -r288 -dEPSCrop \
  -sOutputFile=eps-check.png artwork.eps

Cela écrit un PNG d’inspection ; cela ne corrige ni ne remplace l’EPS. La documentation d’utilisation de Ghostscript décrit -dEPSCrop comme le recadrage de l’EPS sur sa boîte englobante.

Si une mesure séparée de l’étendue des marques est nécessaire, distingue-la de ce rendu recadré. La documentation du périphérique bbox explique que son résultat dépend de la résolution matricielle et des arrondis, et exclut les objets blancs par défaut. Une étendue non blanche mesurée n’est donc pas automatiquement une boîte de production complète, surtout pour un dessin blanc volontaire.

2. Corrige la cause dans le master éditable

Si les limites excluent du dessin existant, réexporte le dessin complet prévu avec une boîte englobante. Inclus l’étendue visible du trait. Si les marges sont excessives, inspecte les objets parasites ou volontairement peints qui pourraient étendre le contenu réel avant de modifier la zone d’exportation.

Utilise les contrôles d’enregistrement EPS documentés de l’application source et confirme le plan de travail ou la plage prévus. Le guide d’enregistrement Illustrator d’Adobe documente l’enregistrement EPS, la sélection du plan de travail et une option distincte d’image d’aperçu. Ce sont des contrôles documentés ; notre étude n’a pas réalisé d’exportation Illustrator ni établi son comportement d’importation.

Si le contenu manquant est absent du dessin enregistré ou exclu par un masque d’écrêtage, corrige ce problème source et exporte à nouveau. Modifier un commentaire ne fournit ni commandes de chemin manquantes ni autre opération d’écrêtage. Si le master n’est pas disponible, demande une source complète ou une exportation corrigée au lieu d’accepter un cadre vide agrandi.

3. Vérifie le fichier exact que le destinataire utilisera

Rends le remplacement et compare la silhouette complète, les extrémités de traits fins, les détails blancs internes et les marges volontaires à la référence. Confirme les dimensions par les différences de coordonnées. Place ou importe ensuite ce même remplacement dans le véritable flux destinataire et inspecte son recadrage et son échelle.

Si le rendu est complet mais que le placement coupe encore le dessin, examine le cadre destinataire, les réglages d’importation et la gestion du fichier. Si les deux restent incomplets, reviens au contenu source et à l’écrêtage. Garde le remplacement séparé jusqu’à ce que le contenu et le résultat destinataire répondent à l’exigence.

Un contrôle de limites réussi ne dit rien sur la présence de chemins éditables ou d’un bitmap incorporé. Utilise le guide d’inspection de structure EPS pour cette tâche. Une boîte englobante SVG est un autre système ; ses mesures DOM ne remplacent pas l’interprétation des commentaires et de la peinture EPS.

Comment cela s’applique avec PerfectVector

S’il ne reste qu’un logo matriciel plat complet et qu’un fond EPS opaque convient au travail, reconstruis ses formes visibles avec le flux image vers EPS de PerfectVector. Compare la silhouette, les lettres et les ouvertures reconstruites à la référence, puis inspecte l’EPS exporté complet et ses dimensions dans le flux destinataire.

La sortie actuelle utilise des chemins à aplats avec un fond opaque blanc ou noir. Cela prépare un nouveau dessin candidat ; cela ne corrige pas un en-tête EPS quelconque, ne restaure pas de dessin manquant invisible et ne certifie pas le recadrage destinataire. Si un master vectoriel éditable existe déjà, corrige et réexporte plutôt ce master.

FAQ

Une boîte englobante EPS doit-elle commencer à zéro ?

Non. La coordonnée inférieure gauche peut être non nulle. La largeur et la hauteur viennent des coordonnées supérieures moins les inférieures. Notre boîte entière englobante commence en (20, 15) et décrit un rectangle de 81 × 51 points sans déplacer les commandes de peinture.

Une BoundingBox plus grande peut-elle faire revenir le dessin rogné ?

Elle peut changer la région visible si la peinture est encore présente et si le flux destinataire utilise cette déclaration. Elle ne peut recréer des commandes de dessin absentes ni annuler un masque d’écrêtage. Corrige et réexporte depuis le master complet, puis vérifie le véritable destinataire.

HiResBoundingBox supprime-t-il toujours les marges supplémentaires ?

Aucun comportement universel n’est établi ici. Ghostscript 10.08.0 a suivi les limites fractionnaires dans notre exécution contrôlée, produisant 322 × 199 pixels au lieu des 324 × 204 de la boîte entière englobante. Confirme le comportement du véritable importateur et conserve une déclaration entière englobante valide.

Sources

  1. Adobe — Spécification EPSF 3.0 — Définit les limites inférieure gauche et supérieure droite autour des marques peintes, y compris l’étendue des traits et leurs raccords.
  2. Adobe — Spécification DSC 3.0 — Définit les arguments de coordonnées entières du commentaire BoundingBox.
  3. Ghostscript — Paramètres EPS — Documente EPSCrop et les contrôles associés de traitement EPS.
  4. Ghostscript — Sortie de boîte englobante — Documente la mesure bbox, le traitement des objets blancs et les limites de résolution et d’arrondi.
  5. Adobe — Enregistrer une illustration — Documente l’exportation EPS, la sélection du plan de travail et l’option distincte d’image d’aperçu.

Tu pars d’un logo matriciel complet et acceptes un fond opaque ? Crée un EPS candidat depuis ton image, compare ses chemins à la référence, puis vérifie le dessin exporté entier, ses dimensions et son recadrage dans le flux du destinataire.

Plus depuis le blog

PerfectVector

Transformez votre fichier image en
SVG modifiable

Sans carte bancaire