PerfectVector
Di Irene Kim

Bounding box EPS: correggere tagli e spazio in eccesso

Diagnostica tagli e margini eccessivi nei file EPS confrontando i limiti dichiarati con i segni disegnati, poi riesporta e verifica il risultato nel programma di destinazione.

10 min di lettura
In questa pagina

Se in un EPS manca parte di un logo oppure compare troppo spazio intorno, confronta il suo bounding box dichiarato con ciò che la grafica disegna effettivamente. Un flusso di destinazione che usa un riquadro troppo piccolo può tagliare segni presenti nel file; un riquadro troppo grande può lasciare margini indesiderati. Riesportare dal master modificabile è di solito la soluzione più chiara. Ampliare una dichiarazione non può ripristinare grafica mai salvata o ancora esclusa da un tracciato di ritaglio.

Parti dall'EPS originale, da un riferimento visivo completo e dai requisiti dell'applicazione di destinazione. Conserva l'originale e prova un file sostitutivo con un nome diverso, così da poter confrontare la consegna effettiva.

Leggi correttamente le quattro coordinate

Il bounding box di un EPS descrive il rettangolo che racchiude i segni disegnati. In questa intestazione:

%%BoundingBox: 20 15 101 66

20 15 è l'angolo inferiore sinistro e 101 66 è l'angolo superiore destro. La larghezza è 101 − 20 = 81 punti e l'altezza è 66 − 15 = 51 punti. Gli ultimi due numeri sono coordinate, non larghezza e altezza. È valido anche un angolo inferiore sinistro diverso da zero.

La specifica Adobe EPSF 3.0 definisce il riquadro intorno ai segni disegnati, includendo l'estensione dei tratti e le loro giunzioni. Considerare soltanto la linea centrale di un tracciato può quindi sottostimare i limiti necessari. La specifica Adobe DSC 3.0 richiede argomenti interi per %%BoundingBox.

Illustrazione concettuale di una foglia con una cornice dorata stretta che ne esclude la punta e una cornice verde petrolio più grande che include spazio in eccesso
Illustrazione concettuale: la grafica e la cornice dichiarata sono elementi distinti.

Collega il sintomo al controllo successivo

SintomoPossibile causaControllo utile
Un bordo rettangolare netto attraversa un segnoIl ritaglio dichiarato o una cornice nel programma di destinazione è troppo piccoloConfronta la dichiarazione, l'estensione dei segni salvati e le impostazioni di ritaglio di destinazione
Il segno completo si trova dentro margini ampiLimiti dichiarati troppo grandi o ulteriore contenuto disegnatoEsamina l'intera sorgente e il rettangolo di posizionamento effettivo
Un tratto viene troncato lungo un bordo altrimenti correttoI limiti potrebbero omettere l'estensione del tratto disegnatoRicalcola i limiti dall'aspetto completo nell'applicazione sorgente
La miniatura è diversa dal risultato posizionatoL'anteprima e la grafica renderizzata possono essere rappresentazioni diverseConfronta un nuovo rendering con il risultato effettivo a destinazione
Una dichiarazione più grande lascia comunque parti mancantiDati di disegno mancanti o un tracciato di ritaglio applicatoTorna al master modificabile completo ed esamina il disegno stesso

Un margine bianco richiede anche un controllo separato dello sfondo. Potrebbe essere spazio vuoto circostante, un vero oggetto bianco oppure contenuto rasterizzato. La diagnosi dello sfondo EPS affronta questa distinzione; modificare i limiti non determina la trasparenza.

Lo stesso disegno con quattro dichiarazioni dei limiti

Abbiamo creato quattro file EPS con un programma di disegno identico byte per byte: un rettangolo verde petrolio, un triangolo scuro con un dettaglio circolare bianco e una barra arancione vicino al bordo destro. Riaprendo i comandi di disegno salvati abbiamo riscontrato gli stessi limiti esterni del contenuto disegnato in ogni file:

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

Sono cambiati soltanto i commenti relativi ai limiti. Tutte e quattro le intestazioni dichiaravano PostScript LanguageLevel 2. Ghostscript 10.08.0 ha renderizzato i file effettivamente salvati usando png16m, -dEPSCrop e 288 dpi, che in questo studio corrispondono a quattro pixel per punto.

