Imprimir mensagem com fontes ou tamanho diferentes

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

Moderador: Moderadores

Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Imprimir mensagem com fontes ou tamanho diferentes

Mensagem por asimoes »

Pessoal,

É possível imprimir na mesma linha, mensagem com fonte ou tamanho diferentes:

Exemplo: Resultado (em arial 14): Resposta (em courier new, 11)

(Arial 14) (Courier New 11)
ABCD EFGH

Obs: Usando a WIN32PRN

[]´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)
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Mensagem por Toledo »

Amigo, veja este pequeno exemplo:

Código: Selecionar todos

function main()
local oprinter:=win32prn()

oprinter:new(getdefaultprinter())
oprinter:formtype:=9
oprinter:create()
oprinter:startdoc()
oprinter:setfont("Arial",14,,,,,,1,)
oprinter:textoutat(60,130,"ABCD")
oprinter:setfont("Courier New",11,,,,,,1,)
oprinter:textoutat(480,130,"EFGH")
oprinter:enddoc()
oprinter:destroy()
return Nil
Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Mensagem por asimoes »

Toledo,

É isso mesmo que eu queria.
Já testei e funcionou.
Agora pelo que eu vi dá uma trabalheira enorme para saber as coordenadas de impressão.

Alexandre
►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)
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Mensagem por Toledo »

Alexandre, você pode usar as funções GetCharWidth() e GetCharHeight() para saber qual a largura e altura das letras, mas como será usado fonte e tamanhos diferentes de letras, ai vai ficar complicado mesmo.

Exemplo de como usar as funções acima:

Código: Selecionar todos

nLarg:=oprinter:GetCharWidth() // largura da fonte
nAltu:=oprinter:GetCharHeight() // altura da fonte
Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

A altura até entendo. Mas e quanto à largura de fontes proporcionais? Se são proporcionais, a largura deveria ser variável, não?
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Mensagem por asimoes »

Pessoal,

Existe algum gerador de relatório pro xh?
Que facilite a confecção do relatório.


[]´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)
rodrmigu
Usuário Nível 3
Usuário Nível 3
Mensagens: 150
Registrado em: 27 Nov 2007 15:13
Localização: Indaiatuba SP

Mensagem por rodrmigu »

Olá,

- Crystal Reports
- Fast Reports for xHarbour

[]'s
Rodrigo
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Mensagem por Toledo »

Pelo que eu entendi, o Alexandre vai usar fontes e tamanhos diferentes de letras, neste caso dependendo do tamanho das fontes usadas, a largura da letra será maior ou menor.

ABCD
EFGH


Ai vai ficar complicado saber em que posição do papel deverá imprimir o texto, principalmente se os textos forem de tamanho variados.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

FastReport pra XHarbour? Isso é novidade pra mim. É o que eu uso no TC++.
Então estão muito bem servidos. :)
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Responder