Immagino che leggendo il titolo del thread avrete pensato: "Ma questo che cosa ha fumato?"
Niente, niente, ora vi spiego:
Problema: compattare (ottimizzandoli) una gran quantità di pdf (generati da un sistema automatico che crea file più grandi del necessario) in modo da risparmiare spazio su disco. Ho trovato un paio di programmetti free che lo fanno (ti creano un file di dimensioni inferiori, sempre pdf e praticamente della stessa qualità; a seconda di quale programma aveva creato il pdf di partenza ed altri fattori, possono compattarlo dell'1% o del 90%), ma l'interfaccia GUI permette solo di specificarne uno alla volta, per farne qualche migliaio non è molto pratico. Ne conoscete qualcuno che permette l'ottimizzazione di massa/batch? Mi risolvereste un mucchio di problemi.
Ho trovato che il pdfcompress del pdf995 è un programmetto a riga di comando, e quindi se riuscissi a fare un qualche programmetto in grado di farglielo eseguire in batch per tutti i file *.pdf esistenti in una cartella, sarei a posto. Certamente, finché ho la versione gratuita ad ogni elaborazione mi apre la finestra della pubblicità, ma se riesco a farlo fuzionare, poi posso anche acquistare la versione completa...
Ad ogni modo, la teoria sarebbe fare un programmino che si crea un elenco di tutti i file *.pdf in una sottocartella "A"
pensavo facendogli eseguire il comando dos
dir /b A\*.pdf >elenco.txt (e fin qui nessun problema)
e poi di fargli rileggere questo file un rigo alla volta, ed utilizzare il testo (nomedelfilepdf) per passarlo come file di input e di output (in una cartella B) al pdfcompress, che lo vuole nel formato
pdfcompress.exe "A\nomedelfilepdf.pdf" "B\nomedelfilepdf.pdf"
Il fatto è che sia io che un mio collega oramai siamo più sistemisti che programmatori (specialmente io ho abbandonato parecchio) e non abbiamo nemmeno granché di compilatori a disposizione.
Il mio collega ha provato a farlo in Basic (con un vecchissimo Basic), ma per qualche strano motivo se gli passa il persorso di pdfcompress.exe senza parametri lo lancia (compare la schermata delle istruzioni), mentre se gli aggiunge anche i parametri (e stampando a video la stringa risulta corretta), allora dice che non riesce a trovare il file. Doh!
Da parte mia, stasera ero curioso e tornato a casa ho ritirato fuori il vecchio Clipper con cui avevo fatto la tesina della maturità una decina di anni fa (e da allora non lo avevo più usato, figuratevi che mi ricordo!), ma sono riuscito a fare ancora meno che il mio collega con il basic: non riesco a trovare il modo giusto per leggere dal file di testo che gli faccio creare (all'epoca avevo lavorato solo coi .dbf), né (se passassi il primo scoglio) so con quale sintassi inserire le variabili all'interno dei comandi DOS. Però almeno il file .txt creato lanciando il comando DOS da Clipper lo fa riempiendolo con i nomi di file lunghi, quello dal Basic invece con i nomi di file brevi (strano, che utilizzerà un "suo" comando DIR invece che quello del S.O.?) ...
Qualche idea?