DichiarazioneDimensioni PNG effettiveRisultato osservato
%%BoundingBox: 20 15 101 66324 × 204Segno completo con piccoli margini dovuti all'arrotondamento all'intero
%%BoundingBox: 20 15 60 66160 × 204Lato destro del triangolo tagliato; barra arancione fuori dal rendering
%%BoundingBox: 0 0 120 80480 × 320Segno completo con ampio spazio bianco intorno
Stesso riquadro intero contenitore più limiti HiRes frazionari322 × 199Segno completo senza i margini di arrotondamento all'intero in questo renderer

Per l'ultima riga, il commento aggiuntivo era:

%%HiResBoundingBox: 20.25 15.5 100.75 65.25

Qui HiResBoundingBox fornisce limiti frazionari. Il ritaglio osservato ha seguito quei valori in questa esecuzione di Ghostscript. Non è una garanzia che ogni importatore EPS dia al commento la stessa priorità. Non attribuiamo questa estensione alla specifica DSC 3.0.

Le uscite da 324 × 204 e 322 × 199 rappresentano dimensioni di ritaglio diverse, non una grafica in scala diversa. Il rettangolo intero dichiarato di 81 × 51 punti racchiude un rettangolo disegnato di 80.5 × 49.75 punti. Il suo margine di arrotondamento è previsto in questo file controllato.

I controlli sui pixel hanno individuato la barra arancione nei rendering completi; la sua posizione nota si trovava fuori dal rendering troppo piccolo. Un passaggio Ghostscript separato con bbox, senza ritaglio EPS, ha riportato gli stessi limiti del contenuto disegnato per tutti e quattro i file, in accordo con il rettangolo contenitore serializzato. Questo conferma il difetto dell'esempio: il rendering ritagliato ha perso visibilità, mentre i comandi di disegno salvati sono rimasti presenti.

Le dichiarazioni troppo piccole e troppo grandi sono controlli volutamente errati. Lo studio verifica un solo renderer e geometrie riempite semplici; non implica risultati di importazione in applicazioni, anteprime EPS, stampe fisiche o conversioni PerfectVector.

Diagnostica, correggi e verifica un file sostitutivo

1. Distingui la dichiarazione dal disegno

Confronta il riferimento completo con il contenuto effettivamente renderizzato del file. Se puoi esaminare un'intestazione EPS in testo semplice, leggi entrambe le dichiarazioni dei limiti, quando presenti. Non dare per scontato di poter misurare i segni di un file qualsiasi cercando numeri di coordinate: il vero PostScript può usare trasformazioni, procedure, testo, immagini e ritagli.

Per un controllo tecnico del rendering con Ghostscript installato, lo schema di comando che abbiamo provato è:

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

Il comando scrive un PNG da esaminare; non corregge né sostituisce l'EPS. La documentazione d'uso di Ghostscript descrive -dEPSCrop come il ritaglio dell'EPS al suo bounding box.

Se serve una misura separata dell'estensione dei segni, distinguila da quel rendering ritagliato. La documentazione del dispositivo bbox spiega che il risultato dipende dalla risoluzione raster e dall'arrotondamento, ed esclude per impostazione predefinita gli oggetti bianchi. Un'estensione misurata del contenuto non bianco non è quindi automaticamente un bounding box di produzione completo, soprattutto in presenza di grafica bianca intenzionale.

2. Correggi la causa nel master modificabile

Se i limiti escludono grafica esistente, riesporta tutta la grafica prevista con un riquadro che la racchiuda. Includi l'estensione visibile dei tratti. Se i margini sono eccessivi, controlla se oggetti estranei o intenzionalmente disegnati estendono il contenuto effettivo prima di modificare la regione di esportazione.

Usa i controlli di salvataggio EPS documentati dell'applicazione sorgente e conferma la tavola da disegno o l'intervallo desiderato. La guida Adobe al salvataggio in Illustrator documenta il salvataggio EPS, la selezione delle tavole da disegno e un'opzione separata per l'immagine di anteprima. Si tratta di controlli documentati; il nostro studio non ha eseguito un'esportazione da Illustrator né stabilito il suo comportamento di importazione.

Se il contenuto mancante è assente dal disegno salvato o escluso da un tracciato di ritaglio, correggi quel problema nella sorgente ed esporta di nuovo. Modificare un commento non fornisce comandi di tracciato mancanti né un'operazione di ritaglio diversa. Se il master non è disponibile, richiedi una sorgente completa o un'esportazione corretta invece di accettare una cornice vuota più grande.

