Archivo mensual: marzo 2014

Cómo compaginar un documento en Scribus para imprimir o guardar


FoliosA pesar de ser un excelente maquetador de documentos de más alta altura que MS Publisher, no posee una forma de imprimir las hojas de 4 por hojas, 2 por cada cara de forma que me quede como un libro.

Compaginar significa que coincidan las páginas de forma que lo pueda imprimir en ambas caras y crear un libro.

Más detalles del concepto de cuarto y octavo, cosido de cuadernillos de folios, encuadernado y finalmente te puedes comprar este libro.

No conseguí manera de que el programa lo hiciera. Para ello cree le siguiente script Python:

#!/usr/bin/env python

"""
scribus_imposition.py
A very simple utility that allows you to copy
and paste the correct page sequence for
a simple booklet imposition
2013.03.10 Carlos Celis Flen-Bers
Based in bookletpages.py by 2007.12.22  Gregory Pittman
"""
import scribus

# message is broken up only so it fits on this page
message = 'Haga click en OK y luego Ctrl+C para copiar la secuencia.\nPegue en el cuadro de Imprimir o Guardar PDF'
scribus.messageBox("Instrucciones",message,icon=0,button1=1)

# Calculo
pag = 1
num_pags = scribus.pageCount()
modulo = num_pags % 4
if modulo == 0:
    b = scribus.messageBox('Excelente','El documento tiene paginas multiplos de 4',scribus.ICON_WARNING, scribus.BUTTON_OK)
    if num_pags == 4:
        b = scribus.valueDialog('Secuencia de Paginas','Libro de -'+str(num_pags)+'- Paginas\nCtrl+C para copiar', '4,1,2,3')
    else :
        cadena = ''
        ult = num_pags
        cont = pag + 1
        sig = ult - 1
        while pag <= (sig - 2):
            cadena_tmp = str(ult)+','+str(pag)+','+str(cont)+','+str(sig)
#            b = scribus.valueDialog('Contador','Hasta 4', cadena_tmp)
            ult -= 2
            pag += 2
            cont += 2
            sig -= 2
            if cadena != '': cadena += ','+cadena_tmp
            else : cadena += cadena_tmp
        b = scribus.valueDialog('Secuencia de Paginas','Libro de -'+str(num_pags)+'- Paginas\nCtrl+C para copiar', cadena)
else:
    b = scribus.messageBox('Error','El documento debe tener cantidad de paginas multiplo de 4',scribus.ICON_WARNING, scribus.BUTTON_OK)

Para usarlo primero copiar y guardar en un archivo, yo lo llame ‘scribus_imposition.py’ por el proceso de Imposición.

Este script tiene el inconveniente de que compagina en un cuadernillo infinito.

Estoy haciendo otro que compagine por cuadernillos

Luego abrimos el programa y hacemos clic en Script->Ejecutar Script…

Menú Script

Menú Script

Seleccionar fichero en Linux

Seleccionar fichero en Linux

Luego de darle ok, el script empezará a dar una serie de mensajes… si todo sale bien saldrá una secuencia de números que deberá pegar en la ventana de Archivo->Imprimir donde dice Imprimir el rango

Imprimir páginas

Imprimir páginas