Username
Password

Programmazione

Supporto per Linguaggi di Programmazione
Tuesday, 1 March 2011, 23:45
Neles
 Davide P.
 Militante
 
L'avatar di  Neles
 
 Località: Genoa
 Età: 45
 Messaggi: 3,577

Resize di un pdf in stampa


Partiamo dall'inizio:

programmino con form in C# che deve mandare automaticamente in stampa dei pdf.

Il problema nasce se la pagina da stampare è leggermente più grande del formato (A4 o A3 che sia):
  • se chiamo semplicemente Acrobat Reader da linea di comando con argomenti "/p /h" stampa il file, ma non mi fa il resize (tutto ciò indipendentemente se il reader abbia settato o meno lo "shrink to fit page size" nella dialog normale di stampa);
  • se uso il COM come componente della form e chiamo le sue funzioni (vedasi qui) ho dei problemi non da ridere: printAllFit mi mostra una form di conferma ad ogni chiamata, printPagesFit va "a caso" se cambio la stampante da quella di default in caso di stampa di 2 o più file;
  • sarebbe sensato da lavorare piuttosto sulla stampante, indicando a lei di adattare il file da stampare alla sua pagina, ma non ho trovato metodi per farlo.
Idee, suggerimenti, altri santi da invocare?

Anticipatamente ringrazio per le risposte.

P.S.: il problema non è quello di spostare la stampante da quella degli A4 a quella degli A3 in caso di diversi formati dei file, ma giusto quello di far stare interamente in stampa un pdf su pagina che è giusto 2-3 mm in più di un A4 o di un A3.
__________________
There is no dark side of the Moon really... matter of fact it's all dark.

Chuck Norris non bestemmia, è Dio che compie una metamorfosi per accontentarlo
    Rispondi Citando Rispondi
Tuesday, 1 March 2011, 23:48
Duilio
 Khn'nr
 Stuff
 
L'avatar di  Duilio
 
 Località: Tarnax IV
 Età: 56
 Messaggi: 27,900

Le impostazioni della stampante di default non mantengono il settaggio della scalatura come fa invece irfanview?
__________________

Uccidete pure me, ma l'idea che è in me non l'ucciderete mai

-
"Non consolarmi della morte", a Ulisse replicava il Pelìde.
"Io pria torrei servir bifolco per mercede, a cui scarso e vil cibo difendesse i giorni,
che del Mondo defunto aver l'impero."
-
tutto il klan deve rendere conto solo a Dio, mica agli elettori e alla giustizia [taunus 20:10]
    Rispondi Citando Rispondi
Tuesday, 1 March 2011, 23:59
Neles
 Davide P.
 Militante
 
L'avatar di  Neles
 
 Località: Genoa
 Età: 45
 Messaggi: 3,577

