[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: (Solucionado, y largo) Rotar un fichero postscript



Javier M Mora wrote:
> 
> >
> Si estas trabajando con un A4 y quieres que el texto te salga girado,
> tienes que definir el papel inicial como A4 apaisado para que al girarlo
> quede sobre un A4 derecho y puedas imprimirlo.

Hola,
	Ante todo, gracias a todos los que me habeis respondido. Sin vuestras
sugerencias no creo que hubiese llegado a encontrar la solución. A
continuación os comentaré como lo he solucionado por si alguien se
encontrase con el mismo problema (y así de camino me hago un
recordatorio para mi).

1. El planteamiento del problema es el siguiente:

Partimos de un fichero ps obtenido a partir de cualquier editor (en mi
caso el editor de presentaciones de StarOffice). He estado haciendo
algunas transparencias que suelo escribir en papel a4 apaisado. El
problema es que quiero distribuirlas en formato pdf.

El proceso de conversión que utilizo es imprimir desde SO las
transparencias a ps y después convertirlas a pdf con el comando ps2pdf.
El problema es que SO genera un PS con las letras giradas 90º antiorario
(lógico, porque así la impresora cogerá el folio vertical y lo imprimirá
correctamente)


+-------------+
|             |
|             |
|             |
|   A         |		La saldia de SO queda de esta forma (las letras
deberían estar giradas, pero eso no puedo
|   L         |		representarlo en ASCII
|   O         |
|   H         |
|             |
|             |
|             |
+-------------+

Con un fichero a PS de esta forma, cuando se convierte a pdf queda
exactamente igual. Se puede imprimir, pero es incomodo para leer en
pantalla.


2. Una primera solución sería configurar SO utilizando una página
vertical (en lugar de la horizontal que utiliza por defecto) pero
definiendo un tamaño de papel personalizado (equivalente a un a4
apaisado). El ps resultante queda bien, pero cuando se genera el pdf el
resultado es un papel a4 con todo el texto de la página en la mitad
superior. Al menos ya puede leerse, pero queda poco estético


+-------------+
|             |
|   HOLA      |
|             |
|             |		Así quedaría el pdf definiendo un tamaño de página
personalizado y vertical en SO
|             |		
|             |
|             |
|             |
|             |
|             |
+-------------+

3. Una solución mejor sería utilizar el formato de 1 y rotarlo 90 grados
horarios antes de convertir a pdf. Aqui es donde aparecen los problemas:

a) No hay ningún programa que haga esto de forma automática en internet
y muy poca documentación.
b) psnup no sirve porque sólo rota cuando se juntan más de una página en
la misma hoja y este no es mi objetivo.

La solución definitiva consiste en utilizar el comando pstops.
Concretamente la instrucción a utilizar es la siguiente:

	pstops "1:0@1R(0,1w)" original.ps rotado.ps

El resultado es un ps rotado 90 grados horarios. *aviso* este ps aún no
se ve correctamente con gv. Creo que es porque gv aún piensa que la
página está en vertical y no encuentro el parámetro para cambiarlo.

He tenido que utilizar el parámetro 1w para desplazar la posición de la
página en el ps rotado. Si no lo utilizaba, el resultado es que el texto
quedaba debajo de la zona imprimible de la página y no se veía (aun no
he podido explicar porque).

Lo único que falta es convertirlo a pdf con ps2pdf. Sin embargo, aún
queda un pequeño problema: hay que decirle a ps2pdf que utilice un
tamaño especial de página (un a4 apaisado). La única forma que he
encontrado de hacerlo es definiendo un nuevo tipo de papel en
ghostscript. Para ello he seguido las instrucciones de la siguiente
página web (se ve que no soy el único que se ha tropezado con este
problema):
		http://rocky.wellesley.edu/downey/orientation/
Eso sí, yo he preferido definir mi nuevo papel 'slide' con tamaño 842
595 (a4 apaisado en lugar del letter apaisado que describe la página).

Por último, sólo queda convertir el ps a pdf con el comando
		ps2pdf -sPAPERSIZE=slide rotado.ps

Espero que os haya sido de utilidad. Ignoro si existe una forma más
sencilla de solucionar este problema. Yo no la he encontrado.

	Saludos

-- 
---------------------------------------------------
Jose Luis Triviño Rodriguez

http://www.lcc.uma.es/~trivino
Usuario registrado de linux nº 53043
---------------------------------------------------

La medida de programar es programar sin medida



Reply to: