No tópico do Leonardo, menciona o uso da função do xHarbour oPrinter:setfont. E foi mencionado este recurso na seção do Clipper no seguinte tópico:
https://pctoledo.org/forum/viewto ... bour#24721
A minha pergunta basea-se nesta função oPrinter:setfont('Courier New',,11,,,,255). É possível direcionar o resultado resultante dessa função em arquivo. Isto é, gerar um arquivo de impressão (arquivo texto) e obter como string o resultado dessa função ?. Ou esta função só tem efeito para comandar a impressora diretamente ?.
Alguém poderia me explicar de como funcionaria ?
Gerar arquivo de impressão
Moderador: Moderadores
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
-
MARCELOG
- Usuário Nível 4

- Mensagens: 546
- Registrado em: 15 Mar 2005 16:54
- Localização: Divinópolis/MG
Caro Pablo, infelizmente não.
Com certeza já ouviu falar os arquivos rtf e mesmo páginas html, etc..
Eles são arquivos txt com comandos especiais que são interpretados pelos softwares que suportam a linguagem.
Prá conseguir um negrito ou uma fonte maior num dos tipos mencionados é só colocar o comando no arquivo texto e pronto.
Contudo, para impressão a coisa muda.
O software que "lê" o rtf não imprime o arquivo texto que o originou, mas "repinta" a imagem produzida numa área da memória ou metafile.
Essa área da memória ou metafile, ponto a ponto, é enviada para a impressora que faz o serviço de impressão.
Vá no wordpad, escreva alguma bobagens em tamanho e fontes diferentes e grave o arquivo como rtf. Imprima se quiser.
Depois, através do edit, abra esse arquivo, que é um arquivo texto com extensão rtf e veja que para definir fonte, tabulação, papel, etc., foram usados comandos (ou diretivas) especiais.
Se você imprimir esse arquivo pelo edit, não vai sair igual ao do wordpad. Sacou?
MarceloG
Com certeza já ouviu falar os arquivos rtf e mesmo páginas html, etc..
Eles são arquivos txt com comandos especiais que são interpretados pelos softwares que suportam a linguagem.
Prá conseguir um negrito ou uma fonte maior num dos tipos mencionados é só colocar o comando no arquivo texto e pronto.
Contudo, para impressão a coisa muda.
O software que "lê" o rtf não imprime o arquivo texto que o originou, mas "repinta" a imagem produzida numa área da memória ou metafile.
Essa área da memória ou metafile, ponto a ponto, é enviada para a impressora que faz o serviço de impressão.
Vá no wordpad, escreva alguma bobagens em tamanho e fontes diferentes e grave o arquivo como rtf. Imprima se quiser.
Depois, através do edit, abra esse arquivo, que é um arquivo texto com extensão rtf e veja que para definir fonte, tabulação, papel, etc., foram usados comandos (ou diretivas) especiais.
Se você imprimir esse arquivo pelo edit, não vai sair igual ao do wordpad. Sacou?
MarceloG
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Ahhh entendí Marcelo. Esses resultados então seriam enviados diretamente a impressora e tais instruções são extremamente complexos e grandes que permite a impressão com formatação puramente gráfica. Em outras palavras: é feita a impressão letra a letra ponto a ponto (mais ou menos isso).
Então se quizermos imprimir em modo não gráfico, iremos precisar dos comandos de formatação da própria impressora e não temos como escapar disso.
Obrigado Marcelo, pelo seu esclarecimento.
Então se quizermos imprimir em modo não gráfico, iremos precisar dos comandos de formatação da própria impressora e não temos como escapar disso.
Obrigado Marcelo, pelo seu esclarecimento.