Purtroppo non posso settare "a priori" a mano (ovvero non dall'applicativo) le impostazioni della stampante, poiché viene utilizzata anche per altri scopi.

E non ho trovato metodi .NET per agire sulla stampante programmaticamente in modo da:
  • mettere da parte la configurazione di default della stampante;
  • settarla indicandogli di fare il best fit;
  • finita la stampa riportarla alla configurazione precedente.
Questa operazione mi riesce solo per spostare la stampante da quella di default a quella del formato e poi riportarla a quella precedente.
Ma per quanto riguarda il settaggio della pagina... nada.
__________________
There is no dark side of the Moon really... matter of fact it's all dark.

Chuck Norris non bestemmia, è Dio che compie una metamorfosi per accontentarlo
    Rispondi Citando Rispondi
Wednesday, 2 March 2011, 08:29
Bramins
 VG Vip
 
L'avatar di  Bramins
 
 Messaggi: 297

Premetto che sono totalmente ignorante sull'argomento ....

e da ignorante chiedo ......

ma devi richiamare per forza acrobat reader o potrebbe andare bene un qualsiasi programma che stampi pdf ?

perchè se non sbaglio mi era capitato sottomano un programma che faceva l'operazione di adattamento dei pdf alla pagina in automatico .....

Se potrebbe fare al caso tuo mi metto a cercarlo .....
__________________


    Rispondi Citando Rispondi
Commenti a questo messaggio
  Neles: Grazie, molto utile
Wednesday, 2 March 2011, 08:33
RomeoKnight
 Militante
 
L'avatar di  RomeoKnight
 
 Messaggi: 4,968

Guarda qua
http://www.verypdf.com/pdfinfoeditor...per/resize.htm
Esistono altri programmi per gestire il pdf da linea di comando, anche totalmente free.
__________________
Hic erant dracones
    Rispondi Citando Rispondi
Commenti a questo messaggio
  Neles: Interessante
Wednesday, 2 March 2011, 08:55
palin
 Giuseppe
 Militante
 
L'avatar di  palin
 
 Località: Albano Laziale
 Età: 44
 Messaggi: 4,246

Prova anche xpdf o direttamente ghostscript... magari fanno al caso tuo.
__________________

Palin -- <palin AT email DOT it>

Democracy doesn't mean “my ignorance is just as good as your knowledge.” - Isaac Asimov
draco dormiens nunquam titillandus
    Rispondi Citando Rispondi
Commenti a questo messaggio
  Neles: Yabadabaduu!
Wednesday, 2 March 2011, 09:49
Neles
 Davide P.
 Militante
 
L'avatar di  Neles
 
 Località: Genoa
 Età: 45
 Messaggi: 3,577

Quote:
Originariamente inviato da Bramins
ma devi richiamare per forza acrobat reader o potrebbe andare bene un qualsiasi programma che stampi pdf ?
Ottima domanda.

No, non ci sono vincoli ad altri programmi esterni da utilizzare... purché siano free ed utilizzabili dal cliente.

Avevo già adocchiato i Pdf Tools; la cifra è abbordabile, ma ero alla ricerca di altre soluzioni.
Anche Xpdf può andar bene, se scala i file (e devo ancora controllare).
__________________
There is no dark side of the Moon really... matter of fact it's all dark.

Chuck Norris non bestemmia, è Dio che compie una metamorfosi per accontentarlo
    Rispondi Citando Rispondi
Wednesday, 2 March 2011, 12:11
Bramins
 VG Vip
 
L'avatar di  Bramins
 
 Messaggi: 297

CUPS-PDF

Advanced PDF Tools

CutePDF Writer

Ho ritrovato questi 3 software in una vecchia cartella e sto cercando di capire se uno di questi è il programma che dicevo prima.

Se nel frattempo vuoi darci un occhio pure tu ....... a memoria punterei sul primo che ti ho indicato ma .... boh

Finisco di fare delle cose qui al lavoro e poi provo a verificare.
__________________


    Rispondi Citando Rispondi
Commenti a questo messaggio
  Neles: Grazie, molto utile
Wednesday, 2 March 2011, 16:39
Neles
 Davide P.
 Militante
 
L'avatar di  Neles
 
 Località: Genoa
 Età: 45
 Messaggi: 3,577

And the winner is... Ghostscript!!

Più precisamente, è venuta in soccorso il batch ps2pdf.

Soluzione pertanto da approntare:
  1. Installare Ghostscript (scaricabile qui; ps2pdf è nella lib del gs)
  2. Aggiungere alla variabile d'ambiente PATH la directory bin del gs
  3. Creare un nuovo pdf con la pagina della dimensione "giusta" lanciando il comando
    Codice:
    ps2pdf -sPAPERSIZE#<a4|a3|ecc> -dPDFFitPage <nome_file_pdf_troppo_largo> <nome_file_pdf_corretto> (in Unix è -sPAPERSIZE=a3)
  4. Eseguire la stampa tramite Acrobat Reader (o chi per esso) sul file appena creato
Ancora grazie a tutti per i suggerimenti.
E grazie Skyblade!
__________________
There is no dark side of the Moon really... matter of fact it's all dark.

Chuck Norris non bestemmia, è Dio che compie una metamorfosi per accontentarlo
    Rispondi Citando Rispondi
Commenti a questo messaggio
  Duilio: Grazie, molto utile
  palin: Grazie, molto utile
  Foxes: Yabadabaduu!
  Jarod: Interessante
Thursday, 3 March 2011, 14:21
Neles
 Davide P.
 Militante
 
L'avatar di  Neles
 
 Località: Genoa
 Età: 45
 Messaggi: 3,577

Piccola postilla:

oggi ho fatto le prove "su strada" su un plotter che, pur avendo i margini settati a 0 tagliava dei pezzetti dal file ai bordi (pur visualizzandolo perfettamente a schermo).

Dopo un po' di ed essersi giocati l'Austria con le prove di stampa ho trovato la soluzione:

bisogna sostituire il parametro
Codice:
-sPAPERSIZE#<a4|a3|ecc>
con la serie di parametri
Codice:
-dDEVICEHEIGHTPOINTS#<altezza> -dDEVICEWIDTHPOINTS#<larghezza> -dFIXEDMEDIA
dove al posto di e ci vanno dei valori leggermente diminuiti rispetto alle altezze e larghezze standard, indicate in punti (trovate le dimensioni in punti degli standard qui).
Ad es. si possono usare 830 e 580 rispettivamente per altezza e larghezza di un A4 anziché gli standard 842 e 595.

Anche in questo caso dovete sostituire gli # con degli = se state lavorando in Unix anziché in Windows.
__________________
There is no dark side of the Moon really... matter of fact it's all dark.

Chuck Norris non bestemmia, è Dio che compie una metamorfosi per accontentarlo
    Rispondi Citando Rispondi
Commenti a questo messaggio
  Foxes: Grazie, molto utile
  palin: Grazie, molto utile
  Jarod: Grazie, molto utile
Rispondi Invia Nuova Discussione


Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 visitatori)
 

Thread già visto da:
taunus, Pocket, ggigi99, RomeoKnight, SanK, foul64, Duilio, palin, S71ng, Lutero, BRAVO 2, SatRider, Foxes, Neles, uniplus, Attilio, GattaMatta, Bramins, gillesvilleneuve
Strumenti Discussione Cerca in questa Discussione
Cerca in questa Discussione:

Ricerca Avanzata
Modalità Visualizzazione

top Regole di scrittura
Tu non puoi inserire messaggi
Tu non puoi rispondere ai messaggi
Tu non puoi inviare allegati
Tu non puoi modificare i tuoi messaggi

codice vB è Attivo
Smilies è Attivo
[IMG] il codice è Attivo
Il codice HTML è Attivo

Se hai problemi, contattaci


Visite Totali Posts: 81.268.854
Tutti gli Orari sono GMT +1. Attualmente sono le 07:16.

iGroup Black
Powered by vBulletin Versione 3.5.6
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Traduzione italiana a cura di: Enzo-Staff-VbulletinItalia.it
 
2000, 2012 © Visiva Group