No logro definir tamaño de papel

Re: No logro definir tamaño de papel resuelto

Postby jpcavagnaro » Thu Aug 15, 2024 10:32 am

Hola gracias por responder, pude solucionarlo con :

oPrn:setpage(1)
t := oPrn:GetPhySize()
? t[1], t[2]


oPrn:setpage(5)
t := oPrn:GetPhySize()
? t[1], t[2]

oPrn:setpage(5)
t := oPrn:GetPhySize()
? t[1], t[2]


Con esto si devuelve el tamaño de hoja que se estableció, de esta forma resolví mi problema

Muchas Gracias
Jorge
Saludos.
jpcavagnaro
 
Posts: 155
Joined: Tue Oct 11, 2016 1:02 pm
Location: Luján, bs. as.

Re: No logro definir tamaño de papel

Postby acuellar » Thu Aug 15, 2024 1:50 pm

Estimado jpcavagnaro

Si va a usar Centimetros

Intente con:
Code: Select all  Expand view

 nAncho:=oPrn:PageWidth("CM")
 nAlto:=oPrn:PageHeight("CM")
  @1.0,5.9 PRINT TO oPrn TEXT "PRUEBA" SIZE nAncho,nAlto CM
 

Tambien puede usar CMSay, CMLine...
Saludos,

Adhemar C.
User avatar
acuellar
 
Posts: 1643
Joined: Tue Oct 28, 2008 6:26 pm
Location: Santa Cruz-Bolivia

Re: No logro definir tamaño de papel

Postby karinha » Thu Aug 15, 2024 4:36 pm

Adhemar, muchas gracias estimado.

Code: Select all  Expand view

// C:\FWH\SAMPLES\PRINTADH.PRG - By Adhemar.

#include "FiveWin.ch"

FUNCTION Main()

   LOCAL oPrn, oFont, oBold, n, nAncho, nAlto, nLinea, nColumn
   // 60 caracteres en el maximo
   LOCAL cTxt1 := "Lo que quiero es imprimir un informe en hoja A4 y que se"
   LOCAL cTxt2 := "respete el tamaño sin que tenga en cuenta la impresora  "
   LOCAL cTxt3 := "predeterminada. El tema es que se usa en varias pc y    "
   LOCAL cTxt4 := "tienen distintas impresoras y tamaños de papel          "
   LOCAL cTxt5 := "predeterminados y sale en algunas bien y en otras mal,  "
   LOCAL cTxt6 := "porque no se respeta el A4 que necesito.                "
   LOCAL cTxt7 := "Cómo imprimir en centímetros en cualquier impresora     "
   LOCAL cTxt8 := "                                     jpcavagnaro - Jorge"

   nLinea  := 2.0
   nColumn := 1.5

   PRINT oPrn PREVIEW

      DEFINE FONT oFont NAME "TAHOMA" SIZE 0, - 10 OF oPrn
      DEFINE FONT oBold NAME "TAHOMA" SIZE 0, - 18 OF oPrn BOLD

      oPrn:SetPage( 9 )   //-> A4 //9
      oPrn:SetPortrait()  //-> Vertical(Retrato)

      nAncho := oPrn:PageWidth("CM")
      nAlto  := oPrn:PageHeight("CM")

      PAGE

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt1 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt2 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt3 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt4 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt5 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt6 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt7 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 2.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt1 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt2 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt3 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt4 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt5 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt6 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt7 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 2.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt1 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt2 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt3 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt4 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt5 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt6 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea := nLinea + 1.00

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt7 SIZE nAncho, nAlto CM ;
            FONT oBold

         nLinea  := nLinea  + 3.00
         nColumn := nColumn + 4.50

         @ nLinea, nColumn PRINT TO oPrn TEXT cTxt8 SIZE nAncho, nAlto CM ;
            FONT oBold

         IF nLinea >= 27 // nueva pagina

            nLinea  := 2.0
            nColumn := 1.5

            ENDPAGE

            PAGE

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt1 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt2 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt3 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt4 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt5 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt6 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt7 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 2.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt1 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt2 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt3 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt4 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt5 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt6 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt7 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 2.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt1 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt2 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt3 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt4 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt5 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt6 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea := nLinea + 1.00

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt7 SIZE nAncho, nAlto CM ;
               FONT oBold

            nLinea  := nLinea  + 3.00
            nColumn := nColumn + 4.50

            @ nLinea, nColumn PRINT TO oPrn TEXT cTxt8 SIZE nAncho, nAlto CM ;
               FONT oBold

         ENDIF

      ENDPAGE

   ENDPRINT

   RELEASE FONT oFont, oBold

RETURN NIL

// FIN / END - kapiabafwh@gmail.com
 


Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7824
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: No logro definir tamaño de papel

Postby acuellar » Thu Aug 15, 2024 7:41 pm

De nada estimado Joao

Para evitar ésto nLinea := nLinea + 1.00
Usa: LASTROW nLinea
Code: Select all  Expand view

  @ nLinea, nColumn PRINT TO oPrn TEXT cTxt1 SIZE nAncho, nAlto CM  FONT oBold LASTROW nLinea
      //   nLinea := nLinea + 1.00 //ya no es necesario
 
Saludos,

Adhemar C.
User avatar
acuellar
 
Posts: 1643
Joined: Tue Oct 28, 2008 6:26 pm
Location: Santa Cruz-Bolivia

Re: No logro definir tamaño de papel

Postby karinha » Fri Aug 16, 2024 11:53 am

acuellar wrote:De nada estimado Joao

Para evitar ésto nLinea := nLinea + 1.00
Usa: LASTROW nLinea
Code: Select all  Expand view

  @ nLinea, nColumn PRINT TO oPrn TEXT cTxt1 SIZE nAncho, nAlto CM  FONT oBold LASTROW nLinea
      //   nLinea := nLinea + 1.00 //ya no es necesario
 


Gracias estimado. Simplesmente PERFECTO!! Thank you very much!

Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7824
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Previous

Return to FiveWin for Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 72 guests