Técnicas de impresión avanzadaAdobe AIR 2 y posterior Desde Adobe AIR 2, la clase PrintJob cuenta con propiedades y métodos adicionales, y se admiten tres clases más: PrintUIOptions, PaperSize y PrintMethod. Estos cambios permiten flujos adicionales de trabajo de impresoras y dan a los creadores más control sobre el proceso de impresión. Los cambios incluyen:
Cambios del flujo de trabajo de impresiónEl nuevo flujo de trabajo de impresión está formado por estos pasos:
Cuadro de diálogo de configuración de páginaEl método showPageSetupDialog() muestra el diálogo Configurar página del sistema operativo si el entorno actual así lo admite. Compruebe siempre la propiedad supportsPageSetupDialog antes de llamar a este método. Aquí tiene un sencillo ejemplo: import flash.printing.PrintJob;
var myPrintJob:PrintJob = new PrintJob();
//check for static property supportsPageSetupDialog of PrintJob class
if (PrintJob.supportsPageSetupDialog) {
myPrintJob.showPageSetupDialog();
}
Opcionalmente, se puede llamar a este método con una propiedad de la clase PrintUIOptions para controlar qué opciones aparecen en el diálogo Configuración de página. Es posible establecer los números de página máx. y mín. El siguiente ejemplo limita la impresión a las tres primeras páginas: import flash.printing.PrintJob;
var myPrintJob:PrintJob = new PrintJob();
if (PrintJob.supportsPageSetupDialog) {
var uiOpt:PrintUIOptions = new PrintUIOptions();
uiOpt.minPage = 1;
uiOpt.maxPage = 3;
myPrintJob.showPageSetupDialog(uiOpt);
}
Modificación de la configuración de impresiónLos parámetros de una instancia de PrintJob se pueden cambiar el cualquier momento tras su construcción. Esto incluye el cambio de ajustes entre llamadas addPage() y una vez enviado o finalizado el trabajo de impresión. Algunos ajustes, como la propiedad printer, se aplican a todo el trabajo de impresión, no a páginas por separado. La configuración deben establecerse antes de llamar a start() o a start2(). Se puede llamar al método selectPaperSize() para establecer el tamaño de papel predeterminado en los diálogo Configurar página e Imprimir. También se puede llamar durante un trabajo de impresión para establecer el tamaño del papel en un rango de páginas. Se le llama utilizando constantes definidas en la clase PaperSize, como en este ejemplo, que selecciona un tamaño de sobre 10: import flash.printing.PrintJob;
import flash.printing.PaperSize;
var myPrintJob:PrintJob = new PrintJob();
myPrintJob.selectPaperSize(PaperSize.ENV_10);
Utilice la propiedad printer para obtener o definir el nombre de la impresora del trabajo de impresión actual. De forma predeterminada, se establece como el nombre de la impresora predeterminada. La propiedad printer es null si no hay ninguna impresora disponible o si el sistema no admite impresión. Para cambiar la impresora, primero obtenga la lista de impresoras disponibles mediante la propiedad printers. Dicha propiedad es un vector cuyos elementos de cadena son nombres de impresoras disponibles. Defina la propiedad printer como uno de los valores de cadena que hacen que la impresora deseada sea la activa. La propiedad printer de un trabajo de impresión activo no se puede cambiar. Intente cambiarlo tras una llamada correcta a start() o start2(), y antes de que se envíe el trabajo o de que finalice. Aquí tiene un ejemplo para establecer esta propiedad: import flash.printing.PrintJob;
var myPrintJob:PrintJob = new PrintJob();
myPrintJob.printer = "HP_LaserJet_1";
myPrintJob.start();
La propiedad copies obtiene el valor del número de copias establecido en el diálogo Imprimir del sistema operativo. Las propiedades firstPage y lastPage obtienen el rango de páginas. La propiedad orientation obtiene el parámetro de orientación del papel. Estas propiedades se pueden establecer para que anulen los valores del diálogo Imprimir. El siguiente ejemplo establece estas propiedades: import flash.printing.PrintJob;
import flash.printing.PrintJobOrientation;
var myPrintJob:PrintJob = new PrintJob();
myPrintJob.copies = 3;
myPrintJob.firstPage = 1;
myPrintJob.lastPage = 3;
myPrintJob.orientation = PrintJobOrientation.LANDSCAPE;
Los siguientes ajustes de sólo lectura asociados a PrintJob proporcionan información útil sobre la configuración de la impresora actual:
Consulte Ejemplo de impresión: Configuración de página y opciones de impresión. |
|