Win32Prn SetFont

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

jelias
Usuário Nível 3
Usuário Nível 3
Mensagens: 260
Registrado em: 27 Ago 2008 11:32
Localização: Minas Gerais

Win32Prn SetFont

Mensagem por jelias »

Olá amigos,

Estou com uma dúvida quanto a configuração entre colchetes na linha abaixo:

oPrinter:SetFont("Courier New",10,{1,18},0,.F.,.F.)

Minha dúvida está no terceiro parâmetro do SETFONT que entre colchetes me permite configurar {altura da linha, largura da coluna}.
Este seria um parâmetros para configurar o espaçamento entre linhas e entre colunas?

Como utilizar corretamente este parâmetros para ajustar estes espaçamentos?

Saudações,

Júlio.
xHarbour 1.2.1 (simplex) + BCC 5.8.2 + Hwgui + SQLRDD
Clipper 5.2e / Blinker 7
Júlio Cézar Elias
e-mail: jelias@tpnet.psi.br
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Win32Prn SetFont

Mensagem por Jairo Maia »

jelias escreveu:Este seria um parâmetros para configurar o espaçamento entre linhas e entre colunas?
Não. Entre colchetes você define a compressão dos fontes, onde o segundo número é dividido pelo primeiro.

Para obtermos por exemplo a famosa compressão 17.5 cpp (caracteres por polegadas), colocariamos { 3, 52.5 }. Assim ficaria: 3/ 52.5 = 17,5 cpp. Não tem nenhuma relação com a altura da linha.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
jelias
Usuário Nível 3
Usuário Nível 3
Mensagens: 260
Registrado em: 27 Ago 2008 11:32
Localização: Minas Gerais

Win32Prn SetFont

Mensagem por jelias »

Amigo Mário,

O meu problema é que preciso imprimir em um formulário pré-impresso pela montadora e encaixar todos os campos corretamente. Acontece, que, na última linha não está saindo corretamente, está cortando e somente aparece um traço.

Como poderia fazer para caber mais linhas por página?

Saudações,

Júlio
xHarbour 1.2.1 (simplex) + BCC 5.8.2 + Hwgui + SQLRDD
Clipper 5.2e / Blinker 7
Júlio Cézar Elias
e-mail: jelias@tpnet.psi.br
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Win32Prn SetFont

Mensagem por Jairo Maia »

Tente posicionar por tentativa e erro pegando a posição atual do cursor antes de imprimir a última linha e tentando ir subindo em pixels para acertar.

Antes de imprimir a última linha, tente algo como:

Código: Selecionar todos

oPrinter:newLine()

aLinCol := oPrinter:SetPos()

oPrinter:SetPos( aLincol[1] - 5, aLincol[2] )

oPrinter:textOut( "Seu Texto" )
Veja se vai funcionar...
jelias escreveu:Como poderia fazer para caber mais linhas por página?
Isso não sei. O número de linhas numa página é dinamizado pela altura da fonte (Height). Para você saber a altura de linha de acordo com a fonte usada use:

Código: Selecionar todos

nHeight := oPrinter:lineHeight

hb_Alert( Str( nHeight ) )
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Responder