¿Se puede parametrizar Microsoft Print To PDF?

Post Reply
Ramón J.
Posts: 79
Joined: Mon Feb 13, 2006 8:23 pm

¿Se puede parametrizar Microsoft Print To PDF?

Post by Ramón J. »

Hola a todos

Como le decía a C. Navarro, quien se toma mucho interés en todos los temas del foro y es muy de agraceder, el tema de convertir archivos rtf en archivos pdf me lleva de calle. Estoy dándole vueltas al tema y viendo que la impresora "Microsoft Print to PDF" está instalada en todos los ordenadores de la empresa, ¿hay alguna posibilidad de parametrizar esta impresora en el sentido de que convierta en modo silencioso en pdf un archivo rtf e indicándole la carpeta donde tiene que guardarlo?

Por ejemplo:
Local cprinter:= "Microsfort printer to PDF"
Local crtf:= "modelo.rtf"
Local cCarpeta:= "\FWH\samples
cPdf:="modelo.pdf"

La idea que tengo, si se puede hacer, es usar la impresora en modo oculto para que convierta el archivo crtf en cCarpeta y con el nombre cPdf.

Un saludo y gracias
Feliz Reyes
FWH 20.12 BCC7
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: ¿Se puede parametrizar Microsoft Print To PDF?

Post by karinha »

No conoco. Más puede usar el SUMATRAPDF, mui simples:

https://www.sumatrapdfreader.org/free-pdf-reader.html

Saludos.
João Santos - São Paulo - Brasil
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: ¿Se puede parametrizar Microsoft Print To PDF?

Post by karinha »

Code: Select all

#include "FiveWin.ch"

static oWnd

//----------------------------------------------------------------//

function Main()

   local oBar

   DEFINE WINDOW oWnd TITLE "IMPRIME PDF"

   DEFINE BUTTONBAR oBar _3D OF oWnd

   DEFINE BUTTON OF oBar ACTION ImpPdf()

   SET MESSAGE OF oWnd TO "IMPRIME PDF" NOINSET CLOCK DATE KEYBOARD

   ACTIVATE WINDOW oWnd

return nil

//----------------------------------------------------------------//

function ImpPdf()

   LOCAL nRet, nPrn, cArq, PastaSistema

   cArq := "C:\FWH1701\SAMPLES\BOL-20.PDF"

   PastaSistema := "C:\INST_NFE"

   ? cArq


   // WinExec( cDirExe+"sumatra\sumatrapdf.exe -reuse-instance -lang br "+gravaPDF)   //-restrict -fullscreen

   vcomando:='c:\sumatra\sumatrapdf -print-to-default '+cArq

   WinExec(vcomando)

