Fórum Imprimir em matricial no win2000... #267378
03/02/2005
0
bom tinha lançado uma duvida esses tempo atras de como imprimir numa impresora matricial pelo sistema, nao tive sucesso, mais ainda assim consegi uma solução funcionou qe é uma beleza mais quando fui testar no win2000 quem diz que imprimi ela apenas fas barrulho de quem como esta imprimindo mais nao sai nada
ai vai o codigo que peguei aqui mesmo
procedure TForm1.FormShow(Sender: TObject); var I : Integer; begin ComboBox1.Items.Clear; For I:= 1 to Printer.Printers.Count do Begin if Pos(´LPT´, printer.Printers.Strings[I-1]) > 0Then ComboBox1.Items.Add(´LPT1´) Else if Pos(´\\´, printer.Printers.Strings[I-1]) > 0 Then ComboBox1.Items.Add(Copy(printer.Printers.Strings[I-1], Pos(´\\´, printer.Printers.Strings[I-1]), length(printer.Printers.Strings[I-1]) - Pos(´\\´, printer.Printers.Strings[I-1]) + 1)); End; End; procedure TForm1.btImprimirClick(Sender: TObject); var I:Integer; Arquivo : TextFile; begin AssignFile(Arquivo,ComboBox1.text); Rewrite(Arquivo); WriteLn(Arquivo, ´TESTE DE IMPRESSAO - 1´); WriteLn(Arquivo, ´TESTE DE IMPRESSAO - 2´); WriteLn(Arquivo, ´TESTE DE IMPRESSAO - 3´); WriteLn(Arquivo, ´TESTE DE IMPRESSAO - 4´); CloseFile(Arquivo); end;
bom eu creio que o contra tempo esta na parte onde ta ali LPT1
se algueim souber a solução á e mais uma coisa como faso para imprimir em negrito italico sublinhado .... etc ???
se algueim souber irá me ajudar muitu
Obrigado desde já[size=7:165cd8ab45][/size:165cd8ab45][/code]
D31v1d1
Curtir tópico
+ 0Posts
03/02/2005
Vinicius2k
Se me permitir uma sugestão, utilize o VDOPrint -- http://devres.freeprohost.com
Creio que o pacote vai solucionar seus problemas com impressão em matricial e lhe dará os recursos que vc necessita, sem grande esforço.
Qualquer dúvida estou à disposição so fórum do site.
T+
Gostei + 0
03/02/2005
D31v1d1
mais mesmo assim agradeso pela ajuda vinicius :D
abs
Gostei + 0
03/02/2005
Vinicius2k
Então, por favor, me relate os bugs por MP, e-mail ou no meu fórum... eu tenho conhecimento de cerca de 100 usuários do componente, e ninguém nunca relatou nenhum problema... :wink:
Gostei + 0
04/02/2005
D31v1d1
Gostei + 0
04/02/2005
Vinicius2k
Então a situação é diferente: [b:6ee91facb2]garanto que seu chefe não testou meus componentes[/b:6ee91facb2]... ele apenas não quer que vc faça uso de componentes de 3ºs... ele quer que vc faça tudo usando só o que é nativo do Delphi.
Apesar de discordar, a posição dele é bastante comum e compreensível... mas existem muitos componentes bons e OpenSource, que cobrem várias lacunas deixadas pela VCL e facilitam muito o trabalho de desenvolvimento ou até mesmo implementam coisas que o Delphi não tem.
Sucesso e Boa sorte !
T+
Gostei + 0
04/02/2005
Aroldo Zanela
Não testei a solução do Vinícios, mas tenho certeza que é funcional. Não vejo uma solução simples para o seu problema sem o uso de ferramentas ou componentes de terceiros.
Gostei + 0
04/02/2005
Marcio.theis
AssignFile(caminho,´Teste.bat´); Rewrite(caminho); if strAux = ´´ then Writeln(caminho,´type Teste.txt >lpt1´) -> Na porta LPT1, local. else Writeln(caminho,´type Teste.txt >´+strAux); -> Via rede. CloseFile(caminho); WinExec(´Teste.bat´, 1);
Gostei + 0
04/02/2005
D31v1d1
nunca cheguei a mexer com isso será que poderia me esplicar melhor?
tipo onde coloco aquele codigo? como faso funcionar? presizo de algo mais?
como disse ainda sou novato se poder espero uma resposta :D
abs
Gostei + 0
04/02/2005
Marcio.theis
procedure TForm1.BitBtn1Click(Sender: TObject); var texto: TextFile; caminho, strAux: string; x: integer; begin caminho:=´Teste.txt´; //Se quizer via rede deve-se colocar: // \\nome_da_máquina\nome_do_COMPARTILHAMENTO_da_impressora (sem espaço deve de estar o compartilhamento) AssignFile(texto, caminho); Rewrite(texto); for x:=0 to 5 do WriteLn(texto, ´TESTE DE IMPRESSAO ´ + IntToStr(x)); CloseFile(texto); //Arquivo bat caminho:=´Teste.bat´; AssignFile(texto,caminho); Rewrite(texto); if strAux = ´´ then Writeln(texto,´type Teste.txt >lpt1´) //Local LPT1 else Writeln(texto,´type Teste.txt >´ + strAux); //Via Rede CloseFile(texto); WinExec(PChar(caminho), 1); end;
A única coisa que deve cuidar neste tipo de impressão é com os caracteres com ascento ou especiais.
Espero ter ajudado,
Gostei + 0
23/02/2005
Ricardo.vano
Olá...não encontrei no site uma versão para Delphi 2005. É possível que eu consiga instalar o componente mesmo assim?
Obrigado :D
Gostei + 0
24/02/2005
Vinicius2k
Colega,
Infelizmente, não tive tempo para trabalhar alguma adaptação com amigos que possuem o Delphi 2K5.
Talvez seja possível a instalação, já que o pacote é acompanhado dos fontes, mas não posso garantir-lhe pois ainda não tive nenhum contato com o Delphi 2K5.
T+
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)