Page 1 of 1
¿Se puede parametrizar Microsoft Print To PDF?
Posted: Wed Jan 06, 2021 11:15 am
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
Re: ¿Se puede parametrizar Microsoft Print To PDF?
Posted: Wed Jan 06, 2021 11:37 am
by karinha
No conoco. Más puede usar el SUMATRAPDF, mui simples:
https://www.sumatrapdfreader.org/free-pdf-reader.html
Saludos.
Re: ¿Se puede parametrizar Microsoft Print To PDF?
Posted: Wed Jan 06, 2021 12:33 pm
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
Re: ¿Se puede parametrizar Microsoft Print To PDF?
Posted: Wed Jan 06, 2021 12:34 pm
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
Re: ¿Se puede parametrizar Microsoft Print To PDF?
Posted: Wed Jan 06, 2021 12:34 pm
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 )
Re: ¿Se puede parametrizar Microsoft Print To PDF?
Posted: Wed Jan 06, 2021 12:35 pm
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
Re: ¿Se puede parametrizar Microsoft Print To PDF?
Posted: Wed Jan 06, 2021 12:36 pm
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.
Re: ¿Se puede parametrizar Microsoft Print To PDF?
Posted: Wed Jan 06, 2021 12:40 pm
by karinha
Espero que ayude.
https://www.pdfmachine.com/genp/pdfmachine_white.html
Impresora virtual, la mejor del mundo.
Saludos.
Re: ¿Se puede parametrizar Microsoft Print To PDF?
Posted: Wed Jan 06, 2021 2:41 pm
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.
Re: ¿Se puede parametrizar Microsoft Print To PDF?
Posted: Wed Jan 06, 2021 2:51 pm
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.
Re: ¿Se puede parametrizar Microsoft Print To PDF?
Posted: Wed Jan 06, 2021 7:35 pm
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
Re: ¿Se puede parametrizar Microsoft Print To PDF?
Posted: Thu Jan 07, 2021 12:50 am
by karinha
Re: ¿Se puede parametrizar Microsoft Print To PDF?
Posted: Thu Jan 07, 2021 11:45 am
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
Re: ¿Se puede parametrizar Microsoft Print To PDF?
Posted: Thu Jan 07, 2021 1:14 pm
by karinha
Libs, HARUPDF:
https://mega.nz/file/RIlSAB6J#L4qDeL8lY ... zhezinPT2w
Actualize su versión del fivewin, és mejor.
Saludos.