Formatação de texto na impressão em impressoras não fiscais

Quando o tipo de impressora NÃO for ppTexto:

Texto.Add(‘</c><n>FONTE NEGRITO</N>’);
Texto.Add(‘</corte_total>’);

TAgs:

<e> – Liga Expandido
</e> – Desliga Expandido
<n> – Liga Negrito
</n> – Desliga Negrito
<s> – Liga Sublinhado
</s> – Desliga Sublinhado
<c> – Liga Condensado
</c> – Desliga Condensado
<i> – Liga Italico
</i> – Desliga Italico
</fn> – Fonte Normal
</fa> – Liga Fonte Tipo A (normal)
</fb> – Liga Fonte Tipo B (condensada)
<in> – Liga Fonte Invertida (Fundo Preto)
</in> – Desliga Fonte Invertida
</ae> – Liga Alinhamento a Esquerda
</ce> – Liga Alinhamento ao Centro
</ad> – Liga Alinhamento a Direita
</linha_simples> – Imprime Linha Simples
</linha_dupla> – Imprime Linha Dupla
</pular_linhas> – Pula N Linhas de acordo com propriedade do componente
</logo> – Imprime Logotipo já gravado na Impressora (use utilitário do fabricante)
</corte_parcial> – Efetua Corte Parcial no Papel (não disponivel em alguns modelos)
</corte_total> – Efetua Corte Total no papel
</abre_gaveta> – Aciona a abertura da Gaveta de Dinheiro
</beep> – Emite um Beep na Impressora (não disponivel em alguns modelos)
</zera> – Reseta as configurações de Fonte Alinhamento.<LF>Ajusta Página de Código e Espaço entre Linhas
</lf> – Pula para a própxima linha
</cr> – Retorna para o Inicio da Linha
<ad> – Bloco – Texto Alinhado a Direita
<ae> – Bloco – Texto Alinhado a Esquerda
<ce> – Bloco – Texto Centralizado
<ean8> – Bloco – Cod.Barras EAN8 – 7 numeros e 1 dig.verificador
<ean13> – Bloco – Cod.Barras EAN13 – 12 numeros e 1 dig.verificador
<std> – Bloco – Cod.Barras “Standard 2 of 5” – apenas números, tamanho livre
<inter> – Bloco – Cod.Barras “Interleaved 2 of 5” – apenas números, tamanho PAR
<code11> – Bloco – Cod.Barras Code11 – apenas números, tamanho livre
<code39> – Bloco – Cod.Barras Code39 – Aceita: 0..9,A..Z, ,$,%,*,+,-,.,/, tamanho livre
<code93> – Bloco – Cod.Barras Code93 – Aceita: 0..9,A..Z,-,., ,$,/,+,%, tamanho livre
<code128> – Bloco – Cod.Barras Code128 – Todos os caracteres ASCII, tamanho livre
<upca> – Bloco – Cod.Barras UPCA – 11 numeros e 1 dig.verificador
<upce> – Bloco – Cod.Barras CodaBar – Aceita: 0..9,A..D,a..d,$,+,-,.,/,:, tamanho livre
<codabar> – Bloco – Cod.Barra MSI – Apenas números, 1 dígito verificador
<msi> – Bloco – Cod.Barras Code128 – Subtipo A
<code128a> – Bloco – Cod.Barras Code128 – Subtipo B (padrão) = <code128>
<code128b> – Bloco – Cod.Barras Code128 – Subtipo C (informar valores em BCD)
<code128c> – Bloco –
<abre_gaveta> – Bloco – Abertura de Gaveta Específica (1 ou 2)
<barra_mostrar> – Bloco – Configura se deve exibir conteudo abaixo do Cod.Barras: 0-NAO; 1-SIM
<barra_largura> – Bloco – Configura a Largura das Barras do Cod.Barras: 0 a 5. (0=default)
<barra_altura> – Bloco – Configura a Altura do Cod.Barras: 0 a 255. (0=default)
<qrcode> – Bloco – Imprime QRCode de acordo com “ConfigQRCode”
<qrcode_tipo> – Bloco – Configura o Tipo de QRCode: 1,2
<qrcode_largura> – Bloco – Configura a Largura do QRCode: 1 a 16
<qrcode_error> – Bloco – Configura o Error Level do QRCode: 0 a 3
<logo_imprimir> – Bloco – Configura a Impressão ou não do Logo Tipo: 0-NÃO, 1-SIM (default = 1)
<logo_kc1> – Bloco – Configura a posição KC1 do Logo a ser impresso. Ex: 0=48
<logo_kc2> – Bloco – Configura a posição KC2 do Logo a ser impresso. Ex: 1=49
<logo_fatorx> – Bloco – Configura o aumento Horizonal do Logo, de 1 a 4
<logo_fatory> – Bloco – Configura o aumento Vertical do Logo, de 1 a 4
<ignorar_tags> – Bloco – Ignora todas as Tags contidas no Bloco

Quando FOR ppTexto:

TextoImprimir.Add( char(27) + char(71));
TextoImprimir.Add(‘Negrito 1’);
TextoImprimir.Add( char(27) + char(71) + char(70));

Aí precisa fazer um método para não deixar as 2 linhas atoa. Não pode concatenar, faça da seguinte maneira abaixo:

Uma função que retorna uma string

textoAux := '';
 texto := 'A' + texto; //O 'A' ele é deletado nas concatenações abaixo (não sei em qual), se retirar ele, NÃO sai em negrito.
 textoAux := char(27) + char(71); //Inicia o negrito
 textoAux := textoAux + Texto;
 textoAux := textoAux + char(27) + char(71) + char(70); //Finaliza o negrito
 result := textoAux;

Fonte: https://github.com/GabrielF7/ACBrTrunk2/blob/master/Exemplos/ACBrSerial/ACBrPosPrinter/Delphi/unit1.pas#L176

 

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s