Voglio rilegare a filo un libro. Ho tutto il testo, ma devo stamparlo in
maniera opportuna, e cioč 2 pagine per ogni lato del foglio, in modo tale da
poter poi piegare l'A4 in due sul lato lungo e fascicolare 8 fogli insieme.
Sul primo A4 devo stampare sul fronte pag.16 e pag.1, e sul retro pag.2 e
pag.15;
sul secondo A4 devo stampare sul fronte pag.14 e pag.3, e sul retro pag.4 e
pag.13...
... e cosě via.
Chi mi sa dire come devo fare? Non mi dite per favore che devo stampare 4
volte lo stesso foglio giocando con i margini impostati tramite il software
della stampante...
Uso Miktek (con Winedt) in Windows e vorrei ricavare un pdf da stampare su
una qualsiasi stampante.
Grazie.
Niki Oliva
se ho capito bene č facile, basta avere installate le psutils.
partendo dal ps basta:
> psbook -s16 libroA4.ps | psnup -2 > libro-A5.ps
psbook ricombina le pagine nel modo opportuno (a fascicoli di 16
pagine) e psnup mette 2 pagine per foglio.
da qui il pdf si puň creare con ps2pdf.
ciao
--
La gente che non ha mai tempo fa pochissimo.
Prima di tutto compili il tuo documento in PS.
Poi ridisponi le pagine con quinterni di 8.
psbook -q -s32 Libro.ps Libro2.ps
Poi disponi 2 fogli per pagina A3
psnup -pa3 -Pa4 -q -2 Libro2.ps LibroFinale.ps
Ciao
Marco
Sono un pò rintronato.
A te serve mettere 2 A5 su un A4.
Io ti ho detto come mettere 2 A4 su un A3. :-)
Ciao
Marco
> Chi mi sa dire come devo fare?
Io sono 8 anni che ci provo inutilmente, con delle utility che
(teoricamente) fanno quel lavoro, ma in realtà non fungono (almeno con
Windoz). Già da tempo stampo tutto in A4, facendo attenzione che il testo
sia multiplo di 4 pagine (4, 8, 12...). Poi prendo le pagine e le assemblo a
due a due con nastro per eliografo. Una volta ottenuto il master lo porto in
copisteria e fotocopio fronte retro. Semplice, banale... ma soprattutto
funziona :-)
>Uso Miktek (con Winedt) in Windows e vorrei ricavare un pdf da stampare su
>una qualsiasi stampante.
Oltre alla procedura con le psutils che ti hanno consigliato (e ad altre
ancora, su cui sorvolerò), se hai, o pensi di installare, Perl, c'è un
modulo per il trattamento di documenti PDF, Text::PDF, che è accompagnato
da un esempio/utilità, pdfbklt, che fa il lavoro su documenti PDF (comunque
ottenuti, non c'è il vincolo che siano stati creati da latex).
Crei il tuo documento PDF (in qualsiasi modo: latex+dvips+ps2latex,
latex+dvipdfm, pdflatex) e applichi pdfbklt.
Ciao.
>Io sono 8 anni che ci provo inutilmente, con delle utility che
>(teoricamente) fanno quel lavoro, ma in realtà non fungono (almeno con
>Windoz).
Non "teoricamente", lo fanno proprio, senza alcun problema, anche in
Windows: sono almeno altrettanti 8 anni che le uso regolarmente.
Ci possono essere problemi con documenti stampati in Windows da altre
applicazioni, perché i driver postscript di Windows inseriscono della roba
che disturba le psutils (ma comunque si possono aggiustare), o non
inseriscono (se non convenientemente istruiti) della roba che gli serve;
non ho invece mai incontrato delle difficoltà con documenti postscript
creati con dvips.
Ciao.
1) quando lavoro con Winedt, devo impostare la pagina in A4 o in A5?
Insomma, devo scrivere
\documentclass[11pt,a4paper,titlepage]{report}
oppure
\documentclass[11pt,a5paper,titlepage]{report}
2) io ho installato il pacchetto full del Miktex 2.1. Dispongo in tal modo
delle psutil? E posso inserire quei comandi come se lavorassi in una shell
del Linux? (uso il Miktek da tre giorni)...
Grazie
"mithrandir" <gandalf.m...@tiscali.it> ha scritto nel messaggio
news:ek5hv7...@tiscali.it...
>
> se ho capito bene è facile, basta avere installate le psutils.
> partendo dal ps basta:
> psbook -s16 libroA4.ps | psnup -2 > libro-A5.ps
> psbook ricombina le pagine nel modo opportuno (a fascicoli di 16
> pagine) e psnup mette 2 pagine per foglio.
> da qui il pdf si può creare con ps2pdf.
>1) quando lavoro con Winedt, devo impostare la pagina in A4 o in A5?
>Insomma, devo scrivere
Dipende. La mia opinione č che č meglio lavorare a dimensioni reali: meglio
un 11pt su A5 che resta 11pt che un 11pt su A4 che ridotto diventa... boh?
Perň, secondo quali sono le tue esigenze, potrebbe essere conveniente anche
partire da un A4, per esempio se vuoi due versioni stampate dello stesso
documento, una in A4 e una ridotta in A5.
>2) io ho installato il pacchetto full del Miktex 2.1. Dispongo in tal modo
>delle psutil? E posso inserire quei comandi come se lavorassi in una shell
>del Linux? (uso il Miktek da tre giorni)...
Sě. O, se non erano selezionate al momento dell'installazione, puoi
installare da Miktex. Fanno parte di Miktex, insomma.
Ciao.
> Non "teoricamente", lo fanno proprio, senza alcun problema, anche in
> Windows: sono almeno altrettanti 8 anni che le uso regolarmente.
Mah... io mi sono già perso d'animo 2 - 3 anni fa, perché avevo sprecato
troppo tempo per nulla.
> Ci possono essere problemi con documenti stampati in Windows da altre
> applicazioni,
No, no... sto parlando di WinEdt + MikTex + lambda + dvipdfm ---> *.pdf
> perché i driver postscript di Windows
No *.ps, *.pdf!
> Crei il tuo documento PDF (in qualsiasi modo: latex+dvips+ps2latex,
> latex+dvipdfm, pdflatex) e applichi pdfbklt.
questo mi mancava ed è veramente ottimo.
grazie ;-)
--
La memoria ti diminuisce, se non la eserciti.
cicerone
>No, no... sto parlando di WinEdt + MikTex + lambda + dvipdfm ---> *.pdf
>
>> perché i driver postscript di Windows
>
>No *.ps, *.pdf!
Sì, ma le imposizioni su che cosa le facevi? le psutils lavorano sui file
postscript.
Altre utilità (dvi2dvi, a5booklet,...) processano i file .dvi, e potrebbero
essere il "lambda" del tuo procedimento.
Per ottenere un file postscript in Windows (salvo il caso di dvips o altre
applicazioni che lo producono nativamente) devi passare necessariamente da
un driver postscript; e i driver postscript di Windows hanno i problemi
detti, rispetto alle psutils. Ci si arriva, ma bisogna accordare bene il
driver e fare comunque qualche aggiustamento sul postscript prima di darlo
in pasto alle psutils.
Con i postscript ottenuti con dvips, invece, non ho mai avuto difficoltà,
fin dal primo tentativo e senza alcun intervento: fai girare psbook e psnup
ed è fatta. dvi2dvi l'ho trovato più macchinoso e l'ho usato pochissime
volte, ma sostanzialmente funziona anche quello.
Postprocessare i documenti pdf è la cosa che ho finito per preferire,
perché funziona su qualunque documento pdf.
Ciao.
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news segnala gli abusi ad ab...@newsland.it
>per windows non serve neanche il perl. su
>http://www.sil.org/~hosken/Utils/PDFCreate.html
>se ne può trovare un .exe.
Carino, ma per quanto ne ho capito non c'è modo di ottenere
fascicoli.. giusto?
Maltese
________________________________________________________________________
"Physics is like sex: sure, it may give some practical
results, but that's not why we do it" (Richard Feynman)
> i driver postscript di Windows
ho avuto una 'aspra' discussione su comp.text.tex a questo proposito:
non sono un windows-fan, però se i ps prodotti in windows non funzionano
perfettamente, non se ne deve certo dare la colpa a winzozz stesso!
Io il driver l'ho scaricato dalla Adobe, mica dalla M$...
Chi mi illumina, senza bruciarmi?
;-)
--
ciao
El Bandolero
>ho avuto una 'aspra' discussione su comp.text.tex a questo proposito:
>non sono un windows-fan, però se i ps prodotti in windows non funzionano
>perfettamente, non se ne deve certo dare la colpa a winzozz stesso!
>Io il driver l'ho scaricato dalla Adobe, mica dalla M$...
L'obiezione è corretta. Fatto sta che, com'è come non è, tutti i
driver postscript PER Windows che ho avuto modo di vedere producono
documenti PostScript che hanno problemi di compatibilità con le
psutils. Che, a rigore, non vuol neppur dire (e infatti io non l'ho
mai detto) che "non funzionano perfettamente".
Funzionano perfettamente per la stampa, ma producono documenti che è
più difficile postprocessare. A parte la conformità DSC, che in genere
è possibile imporre, inseriscono un preambolo che, tra le altre
innumerevoli cose (non necessariamente gradite) che fa, rende
difficile separare le pagine sulla base dei soli commenti. In pratica,
vengono meno alle raccomandazioni Adobe sull'indipendenza delle
pagine.
Chi li produca e perché si comportino in questo modo è, per i miei
scopi, totalmente irrilevante.
Ciao.
>Carino, ma per quanto ne ho capito non c'è modo di ottenere
>fascicoli.. giusto?
Che cosa intendi per "fascicoli"?
PDF::Text è una libreria per il trattamento di documenti PDF con cui è
possibile fare praticamente tutto, basta avere la pazienza di
programmarlo.
pdfbklt è un'utilità molto limitata, che usa PDF::Text per fare alcune
cose. Che fra queste ci sia la possibilità di ottenere "fascicoli",
così come li intendi tu, non saprei dire. Certamente è possibile fare
alcune semplici imposizioni (stampare due o più pagine per foglio,
secondo un certo ordine).
Un ulteriore sistema per postprocessare documenti PDF è (sorpresa,
sorpresa!) pdftex. Attraverso il pacchetto pdfpages, per esempio, o
con ConTeX. Con pdfpages si possono fare imposizioni anche piuttosto
complesse.
Ciao.
>con ConTeX.
^^^^^^
ConTeXt
Ciao.
>Maltese, nel messaggio <hcveo1l59ctcr347r...@4ax.com>,
>scriveva:
>
>>Carino, ma per quanto ne ho capito non c'è modo di ottenere
>>fascicoli.. giusto?
>
>Che cosa intendi per "fascicoli"?
>
in pratica a me piacerebbe ottenere con un pdf l'analogo di
psbook -s16 libroA4.ps | psnup -2 > libro-A5.ps
>PDF::Text è una libreria per il trattamento di documenti PDF con cui è
>possibile fare praticamente tutto, basta avere la pazienza di
>programmarlo.
>
>pdfbklt è un'utilità molto limitata, che usa PDF::Text per fare alcune
>cose. Che fra queste ci sia la possibilità di ottenere "fascicoli",
>così come li intendi tu, non saprei dire. Certamente è possibile fare
>alcune semplici imposizioni (stampare due o più pagine per foglio,
>secondo un certo ordine).
>
>Un ulteriore sistema per postprocessare documenti PDF è (sorpresa,
>sorpresa!) pdftex. Attraverso il pacchetto pdfpages, per esempio, o
>con ConTeX. Con pdfpages si possono fare imposizioni anche piuttosto
>complesse.
>
>Ciao.
darò un'occhiata.. grazie mille..
>in pratica a me piacerebbe ottenere con un pdf l'analogo di
>
>psbook -s16 libroA4.ps | psnup -2 > libro-A5.ps
Con pdfbklt, così com'è, si ottiene lo stesso effetto di:
psbook libroA4.ps | psnup -2 > libro-A5.ps
cioè, il numero di pagine della "signature" (o del fascicolo) è quello
dell'intero documento, modulo 4. Eventualmente, è possibile modificare
il numero di pagine per foglio, l'orientazione e l'ordine, ma non
raggrupparle in fascicoli più piccoli.
Dovrebbe essere semplice modificare pdfbklt in modo da consentire
anche questo. Si tratta di modificare la procedura di ordinamento
delle pagine che, a differenza di quella per ridimensionameto e
posizionamento, è molto semplice (non è neppure necessario conoscere i
particolari di PDF::Text o dei documenti PDF: è puro e semplice Perl,
che costruisce una lista). È tuttavia una cosa da fare, che richiede
tempo e una buona conoscenza di Perl, non penso che nessuno ci si sia
messo. Un'alternativa è contattare l'autore di PDF::Text e chiedergli
se può provvedere lui.
Il pacchetto pdfpages, invece, ha un'opzione "signature" che permette
la fascicolazione.
Ciao.
>Dovrebbe essere semplice modificare pdfbklt in modo da consentire
>anche questo. Si tratta di modificare la procedura di ordinamento
>delle pagine che, a differenza di quella per ridimensionameto e
>posizionamento, è molto semplice (non è neppure necessario conoscere i
>particolari di PDF::Text o dei documenti PDF: è puro e semplice Perl,
>che costruisce una lista).
Eccola qui, limitandosi al caso ($opt_p == 2), cioè due pagine per
foglio:
for ($i = 0; $i < $rpc / $opt_p; $i++)
{
if ($opt_p == 1) {
...
} elsif ($opt_p == 2) {
@pl = ($pglist[$i], $rpc - $i > $pgcount ?
undef :
$pglist[$rpc - $i - 1]);
@pl = ($pl[1], $pl[0]) if ($i & 1);
$m = ($i + 1) . ", " . ($rpc - $i);
} else { # $opt_p == 4
...
}
print "Merging " . $m . "\n" unless $opt_q;
merge_pages(@pl);
}
$prc è il numero di pagine del documento, @pglist la lista che
contiene gli oggetti pagina, merge_pages(@pl) la procedura che dispone
le pagine della lista @pl su un foglio ($m è semplicemente un
messaggio informativo a schermo, giusto per dire all'utente che cosa
si sta facendo).
Si tratta di costruire un algoritmo che, allo scorrere di $i
sull'indice delle pagine, fornisca in @pl la giusta coppia di pagine
da disporre sul foglio.
L'algoritmo attuale prende semplicemente la prima e l'ultima pagina
del documento, poi la seconda e la penultima, la terza e la terzultima
e via così.
Introducendo un'ulteriore opzione (sia $opt_f) sul numero delle pagine
per fascicolo, bisogna fare la stessa cosa, operando però sul
fascicolo: la prima e l'ultima del fascicolo, la seconda e la
penultima del fascicolo... e così via finché non si finisce il
fascicolo, quindi si passa al successivo, se le pagine del documento
non sono terminate, e così via per ogni fascicolo.
Io non sono molto bravo in queste cose (moduli, indici...) perché
m'imbarbaglio subito, sicché non è detto che la mia sia la soluzione
migliore, e neppure che sia una soluzione e neanche solo che giri;
comunque ci provo.
Intanto, aggiungo l'opzione f all'elenco delle opzioni possibili:
getopts("b:h:lp:qrs:");
diventa:
getopts("b:h:lp:qrs:f:");
racchiudo il ciclo for di cui sopra in una sub, così da poterlo
richiamare più volte (per semplicità, o pigrizia, scegliete voi,
localizzo alla sub delle variabili con lo stesso nome di quelle
globali, invece di modificarne il nome in ogni occorrenza):
sub proc_fascicolo {
my $rpc = $opt_f;
my @pglist = @_;
my $pgcount = scalar @pglist;
for ($i = 0; $i < $rpc / $opt_p; $i++)
{
...
}
}
e aggiungo la parte che gestisce i fascicoli:
my $fascicoli = int(($rpc + $opt_f - 1)/$opt_f);
#Va aggiunta anche una gestione di default dell'opzione f, nel
#caso venga omessa:
$opt_f = $rpc unless defined $opt_f;
my $primo;
my $ultimo;
my $fascicolo;
for ($fascicolo = 0; $fascicolo < $fascicoli; $fascicolo++) {
$primo = $fascicolo * $opt_f;
$ultimo = $primo + $opt_f - 1;
proc_fascicolo(@pglist[$primo .. $ultimo]);
}
Non ho verificato, e non ho intenzione di farlo, ma modificando in
questo modo pdfbklt non è escluso che si ottenga il risultato voluto
(in ogni caso, qualcosa si dovrebbe ottenere). A questo punto pdfbklt
andrebbe richiamato con l'opzione f:
pdfbklt -f16 libroA4.pdf
o secondo il numero di pagine che si vogliono in ogni fascicolo.
Ciao.
>Non ho verificato, e non ho intenzione di farlo, ma modificando in
>questo modo pdfbklt non è escluso che si ottenga il risultato voluto
>(in ogni caso, qualcosa si dovrebbe ottenere).
Per gli ardimentosi che volessero verificare, il file pdfbklt.bat da me
modificato per la fascicolazione è disponibile qui:
http://mio.discoremoto.virgilio.it/zezzagio
Va da sé che non garantisco alcunché, né sono disponibile per modifiche e
spiegazioni.
Mancano diverse cose, non ultime copyright e documentazione della modifica
effettuata (non sono neppure sicuro che, così com'è, sia effettivamente
distribuibile, ma confido nella benevolenza dell'autore Martin Hosken),
inoltre l'odometro andrebbe modificato per visualizzare il numero di pagine
originali del documento, invece di quelle del fascicolo.
Il meccanismo della fascicolazione, comunque, potrebbe anche funzionare.
Il nome corretto del modulo Perl, che ho riferito in questo thread a volte
come Text::PDF e a volte come PDF::Text, è Text::PDF.
Ciao.
>Giovanni Zezza, nel messaggio <6sijo1pfoa1qdi8a4...@4ax.com>,
Sei stato davvero gentilissimo, ma purtroppo io non conosco il Perl..
quando e se qualcuno avrà tempo e voglia di compilare il sorgente
spero si faccia sentire e renda disponibile l'eseguibile..
Ancora grazie per la disponibilità..
>Sei stato davvero gentilissimo, ma purtroppo io non conosco il Perl..
Nessuna benché minima gentilezza, solo sano e egoistico divertimento.
Di più, aver dovuto studiare lo script mi consente ora di fargli fare
alcune altre cosine di mia utilità, che era tanto tempo che volevo
convincerlo a fare. Sicché, sono io ad esser grato per l'occasione.
Per far funzionare il giochino comunque non è necessario conoscere il Perl,
basta installarlo, dopodiché funziona come un .bat qualunque. Capisco,
certo, la riluttanza ad installare Perl solo per una cosina del genere.
>quando e se qualcuno avrà tempo e voglia di compilare il sorgente
>spero si faccia sentire e renda disponibile l'eseguibile..
Purtroppo io non sono in grado di compilare uno script Perl, nel senso e
nel modo in cui (credo) è disponibile pdfbklt.exe su
http://www.sil.org/~hosken/Utils/PDFCreate.html.
Il massimo che so fare è compattare tutto (interprete Perl, librerie e
script) con par. Il risultato è un eseguibile, che non ha bisogno di altro
per funzionare, ma è più grande (1.5Mb, contro 547Kb) e contiene in chiaro
il sorgente dello script e di tutte le librerie necessarie per farlo
funzionare.
pdfbklt.exe su http://mio.discoremoto.virgilio.it/zezzagio
Ciao.
>Il massimo che so fare č compattare tutto (interprete Perl, librerie e
>script) con par. Il risultato č un eseguibile, che non ha bisogno di altro
>per funzionare, ma č piů grande (1.5Mb, contro 547Kb) e contiene in chiaro
>il sorgente dello script e di tutte le librerie necessarie per farlo
>funzionare.
Piů che sufficiente.. funziona benissimo.. ho visto che c'č anche
l'eseguibile per invertire l'operazione..
Ancora grazie.. alla prossima..