Stampa di file batch


8

Ho un utente che deve stampare circa 220 documenti con una media di 2-3 pagine ciascuno. Quando viene stampato con il metodo Windows standard di Seleziona tutto - Fai clic con il pulsante destro del mouse - Stampa, questo sovrasta il server di stampa o la stampante stessa. Sto cercando un programma di utilità che mi permetta di elaborare diciamo 5 documenti alla volta che farà tutti i documenti in una determinata directory. Spero che questo allevierà la tensione sul server di stampa e consentirà inoltre all'utente di non dover fare da babysitter ai suoi lavori di stampa. Ne ho trovato uno che ti consente di pianificare un lavoro di stampa per un certo tempo, ma (e forse questo non è un problema) l'ortografia nel programma è atroce.

Risposte:


4

Potresti provare il gestore di stampa batch di DarkStorm è gratuito! :-)

Il gestore di stampa batch di DarkStorm è un'applicazione .Net che stampa in batch documenti. Il gestore di stampa batch di DarkStorm automatizza Word / Excel e Adobe Reader per aiutare il processo di stampa batch, inoltre fornisce supporto per alcuni formati di immagini diffusi.
Non sono stato in grado di testarlo però

In alternativa:

È possibile scrivere un semplice script che prende i nomi da un file di testo e li stampa a determinati intervalli. È possibile eseguire una query sul contenuto della cartella di stampa per ottenere i nomi dei documenti, inserirli in un file di testo e quindi scorrere il file di testo con un intervallo di attesa fino alla stampa di tutti i documenti.

Lo pseudo codice sarebbe simile a questo.

Populate Text File Function ()  
{  
  Set Folder Path  
  Get Document Names in folder  
  Write Document Names to Text File  
}  
Print Function  
{  
  While Not End of File{  
  Get Document Name  
  Print Document Name  
  Move down 1 line  
      Wait a timed interval  
 }  
}

La mia codifica non è più quella di una volta, quindi potrei aver perso alcuni bit, ma penso che sia ragionevolmente lì. Consiglierei Guys Scripting Enzine per cercare campioni di codice. Dovresti essere in grado di tagliare e incollare la maggior parte del codice necessario.


wow - DarkStorm's batch print handlerè carino.
Sathyajith Bhat

Download ora. Tutti gli script sono belli, ma preferirei non seguire questa strada. Andando a testare DarkStorm.
chrispt

Penso che l'app DarkStorm andrà bene. L'unica cosa che sarebbe dolce se aggiungessero la funzionalità è la possibilità di pianificare l'esecuzione del batch in un determinato momento in modo da poterlo avviare automaticamente quando non ci sei più per la giornata.
chrispt

3

Questo è un lavoro per la riga di comando.

Con Cygwin , il seguente script (che è possibile digitare su una riga di comando bash) stamperà tutti i file PDF nella directory corrente, uno ogni 5 secondi.

for x in *.pdf; do cygstart -p -- "$x"; sleep 5; done

Se non vuoi installare Cygwin (che è utile per molte altre cose), vedi la risposta di Sathya per un modo cmd (è un po 'meno semplice). Lo strumento di scelta sarebbe Powershell, che sicuramente ha tutti i blocchi necessari (ma non parlo Powershell).


cmd has an equivalent of sleep-> La sostituzione del greggio sarebbe `ping localhost -n 6> NUL
Sathyajith Bhat

Inoltre, startavvia una nuova applicazione - non ha alcuna capacità di stampa.
Sathyajith Bhat

@Sathya: grazie. Non sono sorpreso che cygstartabbia più capacità di avvio, ma ho pensato che ci fosse un modo per innescare un'azione di stampa da cmd (l'azione di stampa richiama l'applicazione registrata nel registro, dicendole di stampare piuttosto che di aprirla per la modifica). Ti capita di sapere se esiste un modo per stampare in cmd ( printnon sembra neanche essere)?
Gilles 'SO- smetti di essere malvagio' l'

@Gilles - un modo è copiare i file pdf sulla stampante, se è configurato come una condivisione (di rete) - copy *.pdf \\printer\name. Per l'elaborazione batch cmd ha un forcomando, ma sono bloccato su come farlo eseguire più comandi
Sathyajith Bhat

@Sathya: Penso a qualcosa di simile for %x in (*.pdf) do ( ; command1 ; command2 ; )alle newline in cui ho scritto ;. Se riesci a farlo funzionare, ti preghiamo di farlo una risposta.
Gilles 'SO- smetti di essere malvagio' l'

2

Se vuoi davvero andare dalla riga di comando, copia incolla questo in un file batch e cambia il percorso e aggiungi il percorso completo a AcroRd32.exe

cd\path\to\pdf\files
for %%f in ("*.pdf") do AcroRd32.exe /t %%f "\\servername\printername" & ping localhost -n 6 >NUL

In questo modo la directory cambierà in quella contenente i file PDF, avvierà Acrobat Reader in modalità silenziosa, li stampa e attenderà 5 secondi. Un'altra alternativa se la stampante è condivisa è

cd\path\to\pdf\files
for %%f in ("*.pdf") do copy %%f "\\servername\printername" & ping localhost -n 6 >NUL

Il che fa lo stesso, ma nella mia esperienza passata non ho ottenuto buoni risultati con questo approccio, ma è perché i file PDF non hanno i caratteri incorporati in essi.


0

Un'ottima applicazione di stampa in batch che utilizzo sempre è SilentPrint. Puoi saperne di più a riguardo su http://www.silentprint.com . Spero che lo trovi utile come me.


1
Se sei associato a quel prodotto, ti preghiamo di rivelare la tua affiliazione in base alle FAQ , altrimenti i tuoi post potrebbero essere rimossi come promozionali
slhck
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.