Página 1 de 1

Cedilha e Acento não imprimindo

Enviado: 03 Ago 2026 17:30
por porter
Olá pessoal, estou tendo esse resultado ao imprimir um orçamento
** ORÃAMENTO **

Assim, dá certo, imprimir na tela:

Código: Selecionar todos

10, 02 PROMPT HB_ANSITOOEM("Orçamento")
Estou fazendo dessa forma, para gerar um arquivo TXT:

Código: Selecionar todos

SET PRINTER TO C:\ORCAMENTOS\Orcamento.TXT
SETPRC(0,0)
? chr(18) + chr(27)+"E"
@ contl,00 SAY HB_ANSITOOEM("** ORÇAMENTO ** ")
Harbour 3.2.0 dev

Re: Cedilha e Acento não imprimindo

Enviado: 03 Ago 2026 17:59
por alxsts
Olá!

Como você está iniciando sua aplicação?

Está carregando e selecionando a página de código correta?

A página de código do teu editor de texto está configurada corretamente?

Qual sistema operacional está usando?

Se for Windows 11, execute as configurações abaixo:
Extraido de outro tópico escreveu:Acesse PAINEL DE CONTROLE -> REGIAO -> ADMINISTRATIVO -> E AJUSTAR a localidade do sistema e desmarcar a opção USAR UNICODE UTF-8 PARA SUPORTE DE LIGUAGEM MUNDIAL.

Re: Cedilha e Acento não imprimindo

Enviado: 03 Ago 2026 18:09
por alxsts
alxsts escreveu: 03 Ago 2026 17:59 Olá!

Como você está iniciando sua aplicação?

Está carregando e selecionando a página de código correta?

A página de código do teu editor de texto está configurada corretamente?

Qual sistema operacional está usando?

Se for Windows 11, execute as configurações abaixo:
Extraido de outro tópico escreveu:Acesse PAINEL DE CONTROLE -> REGIAO -> ADMINISTRATIVO -> E AJUSTAR a localidade do sistema e desmarcar a opção USAR UNICODE UTF-8 PARA SUPORTE DE LIGUAGEM MUNDIAL.
Editado:
Se você estiver selecionando a página de código correta, não é necessário usar funções de conversão como hb_AnsiToOem().
Aliás, este pode ser o problema. Está configurando a página de código corretamente e chamando a função de conversão, que bagunça o texto...

Re: Cedilha e Acento não imprimindo

Enviado: 04 Ago 2026 11:32
por JoséQuintas
Também depende da codepage da impressora.
Tudo isso faz diferença.

Re: Cedilha e Acento não imprimindo

Enviado: 05 Ago 2026 10:12
por porter
Olá,
Windows 10, e a versão do NotePad++ é V8.4.5 (32 bit)

Qual configuração, devo usar ?
Na aba Encoding do NotePad++
==========================
ANSI
UTF-8
UTF-8 BOM
UTF-16 BE BOM
UTF-16 LE BOM
Character sets
Convert to ANSI
Convert to UTF-8
Convert to UTF-8 BOM
Convert to UTF-16 BOM
Convert to UTF-16 LE BOM

Estou inicializando o sistema, dessa forma:
FUNCTION Main()
REQUEST HB_CODEPAGE_PT850

A opção selecionada no NotePad++, servirá tanto para tela como para geração do arquivo TXT ?
Obrigado.

Re: Cedilha e Acento não imprimindo

Enviado: 05 Ago 2026 10:16
por Kapiaba

Código: Selecionar todos

EXTERNAL HB_LANG_PT, HB_CODEPAGE_PTISO, HB_CODEPAGE_PT850

#ifNdef __XHARBOUR__     // Somente para HARBOUR
   REQUEST HB_CODEPAGE_UTF8
   REQUEST HB_CODEPAGE_UTF8EX
#endif

EXTERNAL _DBF, DBFCDX, DBFFPT
ANNOUNCE RDDSYS // ANNOUNCE FPTCDX

FUNCTION Main()

   ....... Variaveis...

   HB_LANGSELECT( 'PT' )     // Default language is now Portuguese
   HB_SETCODEPAGE( "PT850" )
   HB_CDPSELECT( "PTISO" )

   ....... continua codigo...

RETURN NIL
Regards, saludos.

Re: Cedilha e Acento não imprimindo

Enviado: 05 Ago 2026 11:59
por Itamar M. Lins Jr.
porter escreveu: 05 Ago 2026 10:12 Estou inicializando o sistema, dessa forma:
FUNCTION Main()
REQUEST HB_CODEPAGE_PT850
Atenção nessa parte.
São dois!
HB_CODEPAGE_PT850 É para a pagina de código do RDDDBF CDX ou NTX.
E para a tela e as mensagens em PT-BR HB_LANG_PT
CODEPAGE -> É para o banco de dados e LANG é para TELA!
Se vc quer PADRONIZAR pode usar no Windows PTISO
Se usa Linux e Windows + internet + Mysql/etc... o normal é UTF8 ou UTF8EX no Harbour. Senão tem que ficar mandando o banco criar as tabelas assim, assado... Os bancos de dados e internet o padrão é UTF8.

Código: Selecionar todos

REQUEST DBFCDX, DBFFPT, DBFDBT
REQUEST HB_LANG_PT, HB_CODEPAGE_PTISO, HB_CODEPAGE_UTF8, HB_CODEPAGE_UTF8EX
FUNCTION MAIN
HB_CDPSELECT("PTISO") //Para o DBFCDX
hb_langselect("PT") //Para mostrar os acentos corretamente na tela.
Inclusive pode chamar vários para converter de um para outro.

Neste caso posso CHAMAR vários RDDs mas só uma LINGUAGEM na TELA PT(português)
Não uso CODEPAGE PT850 pq que é o padrão antigo MS-DOS. O moderno é PTISO(Windows).
Mas se já usa assim e está ok.(no RDDDBF) blz.
No caso do Notepad++ é apenas a TELA, não afeta o RDDDBF.
Dica. Pegue o TXT abra ele no notepad do windows que ele diz(mostra) como está.
Atenção com a observação do José Quintas.
As impressoras podem não imprimir corretamente caso seja texto puro (RAW).
Por isso abrir o texto com notepad ver como está e pedir para imprimir por ele que usa outro tipo de impressão que é o padrão no windows -> (EMF/GDI)