color en fuentes de haruPDF (SOLUCIONADO)

Post Reply
miarcod
Posts: 172
Joined: Tue Oct 11, 2005 2:17 pm

color en fuentes de haruPDF (SOLUCIONADO)

Post by miarcod »

Alguien usa HARUPdf
Estoy intentando utilizar esta clase pero al indicar una fuente de un color determinado con algunos colores me _.
Pongo un ejemplo

Code: Select all

#define HPDF_COMP_ALL                       0x0F
// HPDF_TextAlignment
#define HPDF_TALIGN_LEFT                    0
#define HPDF_TALIGN_RIGHT                   1
#define HPDF_TALIGN_CENTER                  2
#define HPDF_TALIGN_JUSTIFY                 3

#DEFINE AZUL    CLR_BLUE    //16711680
#DEFINE ROJO    CLR_RED     //255
#DEFINE VERDE   CLR_GREEN   //65280

STATIC FUNCTION TestHaru()
Local oPrint, oFont
oPrint := THaruPdf():New(".\pdf\testharu.pdf", NIL, NIL, NIL, .T., NIL)
oPrint:SetCompression( HPDF_COMP_ALL )
oFont := oPrint:DefineFont( 'Arial', 10 )

oPrint:StartPage()
WITH OBJECT oPrint
    //METHOD CmRect( nTop, nLeft, nBottom, nRight, oPen, nColor )
    :CmSay( 04.02, 10.2, "AZUL",  oFont, 5.0,AZUL     ,, HPDF_TALIGN_LEFT )
    :CmSay( 04.02, 12.2, "HBLUE", oFont, 5.0,CLR_HBLUE,, HPDF_TALIGN_LEFT )

    :CmSay( 04.52, 10.2, "VERDE",  oFont, 5.0,VERDE   ,, HPDF_TALIGN_LEFT )
    :CmSay( 05.02, 10.2, "ROJO",   oFont, 5.0,ROJO    ,, HPDF_TALIGN_LEFT )
    :CmSay( 05.52, 10.2, "GRAY",   oFont, 5.0,CLR_GRAY,, HPDF_TALIGN_LEFT )
    :CmSay( 05.52, 10.2, "GRAY",   oFont, 5.0,CLR_GRAY,, HPDF_TALIGN_LEFT )
    :CmSay( 06.02, 10.2, "YELLOW", oFont, 5.0,CLR_YELLOW,, HPDF_TALIGN_LEFT )


    :CmRect( 08.0, 10.0, 09, 16, 1, CLR_HBLUE)
     :CmSay( 08.2, 10.2, "HBLUE 8,10, 09,16", oFont, 5.0,CLR_HBLUE,, HPDF_TALIGN_LEFT )

    :CmRect( 10.0, 10.0, 11, 16, 2, CLR_HRED)
     :CmSay( 10.2, 10.2, "HRED 10,10, 11,16", oFont, 5.0,CLR_RED, HPDF_TALIGN_LEFT )

    //RoundBox( nTop, nLeft, nBottom, nRight, nWidth, nHeight, oPen, nColor, nBackColor )
     :CMRoundBox(   14,    10,      15,     12,     0.1,     0.1,    3,  CLR_HGREEN,        CLR_YELLOW)
END

oPrint:EndPage()
oprint:eND()
RETURN NIL
 
Alguna pista
Gracias
Last edited by miarcod on Mon Apr 15, 2019 3:10 pm, edited 1 time in total.
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: color en fuentes de haruPDF

Post by cnavarro »

Es raro, a mi me funciona bien, y en tu código no veo nada que indique que lo estés haciendo mal
Puedes poner una imagen?
Image
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
miarcod
Posts: 172
Joined: Tue Oct 11, 2005 2:17 pm

Re: color en fuentes de haruPDF

Post by miarcod »

Perdón por la ignorancia
¿Existe alguna forma de poner una imagen en un mensaje sin necesidad de subirla a algún servidor externo?
Si solo se puede a través de un servidor.
¿Que servidores me recomendáis?

Un saludo
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: color en fuentes de haruPDF

Post by cnavarro »

C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
miarcod
Posts: 172
Joined: Tue Oct 11, 2005 2:17 pm

Re: color en fuentes de haruPDF

Post by miarcod »

gracias

La imagen del pdf que se genera es esta

Image
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: color en fuentes de haruPDF

Post by cnavarro »

Pues no entiendo el motivo, tu ejemplo parece funcionar correctamente

Image
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
miarcod
Posts: 172
Joined: Tue Oct 11, 2005 2:17 pm

Re: color en fuentes de haruPDF

Post by miarcod »

Gracias, voy a probar a realizar un ejemplo aislado del programa en el que estoy trabajando.
miarcod
Posts: 172
Joined: Tue Oct 11, 2005 2:17 pm

Re: color en fuentes de haruPDF

Post by miarcod »

Hola de nuevo
He probado a descargar de nuevo la libreria y a montar otro ejemplo pero los colores siguen saliendo cambiados

La libreria la descargo desde https://bitbucket.org/carlos_mora/pdfprinter ¿será esta la correcta?

Si utilizo los metodos cmSAyBitmap() o cmRect() no obtengo ninguna salida
pero Si enlazo en lugar de usar png.lib de la librería uso png.lib de harbour si funciona el metodo cmsaybitmap()
el método cmRect lo tenía reprogramado creando cuatro lineas...

Estaré mezclando librrerías incompatibles

Esta es la salida que obtengo con el ejemplo que tiene la libreria
Gracias

Image
miarcod
Posts: 172
Joined: Tue Oct 11, 2005 2:17 pm

Re: color en fuentes de haruPDF

Post by miarcod »

Al final lo he solucionado con un parche aunque no me gusta
He modificado los métodos de la clase y en la selección del color hago la llamada a una función que ajusta los colores a lo que me sale impreso

Code: Select all

...
      nClrText := Ajustacolor(nClrText)     // Ajuste colores MAF
      c := HPDF_Page_GetRGBFill( ::hPage )
      HPDF_Page_SetRGBFill( ::hPage, ( Int( nClrText / 0x10000 ) % 256 ) / 256.00, ( Int( nClrText / 0x100 )  % 256 )  / 256.00, ( nClrText  % 256 ) / 256.00 )
 
y estos son los ajustes

Code: Select all

STATIC FUNCTION AjustaColor(nColor)
//RETURN nColor
DO CASE
   CASE nColor == CLR_RED    ; RETURN CLR_BLUE
   CASE nColor == CLR_HRED   ; RETURN CLR_HBLUE
   CASE nColor == CLR_BLUE   ; RETURN CLR_RED
   CASE nColor == CLR_HBLUE  ; RETURN CLR_HRED
   CASE nColor == CLR_CYAN   ; RETURN CLR_YELLOW
   CASE nColor == CLR_YELLOW ; RETURN CLR_HCYAN
   CASE nColor == CLR_HCYAN  ; RETURN CLR_YELLOW
   CASE nColor == CLR_BROWN  ; RETURN CLR_CYAN



ENDCASE
RETURN nColor
 
Un saludo y gracias a todos
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: color en fuentes de haruPDF

Post by cnavarro »

Prueba con esto ( quitando tu function, claro )

Code: Select all

      HPDF_Page_SetRGBFill( ::hPage, ( nClrText % 256 ) / 256.00,;
                                      ( Int( nClrText / 0x100 )  % 256 )  / 256.00 , (  Int(nClrText / 0x10000 ) % 256 ) / 256.00 )
 
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
miarcod
Posts: 172
Joined: Tue Oct 11, 2005 2:17 pm

Re: color en fuentes de haruPDF

Post by miarcod »

Con esta modificacion funciona correctamente
Un millon de gracias
Entiendo que en el código que descargué la selección del color se pasa de forma incorrecta
Un saludo
User avatar
cnavarro
Posts: 5792
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: color en fuentes de haruPDF

Post by cnavarro »

Modifica y añade al titulo del primer post del hilo ( Solucionado )
Saludos
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Carlos Mora
Posts: 988
Joined: Thu Nov 24, 2005 3:01 pm
Location: Madrid, España

Re: color en fuentes de haruPDF

Post by Carlos Mora »

Epa! Parece que se me coló un error. Suerte que está Cristobal atento.

Voy a corregir la línea en la librería, es un error evidente. Parece que ninguno hasta ahora habíamos impreso texto en colores!
Como es código abierto, la mejor manera es que la corrección se comparta, por lo que os animo a hacer la corrección en una copia vuestra y hacer un "pull request" con _. ¡Ganamos todos!

Un saludo
Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
“If you think education is expensive, try ignorance"
Carlos Mora
Posts: 988
Joined: Thu Nov 24, 2005 3:01 pm
Location: Madrid, España

Re: color en fuentes de haruPDF

Post by Carlos Mora »

Ya está subida la corrección al repositorio, asi es que ya se puede actualizar.
Solo se cambió esa línea en el prg correspondiente.
Gracias a miarcod por reportar el error y al master Cristobal por solucionarlo
Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
“If you think education is expensive, try ignorance"
Post Reply