Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Impresión (https://www.clubdelphi.com/foros/forumdisplay.php?f=4)
-   -   Imprimir PDF en orden inverso (https://www.clubdelphi.com/foros/showthread.php?t=94500)

marco3k 06-03-2020 17:10:39

Imprimir PDF en orden inverso
 
Hola foreros, buen día.
Tengo una duda respecto a como imprimir documentos pdf en orden inverso en delphi 7, es decir por ejemplo un pdf de 9 páginas seria desde la página 9 hacia la 1.

He buscado en la web y no he encontrado como imprimir en orden inverso, sólo encontre esta rutina y que funciona bien para imprimir documentos PDF en orden correlativo (de pág. 1 a pág. 9) y tambien imprime bien otros documentos como word, excel, powerpoint, txt.
Código Delphi [-]
uses printers, shellapi;
...
...
procedure TFrmImpresion.FormCreate(Sender: TObject);
begin
  cboPrinter.Items.Assign(printer.Printers);
  cboPrinter.ItemIndex := printer.PrinterIndex;
end;

procedure TFrmImpresion.PrintDocument(const documentToPrint : string);
var
  printCommand : string;
  printerInfo : string;
  Device, Driver, Port: array[0..255] of Char;
  hDeviceMode: THandle;
begin
  if Printer.PrinterIndex = cboPrinter.ItemIndex then
  begin
    printCommand := 'print';
    printerInfo := '';
  end
  else
  begin
    printCommand := 'printto';
    Printer.PrinterIndex := cboPrinter.ItemIndex;
    Printer.GetPrinter(Device, Driver, Port, hDeviceMode) ;
    printerInfo := Format('"%s" "%s" "%s"', [Device, Driver, Port]) ;
  end;
  ShellExecute(Application.Handle, PChar(printCommand), PChar(documentToPrint), PChar(printerInfo), nil, SW_HIDE) ;
end;
Lo que busco es que se pueda imprimir en orden inverso, es decir de la página 9 hacia la página 1.

Alguien me puede ayudar por favor, de antemano gracias por leer el post.

newtron 09-03-2020 19:28:52

Hola.


Yo en particular no he intentado hacer nunca lo que dices pero creo que eso es una propiedad de la impresora (que no todas traen) que deberás de tocar antes de imprimir, igual que se hace por ejemplo para seleccionar una bandeja determinada o cambiar el tamaño del papel.


En este link tienes ejemplos de cómo manejar la configuración de la impresora, tendrías que ver si hay forma de tocar el orden de impresión.


Saludos


La franja horaria es GMT +2. Ahora son las 20:19:30.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi