Página 1 de 1

PdfClass como fazer um retangulo com fundo colorido?

Enviado: 09 Mar 2026 12:01
por ANDRIL
Bom dia!

Estou desenhando um retangulo, gostaria de colocar as letras pretas e o fundo cinza usando o PDFClass do José Quintas.

Código: Selecionar todos

 oPDF:DrawRetangle( 9, 0, nMaxCol/4, 5.5, Nil, Nil, Nil ) //fundo cinza
 oPDF:DrawText( 10, 1, "Vendedor:", Nil, 8, "Helvetica", Nil, Nil )  //letras pretas
Já procurei na documentação
https://libharu.sourceforge.net/example ... mage_demo_
e fiz testes, consegui alterar a linha do box mas não o background.

Há essa possibilidade?

Re: PdfClass como fazer um retangulo com fundo colorido?

Enviado: 09 Mar 2026 13:44
por JoséQuintas
Acho que não pensei nisso, mas dá uma olhada no método DrawZebrado() ou algo assim.
Talvez com base nele possamos alterar o DrawRetangle(), se precisar.
A forma de definir cor na harupdf não é igual windows, e não lembro se tentei converter, na época.

Re: PdfClass como fazer um retangulo com fundo colorido?

Enviado: 09 Mar 2026 14:14
por JoséQuintas
olhando o manual da harupdf

List of Color Operators
HPDF_Page_SetGrayFill
HPDF_Page_SetGrayStroke
HPDF_Page_SetRGBFill
HPDF_Page_SetRGBStroke
HPDF_Page_SetCMYKFill
HPDF_Page_SetCMYKStroke

List of Path Painting Operators
HPDF_Page_Stroke
HPDF_Page_ClosePathStroke
HPDF_Page_Fill
HPDF_Page_Eofill
HPDF_Page_FillStroke
HPDF_Page_EofillStroke
HPDF_Page_ClosePathFillStroke
HPDF_Page_ClosePathEofillStroke
HPDF_Page_EndPath

A primeira lista apenas define o padrão
A segunda lista, não sei se tem mais, define um preenchimento
Pra certas coisas, tem a definição e o fim da definição, que seria pra cada desenho.
https://libharu.sourceforge.net/graphics.html

No harbour tem exemplo colorido.


.

Re: PdfClass como fazer um retangulo com fundo colorido?

Enviado: 09 Mar 2026 14:20
por JoséQuintas
test.prg do harbour
ex1.png
ex1.png (107.59 KiB) Exibido 30 vezes
ex2.png
ex2.png (36.94 KiB) Exibido 30 vezes

Re: PdfClass como fazer um retangulo com fundo colorido?

Enviado: 09 Mar 2026 16:11
por ANDRIL
Olá José!
Seguindo sua dica de verificar o método DrawZebrado() fiz as alterações abaixo:

Era:
oPDF:DrawRetangle( 9, 0, nMaxCol/4, 5.5, Nil, Nil, Nil )
Mudei para
oPDF:DrawRetangle( 9, 0, nMaxCol/4, 5.5, 0.2, 2, {0.7,0.7,0.7} )

Funcionou, desenha um retangulo com a cor cinza no background.
Obrigado!