3. Controlla il file esatto che userà il destinatario

Renderizza il file sostitutivo e confronta con il riferimento l'intera sagoma, le estremità dei tratti sottili, i dettagli bianchi interni e i margini intenzionali. Conferma le dimensioni calcolando le differenze tra le coordinate. Poi posiziona o importa lo stesso file sostitutivo nel flusso effettivo di destinazione e controllane ritaglio e scala.

Se il rendering è completo ma il posizionamento continua a tagliare la grafica, indaga sulla cornice di destinazione, sulle impostazioni di importazione e sulla gestione del file. Se entrambi restano incompleti, torna a esaminare contenuto e ritaglio della sorgente. Conserva il sostitutivo separatamente finché sia il contenuto sia il risultato a destinazione non soddisfano i requisiti.

Un controllo dei limiti superato non dice se il file contiene tracciati modificabili o una bitmap incorporata. Usa la guida all'ispezione della struttura EPS per questa verifica. Un bounding box SVG appartiene a un sistema diverso; le sue misure DOM non sostituiscono l'interpretazione dei commenti e del disegno EPS.

Come si inserisce PerfectVector nel flusso

Se rimane soltanto un logo raster piatto completo e uno sfondo EPS opaco è adatto al lavoro, ricostruisci le sue forme visibili con il flusso da immagine a EPS di PerfectVector. Confronta la sagoma ricostruita, le lettere e le aperture con il riferimento, poi esamina l'EPS esportato completo e le sue dimensioni nel flusso di destinazione.

L'uscita attuale usa tracciati con riempimenti piatti e uno sfondo opaco bianco o nero. Questo prepara una nuova proposta di grafica; non corregge un'intestazione EPS qualsiasi, non ripristina grafica mancante non visibile e non certifica il ritaglio del destinatario. Se esiste già un master vettoriale modificabile, correggi e riesporta quello.

Domande frequenti

Il bounding box di un EPS deve iniziare da zero?

No. La coordinata inferiore sinistra può essere diversa da zero. Larghezza e altezza derivano dalla differenza tra le coordinate superiori e inferiori. Il nostro riquadro intero contenitore inizia da (20, 15) e descrive un rettangolo di 81 × 51 punti senza spostare i comandi di disegno.

Un BoundingBox più grande può recuperare la grafica tagliata?

Può cambiare la regione visibile quando il disegno è ancora presente e il flusso di destinazione usa quella dichiarazione. Non può ricreare comandi di disegno assenti né annullare un tracciato di ritaglio. Correggi e riesporta dal master completo, poi verifica il risultato nella destinazione effettiva.

HiResBoundingBox elimina sempre i margini in eccesso?

Qui non è stato stabilito un comportamento universale. Ghostscript 10.08.0 ha seguito i limiti frazionari nella nostra prova controllata, producendo 322 × 199 pixel invece dei 324 × 204 del riquadro intero contenitore. Conferma il comportamento dell'importatore effettivo e conserva una dichiarazione intera valida che racchiuda il contenuto.

Fonti

  1. Adobe — Specifica EPSF 3.0 — Definisce i limiti inferiore sinistro e superiore destro intorno ai segni disegnati, inclusi l'estensione e le giunzioni dei tratti.
  2. Adobe — Specifica DSC 3.0 — Definisce gli argomenti di coordinate intere del commento BoundingBox.
  3. Ghostscript — Parametri EPS — Documenta EPSCrop e i relativi controlli di elaborazione EPS.
  4. Ghostscript — Uscita del bounding box — Documenta la misurazione con bbox, il trattamento degli oggetti bianchi e i limiti dovuti a risoluzione e arrotondamento.
  5. Adobe — Salvare la grafica — Documenta l'esportazione EPS, la selezione delle tavole da disegno e l'opzione distinta per l'immagine di anteprima.

Parti da un logo raster completo e accetti uno sfondo opaco? Crea una proposta EPS dalla tua immagine, confronta i suoi tracciati con il riferimento e poi verifica tutta la grafica esportata, le dimensioni e il ritaglio nel flusso del destinatario.

Altro dal blog

PerfectVector

Trasforma il file immagine in un
SVG modificabile

Nessuna carta di credito