Ho il seguente codice che mostra una finestra di dialogo di stampa nativa nella mia applicazione java.Come rilevare 'Salva come PDF ...' è stato scelto da un AWT PrinterJob su OS X
PrinterJob job = PrinterJob.getPrinterJob();
PrintRequestAttributeSet atts = new HashPrintRequestAttributeSet();
atts.add(DialogTypeSelection.NATIVE);
if (job.printDialog(atts))
{
PrintService newlyUsedService = job.getPrintService();
DocPrintJob docJob = newlyUsedService.createPrintJob();
// print the passed javax.print.SimpleDoc object.
docJob.print(simpleDoc, atts);
}
Questo codice funziona bene quando si seleziona una stampante e il pulsante Stampa viene cliccato, ma non funziona quando l'utente seleziona alcuna opzione dal menu “PDF” in basso a sinistra. Il metodo getPrintService restituisce l'ultima stampante selezionata (Lillith
dallo screenshot) quando viene selezionata una delle opzioni nel menu "PDF".
Qualcuno potrebbe suggerire che cosa dovrebbe essere fatto per rilevare quando “Salva come PDF ...” è stato selezionato nella finestra di dialogo di stampa e rispondere di conseguenza.
cosa fa il tuo programma di fare quando si arriva alla stampante vera e propria, ma si seleziona "Salva come PDF ..."? – millimoose
Ottengo le pagine stampate sulla stampante e nessun file PDF o PostScript salvato. –
@trashgod Dove viene stampato questo esempio? – millimoose