return nil

   nRet := PrinterSetUp()

   // nPrn := PrnGetName()

   IF (nRet#0)

      nPrn := PastaSistema+"\sumatrapdf.exe -print-to "+PrinterPortToName(PrnGetPort())+" -reuse-instance -lang br "

      WinExec( nPrn + cArq, 0 ) // sem preview

      //WinExec(PastaSistema+"\sumatrapdf.exe -reuse-instance -lang br "+cArq) // com preview
      //WinExec(PastaSistema+"\sumatrapdf.exe -print-to-default -reuse-instance -lang pt "+cArq) // sem preview

  ENDIF

/*
   IF(nRet#0)

      //WinExec(PastaSistema+"\sumatrapdf.exe -print-to "+nPrn+" -reuse-instance -lang br "+cArq) // sem preview

      //WinExec( "c:\sumatra\sumatrapdf.exe -print-to -reuse-instance -lang pt "+cFilePDF)   //-restrict -fullscreen
      WinExec( "c:\sumatra\sumatrapdf.exe -print-to "+" -lang br "+cFilePDF )



   ENDIF
*/

return nil
 
João Santos - São Paulo - Brasil
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: ¿Se puede parametrizar Microsoft Print To PDF?

Post by karinha »

Code: Select all

// Impresion en BMP, JPG o PDF

// http://forums.fivetechsupport.com/viewtopic.php?f=6&t=38472

FUNCTION IMPDPF5()

   QuitProgamLoad( "AcroRd32.EXE" )  // Verifica si esta abierto el Acro...

   cFile := ".\Informes\Cierre Productor CSG N° "+AllTrim(PA18->CCSG)+".PDF"

   SET 3DLOOK OFF

   // cPrintPDF es una variable que contiene el nombre de una
   // impresora virtual PDF (doPDF v7)
   PRINTER oPrn TO cPrintPDF FILE cFile  PREVIEW      

   IF EMPTY( oPrn:hDC )
      RETURN NIL
   ENDIF

RETURN NIL

FUNCTION QuitProgamLoad( cProceso )

   LOCAL oBj, oServ, aProcess, objProcess

   TRY
      oBj := CreateObject( "wbemScripting.SwbemLocator" )
   CATCH
      Return nil
   END

   oServ     := oBj:ConnectServer()

   aProcess  := oServ:ExecQuery( "Select * from Win32_Process" )

   For Each objProcess in aProcess

      If UPPER(objProcess:Name) = UPPER(cProceso)
         objProcess:Terminate()
      ENDIF

   next

Return nil
 
João Santos - São Paulo - Brasil
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: ¿Se puede parametrizar Microsoft Print To PDF?

Post by karinha »

Code: Select all

#include "FiveWin.ch"
#include "harupdf.ch"

FUNCTION Main()

   LOCAL oPdf, Page, oImage, oFont, Font1, Font2, Font3

   oPdf := HPDF_New()

   HPDF_SetCompressionMode( oPdf, HPDF_COMP_ALL )

   //*HPDF_SetPassword( oPdf, 'jaime', 'alberto' )

   page := HPDF_AddPage( oPdf )

   HPDF_Page_SetSize( page, 3, 0 ) //** 3 = A4 

   //**oImage:=HPDF_LoadJpegImageFromFile (oPdf,'png\Qr_demo.jpg')
   //**HPDF_Page_DrawImage(page, oImage, 100, 700, 100, 100)

   //HPDF_Page_SetRGBFill(page, 0.80, 0.80, 0.80) //** Para rellenar
   HPDF_Page_SetLineWidth( page, 0.5 ) // ** Grosor
   HPDF_Page_SetRGBStroke( page, 0.2, 0.6, 1.0 ) // ** Color
   HPDF_Page_Rectangle( page, 20, 760, 560, 70 )
   HPDF_Page_Stroke ( page ) //** Muestra el cuadro

   HPDF_Page_BeginText ( page )

   Font1 := HPDF_LoadTTFontFromFile( oPdf, 'C:\Windows\Fonts\Verdana.ttf', HPDF_TRUE )
   Font2 := HPDF_LoadTTFontFromFile( oPdf, 'C:\Windows\Fonts\Lucon.ttf', HPDF_TRUE )

   oFont := HPDF_GetFont( oPdf, Font1, "WinAnsiEncoding" )

   HPDF_Page_SetFontAndSize( page, oFont, 12 )
   HPDF_Page_TextOut( page, 100, 640, "Jaime Coronado 1" )

   oFont := HPDF_GetFont( oPdf, Font2, "WinAnsiEncoding" )

   HPDF_Page_SetFontAndSize( page, oFont, 9 )
   HPDF_Page_TextOut( page, 100, 700, "Jaime Coronado 2" )
   HPDF_Page_TextOut( page, 100, 670, "Programador" )
   HPDF_Page_EndText( page )

   HPDF_SaveToFile( oPdf, 'Prueba.pdf' )

   HPDF_Free( oPdf )

RETURN( nil )
 
João Santos - São Paulo - Brasil
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: ¿Se puede parametrizar Microsoft Print To PDF?

Post by karinha »

Code: Select all

#include "FiveWin.ch"

static oWnd

FUNCTION Main()

   local oBar

   DEFINE WINDOW oWnd TITLE "Imprimir PDF"

   DEFINE BUTTONBAR oBar _3D OF oWnd

   DEFINE BUTTON OF oBar FILENAME "..\bitmaps\16x16\printer.bmp" FLAT ;
      ACTION( IMPRIMIR_PDF() ) TOOLTIP "Imprimir PDF" GROUP

   DEFINE BUTTON OF oBar FILENAME "..\bitmaps\16x16\Exit.bmp" FLAT    ;
      ACTION oWnd:End() TOOLTIP "Exit this app" GROUP

   SET MESSAGE OF oWnd TO "Imprimir PDF" NOINSET CLOCK DATE KEYBOARD

   ACTIVATE WINDOW oWnd

RETURN NIL

FUNCTION IMPRIMIR_PDF()

   // ASI, LLAMA EL ADOBE... 3
   ShellExecute(, "Print", "PROP15.PDF",,, 3 )  // Navarro

   // Con el SUMATRAPDF, no llama el adobe, es direto en la impresora.
   // Invisible.

RETURN NIL

// FIN
 
João Santos - São Paulo - Brasil
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: ¿Se puede parametrizar Microsoft Print To PDF?

Post by karinha »

Code: Select all

#include "FiveWin.ch"

static oWnd

//----------------------------------------------------------------//

function Main()

   local oBar

   DEFINE WINDOW oWnd TITLE "IMPRIME PDF CON SUMATRAPDF.EXE"

   DEFINE BUTTONBAR oBar _3D OF oWnd

   DEFINE BUTTON OF oBar ACTION ImpPdf()

   SET MESSAGE OF oWnd TO "IMPRIME PDF CON SUMATRAPDF.EXE" NOINSET CLOCK DATE ;
       KEYBOARD

   ACTIVATE WINDOW oWnd

return nil

//----------------------------------------------------------------//

function ImpPdf()

   LOCAL cArchivo, vcomando

   // Donde esta el .PDF
   cArchivo := "C:\FWH1701\SAMPLES\BOL-20.PDF" 

   // Llama la impresora default. En mi caso: pdfmachine.exe Impresora Virtual
   vcomando := 'c:\sumatra\sumatrapdf -print-to-default ' + cArchivo

   WinExec(vcomando)

return nil

// fin
 
Saludos.
João Santos - São Paulo - Brasil
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: ¿Se puede parametrizar Microsoft Print To PDF?

Post by karinha »

Espero que ayude.

https://www.pdfmachine.com/genp/pdfmachine_white.html

Impresora virtual, la mejor del mundo.

Saludos.
João Santos - São Paulo - Brasil
Ramón J.
Posts: 79
Joined: Mon Feb 13, 2006 8:23 pm

Re: ¿Se puede parametrizar Microsoft Print To PDF?

Post by Ramón J. »

Muchas gracias, João, por tus respuestas, pero en tus ejemplos usas Sumatra para ver e imprimir archichos pdf, pero no veo en qué fase se convierte un archivo rtf en un archivo pdf. Además, tengo entendido que Sumatra lee e imprime archivos pdf, pero no los crea.
FWH 20.12 BCC7
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: ¿Se puede parametrizar Microsoft Print To PDF?

Post by karinha »

Use el FiveWin(Printer.prg) para crear tús archivos PDFS, ó HARUPDF.

Mira que legal:

https://documento.online-convert.com/es ... /rtf-a-pdf

Saludos.
João Santos - São Paulo - Brasil
Ramón J.
Posts: 79
Joined: Mon Feb 13, 2006 8:23 pm

Re: ¿Se puede parametrizar Microsoft Print To PDF?

Post by Ramón J. »

João, no encuentro printer.prg. ¿Está en samples? Si es así no lo tengo, como tampoco tengo HARUPDF

Muchas gracias
FWH 20.12 BCC7
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: ¿Se puede parametrizar Microsoft Print To PDF?

Post by karinha »

João Santos - São Paulo - Brasil
Ramón J.
Posts: 79
Joined: Mon Feb 13, 2006 8:23 pm

Re: ¿Se puede parametrizar Microsoft Print To PDF?

Post by Ramón J. »

João, en mi versión no aparecen samples\pdfharu1.prg, samples\pdfharu2.prg, samples/damiano.prg y tampoco Prv2pdf.prg.

Mi versión es FWH1803. Imagino que esos archivos estarán en versiones posteriores.

Un saludo
FWH 20.12 BCC7
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: ¿Se puede parametrizar Microsoft Print To PDF?

Post by karinha »

Libs, HARUPDF:

https://mega.nz/file/RIlSAB6J#L4qDeL8lY ... zhezinPT2w

Actualize su versión del fivewin, és mejor.

Saludos.
João Santos - São Paulo - Brasil
Post Reply