¿Cómo ajustar BoundingBox de un archivo EPS?

Quiero recortar el área principal de unPS oPDF archivo para crear unEPS Archivo sin espacios en blanco. Comandos deghostrcipt, ps2pdf, epstools Puede recortar el dibujo principal del archivo de documento.

El problema es que solo se recortan en su forma original, pero quiero crear un archivo EPS conBoundingBox 0 0 x y; Recortada y movida a la esquina inferior izquierda.

La diferencia es cuando queremos insertar el archivo EPS resultante dentro de un documento PS. Al tenerBoundingBox x0 y0 x y, el documento PS inserta el archivo EPS en el punto x0 y0, en lugar de donde estamos.

EJEMPLO:

Considere un simplePS archivar como

%!
/Times-Roman findfont 
11 scalefont setfont

72 700 moveto
(This is a test)show

si convertirlo aEPS con un comando como

ps2eps test.ps test.eps

Producirá

%!PS-Adobe-2.0 EPSF-2.0
%%BoundingBox: 72 700 127 708
%%HiResBoundingBox: 72.000000 700.000000 127.000000 707.500000
%%EndComments
% EPSF created by ps2eps 1.68
%%BeginProlog
save
countdictstack
mark
newpath
/showpage {} def
/setpagedevice {pop} def
%%EndProlog
%%Page 1 1
/Times-Roman findfont 
11 scalefont setfont
72 700 moveto
(This is a test)show
%%Trailer
cleartomark
countdictstack
exch sub { end } repeat
restore
%%EOF

Se ha recortado en sus coordenadas originales, y el resultadoBoundingBox es72 700 127 708. Ahora si intento insertar esteEPS archivo dentro de unPS Documento, trata de anidar en esta coordenada.

Será útil si la creación de unEPS archivo conBoundingBox: 0 0 55 8. Por supuesto, todas las coordenadas de dibujo (aquí moveto) deben modificarse con esta nueva referencia.

NOTA: Como se dijo, mi propósito de arreglar el punto de referencia de BoundingBox es hacerlo importable dentro del documento de PS. Por lo tanto, una respuesta alternativa a esta pregunta es: cómo insertar un archivo EPS dentro del documento PS independientemente de su BoundingBox.

Por ejemplo, cómo insertar este archivo EPS en la ubicación200 200 255 208 de un documento de PS. Intento insertar el EPS con el siguiente código, pero no funcionará a menos que se inicie BoundingBox desde0 0:

200 200 translate 
save 
/showpage {} bind def 
(test.eps)run 
restore

Respuestas a la pregunta(2)

Su respuesta a la pregunta