Página 1 de 1
Salto de linha em impressora matricia.
Enviado: 15 Abr 2008 14:49
por andreh
Boa tarde pessoal
Procurei mas não achei, se tiver falando besteira me desculpem.
Tenho uma impressora fx 890 e preciso fazer saltar somente meia linha por causa do formuário. Tem como dimensionar o salto de linha ?
Grato.
Enviado: 15 Abr 2008 16:04
por Everton
Olá Andreh, cara acho isso meio dificil, pra não falar impossivel, pois o mais certo seria vc mandar um comando pra tranformar o espaço entre linhas e 1/6 que é padrão da impressora para 1/8, com isso vc vai ter um espaçamento menor entre linhas. acho que é isso.
para 1/8
Say(prow(), 00, chr(27)+"0")
para 1/6
Say(prow(), 00, chr(27)+"2")
Enviado: 15 Abr 2008 18:34
por Maligno
O que você pode fazer é configurar o valor de salto entrelinha. Não lembro qual é o código, mas existe. É bem simples. Você pode pegar no meu
site o manual do ESC/P da Epson. Nele você encontrará todos os códigos da impressora.
Saltos de Linha - Maior numero de linhas
Enviado: 15 Abr 2008 22:35
por Manuel Luis Modernel
OI Andreh, seguem abaixo algumas dicas para usar nas impressoras nos teus codigos.
Entre eles tem como escrever em 6, 8 e 10 linhas em cada polegada.
Só tem uma coisa estas funções estão escritas em Clipper Summer 87, mas acredito que nos outros mais modernos sirvam tb.
Passo a Palavra ao mestre Maligno .....
Código: Selecionar todos
*************************** EFEITOS NA IMPRESSAO ********************
* a linha abaixo inizializa a impressora no meio da folha, ela para como
* se tivese sido desligada e assim aciona a funcao abaixo "imprisim()"
* @ l,0 say chr(27)+chr(64)
* usei ela na impresao de cheques mais retirei hoje 03/07/96
***************************************
* checa se esta ligada ou nao
func imprisim
if .NOT. isprinter()
set color to n/bg
TONE(1000,18)
LIMPA23()
centra('A IMPRESORA NAO ESTA LIGADA !!! LIGUE ELA E TECLE <ENTER>' ,23)
set color to N/BG,w/n,,,N/BG
INKEY(0)
endif
return 0
**COMPRIME PARA 132 CARACTERES E 8 LINHASPOR POLEGADA
FUNC MAL
@ PROW(),PCOL() SAY CHR(27)+CHR(85)+CHR(49)
@ PROW(),PCOL() SAY CHR(15)
@ prow(),pcol() SAY CHR(27)+CHR(48)
RETURN 0
************************
** COMPRIME IMPRESSORA
Function COMPRIME
@ PROW(),PCOL() SAY CHR(15)
RETURN 0
** DESCOMPRIME IMPRESSORA
Function DESCOMPR
@ PROW(),PCOL() SAY CHR(18)
RETURN 0
** ESCREVE EM NEGRITO NESTA LINHA
FUNC NEGRO
@ PROW(),PCOL() SAY CHR(27)+CHR(69)
RETURN .T.
** ESCREVE NORMAL NESTA LINHA
FUNC CLARO
@ PROW(),PCOL() SAY CHR(27)+CHR(70)
RETURN .T.
*****
** ESCREVE EM 8 LINHAS POR POLEGADA OU A CADA 3,2 MM
FUNC OITO
@ prow(),pcol() SAY CHR(27)+CHR(48)
RETURN 0
*****
** ESCREVE EM 6 LINHAS POR POLEGADA OU A CADA 4,3 MM
FUNC SEIS
@ prow(),pcol() SAY CHR(27)+CHR(50)
RETURN 0
*****
ANDREH COM ESTA FUNÇÃO ABAIXO, VC VAI TER LINHAS NOVAS A CADA 2,5 mm DE ALTURA
** ESCREVE EM +ou- 10 LINHAS POR POLEGADA
FUNC dez
@ prow(),pcol() SAY CHR(27)+CHR(49)
RETURN 0
*****
FUNC MAIOR
@ PROW(),PCOL() SAY CHR(18)
RETURN .T.
*****
FUNC MENOR
@ PROW(),PCOL() SAY CHR(15)
RETURN .T.
********
ISTO ABAIXO É PARA AQUELAS MATRICIAIS QUE TINHAM FITAS COLORIDAS (3 CORES)
func PRET && escreve na cor PRETA
@ prow(),pcol() say chr(27)+chr(114)+chr(48)
return.t.
*****
func magen && escreve na cor MAGENTA
@ prow(),pcol() say chr(27)+chr(114)+chr(49)
return.t.
*****
func ciano && escreve na cor CIANO
@ prow(),pcol() say chr(27)+chr(114)+chr(50)
return.t.
*****
func viole && escreve na cor VIOLETA
@ prow(),pcol() say chr(27)+chr(114)+chr(51)
return.t.
*****
func AMARE && escreve na cor AMARELA
@ prow(),pcol() say chr(27)+chr(114)+chr(52)
return.t.
*****
func LARAN && escreve na cor LARANJA
@ prow(),pcol() say chr(27)+chr(114)+chr(53)
return.t.
*****
func verde && escreve na cor VERDE
@ prow(),pcol() say chr(27)+chr(114)+chr(54)
return.t.
********
Enviado: 16 Abr 2008 14:16
por ABeltrani
Boa tarde !
Para isso vc precisa alterar o espaço entre linhas de 1/6 para 1/12. Para fazer isso o código é:
chr(27) + chr(65) + chr(6)
Espero ter ajudado..
Enviado: 16 Abr 2008 16:33
por Maligno
1/6, 1/8, 1/12 ou mesmo 1/n. Tem código pra tudo. Inclusive esse último.