igorocampos / ESCPOS

A ESC/POS Printer Commands Helper
56 stars 22 forks source link

Problemas com acentuação #18

Closed studioclassic closed 3 years ago

studioclassic commented 3 years ago

Olá, estou tentando usar seu código para impressão em impressoras térmicas, mas estou com problemas de acentos, você pode me ajudar?

Já tentei usar todo tipo de conversão de encoding e não consigo imprimir corretamente.

igorocampos commented 3 years ago

Pra qual codepage sua impressora está configurada? Ela é da marca EPSON?

studioclassic commented 3 years ago

É da marca Evadin, já tentei o CodePage PC850 e PC860 e nenhuma aceita acentuação.

igorocampos commented 3 years ago

Era pra imprimir de boa... Nunca testei nessa marca diferentona, mas a principio a biblioteca trabalha exclusivamente com UTF-8, que ja engloba os acentos normais. Então passando uma string encodada com UTF-8 e usando essas Code Page que contempla os acentos corretamente, era pra imprimir normal...

O que sai impresso no lugar ?

igorocampos commented 3 years ago

Você consegue testar o mesmo codigo numa EPSON?

studioclassic commented 3 years ago

Bom dia, desculpe a demora, é que não deu pra responder ontem, então vou ver se consigo testar em uma Epson, vou tentar colocar uma imagem pra você ver como sai.

studioclassic commented 3 years ago

Outra coisa que esqueci de falar, a função Add não está adicionando itens novos pelo exemplo que você postou no projeto, tem alguma ideia do porque não adicionar novos objetos na matriz byte[]?

igorocampos commented 3 years ago

Extension method Add é utilizado nos unit tests que estão passando normalmente... Pode dar mais detalhes de como você está fazendo seu codigo, do resultado esperado e do resultado obtido?

studioclassic commented 3 years ago

Então pelo exemplo vc cria uma matriz byte como nula, e em seguida dá um Add, mas ela simplesmente continua nula.

igorocampos commented 3 years ago

que estranho... Veja codigo:

A primeira coisa que faz é testar se qualquer um dos 2 arrays é nulo, se sim ele retorna o outro.

https://github.com/igorocampos/ESCPOS/blob/3e1be5ee36e753e0e4298376219b99d9d5cf0751/ESCPOS/Utils/Utils.cs#L8-L20

Unica possibilidade que vejo deste método retornar null seria caso ambos arrays fossem nulos. Mas vou fazer uns testes mais tarde aqui pra comprovar se isso mesmo é o que ocorre.

studioclassic commented 3 years ago

Sim, concordo, mas também achei estranho, eu até criei uma var com um caracter simples e mesmo assim ele retornou nulo.

igorocampos commented 3 years ago

@studioclassic ja identifiquei a questão do array resultando em null o problema na vdd nao é o método Add mas sim o que você faz com o retorno dele. No caso tanto você como eu não estavamos fazendo nada! haha

Ja corrigi o README.md veja ai se dá certo agora pra você. Vou criar uns novos UnitTests pra isso tb

studioclassic commented 3 years ago

Entendi, maravilha vou fazer novamente o teste baseado no seu exemplo, eu ainda não consegui resolver essa questão dos acentos, se eu conseguir eu te aviso

igorocampos commented 3 years ago

@studioclassic algum retorno sobre os testes? Deu certo da maneira que falei?

studioclassic commented 3 years ago

Opa bom dia, então eu tive que mudar o CodePage da impressora e fazer algumas alterações e deu certo, teve alguma melhoria no seu código?


De: Igor @.> Enviado: segunda-feira, 16 de agosto de 2021 16:08 Para: igorocampos/ESCPOS @.> Cc: Studio Classic Consultoria e Informática @.>; Mention @.> Assunto: Re: [igorocampos/ESCPOS] Problemas com acentuação (#18)

@studioclassichttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fstudioclassic&data=04%7C01%7C%7C7fba697198da4b8d4e5208d960e94a28%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637647377352204674%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=6oUoFxkbklYZGa%2B3H%2F5elbtCaTELsGwghRUmzTL4H6Y%3D&reserved=0 algum retorno sobre os testes? Deu certo da maneira que falei?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Figorocampos%2FESCPOS%2Fissues%2F18%23issuecomment-899751105&data=04%7C01%7C%7C7fba697198da4b8d4e5208d960e94a28%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637647377352214633%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=Neqkvrg2GNNfyQPP53Oy%2BjCaFLMmxGGY2s2zFqyUYLg%3D&reserved=0, or unsubscribehttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FABKHCS6LQ7RONVYOP5J7OYDT5FO4JANCNFSM43VWVLPA&data=04%7C01%7C%7C7fba697198da4b8d4e5208d960e94a28%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637647377352214633%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=onFtm4wGPkRYPGUXjdCWEjZf7gdZ1OlvlzYMelGU8Zk%3D&reserved=0. Triage notifications on the go with GitHub Mobile for iOShttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapps.apple.com%2Fapp%2Fapple-store%2Fid1477376905%3Fct%3Dnotification-email%26mt%3D8%26pt%3D524675&data=04%7C01%7C%7C7fba697198da4b8d4e5208d960e94a28%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637647377352214633%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=R6kv0lfB%2FkobAQ11zQK4vGuh9LIz6E2LjXdNgm8SEA4%3D&reserved=0 or Androidhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.github.android%26utm_campaign%3Dnotification-email&data=04%7C01%7C%7C7fba697198da4b8d4e5208d960e94a28%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637647377352224589%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=OHBUsSd0xU%2F9wNbkMvJlv%2FkkpUGUbwBbE52r03%2F%2BYqo%3D&reserved=0.

igorocampos commented 3 years ago

Ah que bom que deu certo. A melhoria em si foi feita no README que estava causando o mal entendimento. Vou encerrar o issue então, qualquer coisa pode re-abrir