In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Ficheros EMF con Printer
Ficheros EMF con Printer
Hola,
Existe alguna forma de importar un fichero EMF (creado con otra aplicación)
y añadirlo al documento actual de impresión. Algo así:
oPrinter:StartDoc()
oPrinter:StartPage()
oPrinter:ImportEMF("mifichero.emf")
oPrinter:....
oPrinter:...
oPrinter:EndPage()
oPrinter:EndDoc()
Saludos y gracias,
José Luis Capel
Existe alguna forma de importar un fichero EMF (creado con otra aplicación)
y añadirlo al documento actual de impresión. Algo así:
oPrinter:StartDoc()
oPrinter:StartPage()
oPrinter:ImportEMF("mifichero.emf")
oPrinter:....
oPrinter:...
oPrinter:EndPage()
oPrinter:EndDoc()
Saludos y gracias,
José Luis Capel
Ficheros EMF con Printer
José Luis,
> Existe alguna forma de importar un fichero EMF (creado con otra aplicación)
> y añadirlo al documento actual de impresión. Algo así:
Quizás tengas que modificar el ejemplo, pero prueba así:
oPrinter:oCanvas:DrawPicture( aRect, TPicture():Create( "mifichero.emf" ) )
Saludos,
José Lalín
> Existe alguna forma de importar un fichero EMF (creado con otra aplicación)
> y añadirlo al documento actual de impresión. Algo así:
Quizás tengas que modificar el ejemplo, pero prueba así:
oPrinter:oCanvas:DrawPicture( aRect, TPicture():Create( "mifichero.emf" ) )
Saludos,
José Lalín
Ficheros EMF con Printer
José,
Lo voy a probar. Muchas gracias!!
Saludos,
José Luis Capel
"José Lalín" <notelo@digo.com> escribió en el mensaje
news:461fe7ee$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>
> José Luis,
>
>> Existe alguna forma de importar un fichero EMF (creado con otra
>> aplicación) y añadirlo al documento actual de impresión. Algo así:
>
> Quizás tengas que modificar el ejemplo, pero prueba así:
>
> oPrinter:oCanvas:DrawPicture( aRect, TPicture():Create(
> "mifichero.emf" ) )
>
> Saludos,
> José Lalín
Lo voy a probar. Muchas gracias!!
Saludos,
José Luis Capel
"José Lalín" <notelo@digo.com> escribió en el mensaje
news:461fe7ee$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>
> José Luis,
>
>> Existe alguna forma de importar un fichero EMF (creado con otra
>> aplicación) y añadirlo al documento actual de impresión. Algo así:
>
> Quizás tengas que modificar el ejemplo, pero prueba así:
>
> oPrinter:oCanvas:DrawPicture( aRect, TPicture():Create(
> "mifichero.emf" ) )
>
> Saludos,
> José Lalín
Ficheros EMF con Printer
José,
>
> oPrinter:oCanvas:DrawPicture( aRect, TPicture():Create(
> "mifichero.emf" ) )
>
Disculpa esta pregunta... pero 'aRect' ¿como lo obtengo?
Saludos y gracias,
José Luis Capel
>
> oPrinter:oCanvas:DrawPicture( aRect, TPicture():Create(
> "mifichero.emf" ) )
>
Disculpa esta pregunta... pero 'aRect' ¿como lo obtengo?
Saludos y gracias,
José Luis Capel
Ficheros EMF con Printer
José Luis,
> Disculpa esta pregunta... pero 'aRect' ¿como lo obtengo?
aRect son las coordenadas donde quieres que se dibuje la imagen, así:
LOCAL oPicture := TPicture():Create( "mifichero.emf" )
oPrinter:oCanvas:DrawPicture( { 0, 0, oPicture:nWidth, oPicture:nHeight },
oPicture )
Las coordenas 0, 0 son el punto de origen y tendrás que ajustarlas a la
posición que necesites.
Saludos,
José Lalín
> Disculpa esta pregunta... pero 'aRect' ¿como lo obtengo?
aRect son las coordenadas donde quieres que se dibuje la imagen, así:
LOCAL oPicture := TPicture():Create( "mifichero.emf" )
oPrinter:oCanvas:DrawPicture( { 0, 0, oPicture:nWidth, oPicture:nHeight },
oPicture )
Las coordenas 0, 0 son el punto de origen y tendrás que ajustarlas a la
posición que necesites.
Saludos,
José Lalín
Ficheros EMF con Printer
José,
No se si esto es lo más correcto.
He probado lo siguiente:
WITH OBJECT oReport
:onStartPage := {| o | o:oDevice:oCanvas:DrawPicture(
{0,0,o:oDevice:PaperSize()[1],o:oDevice:PaperSize()[2] } ,
TPicture():Create( "pruebas.emf" ) ) }
END
Y me aparece el listado bien impreso pero el EMF aparece pequeño. Entonces
pensé que debemos pasar la información en mmHIMETRICS. Con lo que hice
esto:
WITH OBJECT oReport
:onStartPage := {| o |o:oDevice:oCanvas:nMapMode := mmHIMETRICS,
o:oDevice:oCanvas:DrawPicture(
{0,0,o:oDevice:PaperSize()[1],o:oDevice:PaperSize()[2] } ,
TPicture():Create( "pruebas.emf" ) ) }
END
Con esto consigo que el EMF aparezca como tiene que ser... pero como
contra-partida el listado aparece como más 'amplio', vamos, como si fuera a
doble espacio.
Yo creo que después de hacer la llamada a DrawPicture debería volver a dejar
el nMapMode como estaba... Entonces haciendo esto:
WITH OBJECT oReport
:onStartPage := {| o | a := o:oDevice:oCanvas:nMapMode,
o:oDevice:oCanvas:nMapMode := mmHIMETRICS, o:oDevice:oCanvas:DrawPicture(
{0,0,o:oDevice:PaperSize()[1],o:oDevice:PaperSize()[2] } ,
TPicture():Create( "pruebas.emf" ) ), o:oDevice:oCanvas:nMapMode := a }
END
Va estupendamente. Esto creo que puede ayudar a 'embellecer' la clase
tReport....
Muchas gracias José (Lalín) !!
Saludos,
José Luis Capel
"José Lalín" <notelo@digo.com> escribió en el mensaje
news:[email=4624bf9b@ozsrv2.ozlan.local...]4624bf9b@ozsrv2.ozlan.local...[/email]
>
> José Luis,
>
>> Disculpa esta pregunta... pero 'aRect' ¿como lo obtengo?
>
> aRect son las coordenadas donde quieres que se dibuje la imagen, así:
>
> LOCAL oPicture := TPicture():Create( "mifichero.emf" )
>
> oPrinter:oCanvas:DrawPicture( { 0, 0, oPicture:nWidth, oPicture:nHeight },
> oPicture )
>
> Las coordenas 0, 0 son el punto de origen y tendrás que ajustarlas a la
> posición que necesites.
>
> Saludos,
> José Lalín
No se si esto es lo más correcto.
He probado lo siguiente:
WITH OBJECT oReport
:onStartPage := {| o | o:oDevice:oCanvas:DrawPicture(
{0,0,o:oDevice:PaperSize()[1],o:oDevice:PaperSize()[2] } ,
TPicture():Create( "pruebas.emf" ) ) }
END
Y me aparece el listado bien impreso pero el EMF aparece pequeño. Entonces
pensé que debemos pasar la información en mmHIMETRICS. Con lo que hice
esto:
WITH OBJECT oReport
:onStartPage := {| o |o:oDevice:oCanvas:nMapMode := mmHIMETRICS,
o:oDevice:oCanvas:DrawPicture(
{0,0,o:oDevice:PaperSize()[1],o:oDevice:PaperSize()[2] } ,
TPicture():Create( "pruebas.emf" ) ) }
END
Con esto consigo que el EMF aparezca como tiene que ser... pero como
contra-partida el listado aparece como más 'amplio', vamos, como si fuera a
doble espacio.
Yo creo que después de hacer la llamada a DrawPicture debería volver a dejar
el nMapMode como estaba... Entonces haciendo esto:
WITH OBJECT oReport
:onStartPage := {| o | a := o:oDevice:oCanvas:nMapMode,
o:oDevice:oCanvas:nMapMode := mmHIMETRICS, o:oDevice:oCanvas:DrawPicture(
{0,0,o:oDevice:PaperSize()[1],o:oDevice:PaperSize()[2] } ,
TPicture():Create( "pruebas.emf" ) ), o:oDevice:oCanvas:nMapMode := a }
END
Va estupendamente. Esto creo que puede ayudar a 'embellecer' la clase
tReport....
Muchas gracias José (Lalín) !!
Saludos,
José Luis Capel
"José Lalín" <notelo@digo.com> escribió en el mensaje
news:[email=4624bf9b@ozsrv2.ozlan.local...]4624bf9b@ozsrv2.ozlan.local...[/email]
>
> José Luis,
>
>> Disculpa esta pregunta... pero 'aRect' ¿como lo obtengo?
>
> aRect son las coordenadas donde quieres que se dibuje la imagen, así:
>
> LOCAL oPicture := TPicture():Create( "mifichero.emf" )
>
> oPrinter:oCanvas:DrawPicture( { 0, 0, oPicture:nWidth, oPicture:nHeight },
> oPicture )
>
> Las coordenas 0, 0 son el punto de origen y tendrás que ajustarlas a la
> posición que necesites.
>
> Saludos,
> José Lalín
Ficheros EMF con Printer
José Luis,
> Con esto consigo que el EMF aparezca como tiene que ser... pero como
> contra-partida el listado aparece como más 'amplio', vamos, como si fuera a
> doble espacio.
Acabo de revisar el código de TPicture y TCanvas y ninguna de las dos
cambia nMapMode, así que probablemente el problema esté en cómo se ha
generado el EMF. Si tienes alguna utilidad o quizás mirando las propiedades
del archivo EMF desde el Explorador, podríamos tener un poco más de
información.
> Va estupendamente. Esto creo que puede ayudar a 'embellecer' la clase
> tReport....
¡ M'alegro !
> Muchas gracias José (Lalín) !!
A mandar
)
Saludos,
José Lalín
> Con esto consigo que el EMF aparezca como tiene que ser... pero como
> contra-partida el listado aparece como más 'amplio', vamos, como si fuera a
> doble espacio.
Acabo de revisar el código de TPicture y TCanvas y ninguna de las dos
cambia nMapMode, así que probablemente el problema esté en cómo se ha
generado el EMF. Si tienes alguna utilidad o quizás mirando las propiedades
del archivo EMF desde el Explorador, podríamos tener un poco más de
información.
> Va estupendamente. Esto creo que puede ayudar a 'embellecer' la clase
> tReport....
¡ M'alegro !

> Muchas gracias José (Lalín) !!
A mandar

Saludos,
José Lalín
Ficheros EMF con Printer
José,
>
> Acabo de revisar el código de TPicture y TCanvas y ninguna de las dos
> cambia nMapMode, así que probablemente el problema esté en cómo se ha
> generado el EMF. Si tienes alguna utilidad o quizás mirando las
> propiedades del archivo EMF desde el Explorador, podríamos tener un poco
> más de información.
>
Fallo mío!!! Al cambiar el mapmode para imprimer el emf y no dejarlo como
estaba.
Por cierto... ¿lo mismo es válido para los WMF?
Saludos,
José Luis Capel
>
> Acabo de revisar el código de TPicture y TCanvas y ninguna de las dos
> cambia nMapMode, así que probablemente el problema esté en cómo se ha
> generado el EMF. Si tienes alguna utilidad o quizás mirando las
> propiedades del archivo EMF desde el Explorador, podríamos tener un poco
> más de información.
>
Fallo mío!!! Al cambiar el mapmode para imprimer el emf y no dejarlo como
estaba.
Por cierto... ¿lo mismo es válido para los WMF?
Saludos,
José Luis Capel
Ficheros EMF con Printer
José Luis,
> Fallo mío!!! Al cambiar el mapmode para imprimer el emf y no dejarlo como
> estaba.
Gracias por aclararlo
> Por cierto... ¿lo mismo es válido para los WMF?
Sí.
Saludos,
José Lalín
> Fallo mío!!! Al cambiar el mapmode para imprimer el emf y no dejarlo como
> estaba.
Gracias por aclararlo

> Por cierto... ¿lo mismo es válido para los WMF?
Sí.
Saludos,
José Lalín