setfont no win32prn

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

Moderador: Moderadores

tonyx
Usuário Nível 3
Usuário Nível 3
Mensagens: 303
Registrado em: 07 Jul 2004 15:26

setfont no win32prn

Mensagem por tonyx »

estou usando
setfont(´corier new´,10,10) // normal
setfont(´corier new´,7 , 14) // comprimido

imprimi 1 ate 80 no normal
imprimi 1 ate 132 no comprimido
lado esquerdo numro de linhas


estou achando as letras muito juntas ???
passa dos 60 linhas folha A4

voces tem DICAs ???
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Re: setfont no win32prn

Mensagem por sygecom »

De uma olhada no link abaixo e compile o exemplo que o Hasse postou ai tem o que vc procura:
viewtopic.php?t=6465

Código: Selecionar todos

oPrinter:SetFont('Courier New',12,{1,nFont}, 0, .F., .F.)
         
oPrinter:Textout(STR(oprinter:LineHeight()    ) + "  -altura da linha",.t.)
oPrinter:Textout(STR(oprinter:CharWidth()     ) + "  -largura da coluna",.T.)
oPrinter:TextOut(STR(oPrinter:GetCharWidth()  ) + "  -GetCharWidth",.T.)
oPrinter:TextOut(STR(oPrinter:GetCharHeight() ) + "  -GetCharHeigth",.T.)
oPrinter:Textout(STR(oprinter:Prow()          ) + "  -Posição atual da " + "linha",.T.)
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
tonyx
Usuário Nível 3
Usuário Nível 3
Mensagens: 303
Registrado em: 07 Jul 2004 15:26

Re: setfont no win32prn

Mensagem por tonyx »

no caso gostaria de saber
1- alem dos fontes "corier new, console " outra para A4 ??
2- caso de fixar altura entre linhas, margens - existe para win32prn
no exemplo ele so mostra sa vem fixo, e nao varia como o word
3 - testei estou usando agora (corier,10,11) // normal e (corie,6.5,18) // comprimir
4- adiciono o txt em dbf e lendo (mai facil controle de leitura)
5- estou usando [Compri_1], [Compri_2], [normal_1}, [normal_2], [Landscap] dentro txt
6- setchart(255) para acentos

----- as dicas do winprn32 sao boas mas atualmente estou em leitura simples do txt
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Re: setfont no win32prn

Mensagem por asimoes »

Amigos,

Estou precisando imprimir um relatório que tem 140 colunas, qual setfont devo colocar para esta impressão?

[]´s
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Hasse
Usuário Nível 4
Usuário Nível 4
Mensagens: 820
Registrado em: 19 Out 2004 10:30
Localização: Jaraguá do Sul - SC

Re: setfont no win32prn

Mensagem por Hasse »

Caro Asimoes.

No teste passa dos 160 caracteres na largura do formulário A4. E pode conter ainda mais.

oPrinter:SetFont('Courier New',7,{1,20}, 0, .F., .F.)
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
Hasse
Usuário Nível 4
Usuário Nível 4
Mensagens: 820
Registrado em: 19 Out 2004 10:30
Localização: Jaraguá do Sul - SC

Re: setfont no win32prn

Mensagem por Hasse »

Caro Tonix.

Você pode adicionar qualquer fonte que esteja instalada no seu Windows.

A diferença é que a fonte Courier New tem pitch fixo, e a grande maioria das outras fontes tem pitch proporcional.

A altura da linha pode ser manipulada na Classe Win32prn(), mas não pode ser alterada num mesmo documento. Veja a linha contendo:

Código: Selecionar todos

::LineHeight       := INT(::PixelsPerInchY / 6)  // Default 6 lines per inch == # of pixels per line
No caso das margens, eu ainda não testei, mas creio que podem ser alteradas num mesmo documento. O Help do xHarbour nada menciona.
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
Responder