Dot Matrix Rapor
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
- kadirkurtoglu
- Üye
- Mesajlar: 748
- Kayıt: 22 May 2005 01:20
- Konum: Uzakta Görünen Tepeden...
Dot Matrix Rapor
s.a.
arkadaşlar dotmatrix tarzda raporlar türetmek için alternatif fikirler aramaktayım.
forumda arama yaptım ancak net bir neticeye ulaşamadım. aşağıdaki linkte arkadaşlar konuşmuşlar
viewtopic.php?t=12150&highlight=dot+matrix
ben bir ticari programı incelediğimde QRep. kullandığını gördüm. + yazıcı tanımları bölümünde dışardan Normal.esc isimli bir yazıcı konrtol kod dosyasını kullandığını. bu dosyayı açtığımda 15 18 şeklinde rakamlara ulaştım. aynı dosyayı programla açtığımda genel başlangıç 15 genel bitiş 18 şeklinde aynı rakamları bu alanlara getiriyor. bu tanımlarla QRep. ta hazırlanan raporu önizleme ekranındaki ile aynı şekilde dotmatrix basıyor. burda anlamaya çalıştığım 15 ve 18 değerlerini yazdırılacak belgeye parametre olarakmı gönderiyor. yazıcı da bu parametreleri dikkate alarak raporu dot matrix tarzda basıyor. bu değerleri rapora ya da yazıcıya nasıl gönderebiliriz.. bu konuda çalışma yapan arkadaşlardan fikirlerini bekliyorum...
arkadaşlar dotmatrix tarzda raporlar türetmek için alternatif fikirler aramaktayım.
forumda arama yaptım ancak net bir neticeye ulaşamadım. aşağıdaki linkte arkadaşlar konuşmuşlar
viewtopic.php?t=12150&highlight=dot+matrix
ben bir ticari programı incelediğimde QRep. kullandığını gördüm. + yazıcı tanımları bölümünde dışardan Normal.esc isimli bir yazıcı konrtol kod dosyasını kullandığını. bu dosyayı açtığımda 15 18 şeklinde rakamlara ulaştım. aynı dosyayı programla açtığımda genel başlangıç 15 genel bitiş 18 şeklinde aynı rakamları bu alanlara getiriyor. bu tanımlarla QRep. ta hazırlanan raporu önizleme ekranındaki ile aynı şekilde dotmatrix basıyor. burda anlamaya çalıştığım 15 ve 18 değerlerini yazdırılacak belgeye parametre olarakmı gönderiyor. yazıcı da bu parametreleri dikkate alarak raporu dot matrix tarzda basıyor. bu değerleri rapora ya da yazıcıya nasıl gönderebiliriz.. bu konuda çalışma yapan arkadaşlardan fikirlerini bekliyorum...
Bir mum, yanındaki mumları tutuşturmakla,
ışığında hiç bir şey kaybetmez.
Mevlana
OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
ışığında hiç bir şey kaybetmez.
Mevlana
OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
- kadirkurtoglu
- Üye
- Mesajlar: 748
- Kayıt: 22 May 2005 01:20
- Konum: Uzakta Görünen Tepeden...
diğer dosyalar ise
Compress için
Başlangıç 27 67 66 15
Bitiş 27 67 66 18
Büyük fontlar için
Başlangıç 18
Bitiş 18
bu kodların dotmatrix e etkisi muhakkak var ancak nasıl?
Compress için
Başlangıç 27 67 66 15
Bitiş 27 67 66 18
Büyük fontlar için
Başlangıç 18
Bitiş 18
bu kodların dotmatrix e etkisi muhakkak var ancak nasıl?
Bir mum, yanındaki mumları tutuşturmakla,
ışığında hiç bir şey kaybetmez.
Mevlana
OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
ışığında hiç bir şey kaybetmez.
Mevlana
OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
- kadirkurtoglu
- Üye
- Mesajlar: 748
- Kayıt: 22 May 2005 01:20
- Konum: Uzakta Görünen Tepeden...
arşatırmalarım sonucunda 15 ve 18 in Ascii değerler olduğunu yazdırılacak raporun başına Ascii karekterlerinin yerleştirildiğini gördüm.
15 ile ilgili ascii karekteri başa
18 ile ilgili asci karekteri sona
tabi burda 27 ESC nin karekteride gelebiliyor sona. sanırım bu raporun sonu anlamına geliyor. Compress de rakam fazlalılığı ise Ascii kodların yan yana eklenmesi Ctrl + O kod dizimin ortaya çıkması. bunların dışında sayfa başı ascii karekteri ile de işlem sonlanıyor. bende bu tip bir kullanım yapacam. başka çare görünmüyor.. yalnız buda ascii değerler rakam olarak değil kareketer olarak eklenecek. rakamlar text format gibi algılanıyor karekterler ise dotmatrix raporu ortaya çıkarıyor...
15 ile ilgili ascii karekteri başa
18 ile ilgili asci karekteri sona
tabi burda 27 ESC nin karekteride gelebiliyor sona. sanırım bu raporun sonu anlamına geliyor. Compress de rakam fazlalılığı ise Ascii kodların yan yana eklenmesi Ctrl + O kod dizimin ortaya çıkması. bunların dışında sayfa başı ascii karekteri ile de işlem sonlanıyor. bende bu tip bir kullanım yapacam. başka çare görünmüyor.. yalnız buda ascii değerler rakam olarak değil kareketer olarak eklenecek. rakamlar text format gibi algılanıyor karekterler ise dotmatrix raporu ortaya çıkarıyor...
Bir mum, yanındaki mumları tutuşturmakla,
ışığında hiç bir şey kaybetmez.
Mevlana
OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
ışığında hiç bir şey kaybetmez.
Mevlana
OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
DOS programlarında Dot Matrix printer larda yazdırma işlemi yapılırken koyu, geniş veya printer'in tanıdığı fontları kullanmak için ESC kodları kullanılmakta idi. Bu kodları kullanmaz iseniz programın çıktısı aynı karakterle yazılmakta idi.
ESC kodları her printer la birlikte manuel'inden bulunabilmekte.
Bahsettiğiniz kodlar ESC kodları olsa gerek.
koyu yazdırmak için bir kod,
wide yazdırma için başka bir kod,
normal dönmek için başka bir kod gibi
ESC kodları her printer la birlikte manuel'inden bulunabilmekte.
Bahsettiğiniz kodlar ESC kodları olsa gerek.
koyu yazdırmak için bir kod,
wide yazdırma için başka bir kod,
normal dönmek için başka bir kod gibi
Karsilastiginiz sorunlari, o sorunlari yarattiginiz düsünce düzleminde kalarak çözemezsiniz.
Einstein.
Einstein.
- kadirkurtoglu
- Üye
- Mesajlar: 748
- Kayıt: 22 May 2005 01:20
- Konum: Uzakta Görünen Tepeden...
Herşeyi baştan alalım...
- QuickReport ile çıktı alınan yerler vardır o muhakkak ama grafik baskı yaptığından bu kodlar devreye giremez...
- Biliyorsunuz bir projede dilediğiniz ölçüde istediğiniz kadar raporlama aracını aynı anda barındırabilirsiniz ama baskı için birini seçmelisiniz. Sizin irdelediğiniz projede de durum bundan ibaret.
- Yazıcıya Escape Karakterleri gönderebileceğini imkan aşağıdaki gibidir.
- Örnekte görüleceği üzere #27#80#1 koyu yazmayı aktifleştiren escape koddur, #27#80#2 ise eski haline döndüren escape kod.
- Bu aşamada size lazım olan şey bu kodların listesi ki zaten bulmuşsunuz. Uygulama şekli de #27#asc şeklindedir.
- Çıktılarınızı yaparken yazıcınızı iyi tanımanız gerekir. Normalde feed'de A4 bir sürekli form / kağıt 66 satırdır ve standarttır. Yazı aralıklarıyla MicroFeed yaparak oynayabilirsiniz bu rakam o zaman değişir.
- İleri ve geri sardırma işlemi yapabilirsiniz. Forumda daha önce konuşuldu.
- Vs.vs. Şimdi uygulamanızı yapın, takıldığınız yer olursa örneklerinizle birlikte sorun...
- QuickReport ile çıktı alınan yerler vardır o muhakkak ama grafik baskı yaptığından bu kodlar devreye giremez...
- Biliyorsunuz bir projede dilediğiniz ölçüde istediğiniz kadar raporlama aracını aynı anda barındırabilirsiniz ama baskı için birini seçmelisiniz. Sizin irdelediğiniz projede de durum bundan ibaret.
- Yazıcıya Escape Karakterleri gönderebileceğini imkan aşağıdaki gibidir.
Kod: Tümünü seç
var
Dosya : Textfile;
begin
AssignFile(Dosya, 'LPT1');
ReWrite(Dosya);
WriteLn(Dosya, StringOfChar('-', 80) );
Write(Dosya, #27#80#1 );
WriteLn(Dosya, 'Satır 2');
Write(Dosya, #27#80#2 );
WriteLn(Dosya, 'Satır 3');
CloseFile(Dosya);
end;
- Bu aşamada size lazım olan şey bu kodların listesi ki zaten bulmuşsunuz. Uygulama şekli de #27#asc şeklindedir.
- Çıktılarınızı yaparken yazıcınızı iyi tanımanız gerekir. Normalde feed'de A4 bir sürekli form / kağıt 66 satırdır ve standarttır. Yazı aralıklarıyla MicroFeed yaparak oynayabilirsiniz bu rakam o zaman değişir.
- İleri ve geri sardırma işlemi yapabilirsiniz. Forumda daha önce konuşuldu.
Kod: Tümünü seç
Write(Dosya, #27#106#49);// geri sardırmak ESC+"j"+"1"
Write(Dosya, #27#74#49); // ileri sardırmak ESC+"J"+"1"
En son mrmarman tarafından 15 Ara 2006 11:33 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
-
- Kıdemli Üye
- Mesajlar: 1223
- Kayıt: 26 Nis 2005 04:08
@aLonE CoDeR
- Severek...
- DotMatix yazıcıları yapısal olarak incelersek, kağıt besleyici çarklar ve/veya tambur dönüşlerinin standart adımlarda olduğunu görürüz.
- Bunun amacı şudur, sürekli form diye tabir edilen onlarca hatta yüzlerce metre birbirine yapışık kağıt için satır kayması riskini ortadan kaldırmaktır.
- Siz bu adımlara dilediğiniz zaman MicroFeed komutları ile 1/nnn kadar ileri veya geri satır atlatma ile etki etmiş olursunuz. Bunu bilinçli bir şekilde yaparsanız bir sonraki adım için eski haline döndürebilir, tabiri doğru ise "kullanıcının saçını başını yolmasını" engellmiş olursunuz..

- Severek...
- DotMatix yazıcıları yapısal olarak incelersek, kağıt besleyici çarklar ve/veya tambur dönüşlerinin standart adımlarda olduğunu görürüz.
- Bunun amacı şudur, sürekli form diye tabir edilen onlarca hatta yüzlerce metre birbirine yapışık kağıt için satır kayması riskini ortadan kaldırmaktır.
- Siz bu adımlara dilediğiniz zaman MicroFeed komutları ile 1/nnn kadar ileri veya geri satır atlatma ile etki etmiş olursunuz. Bunu bilinçli bir şekilde yaparsanız bir sonraki adım için eski haline döndürebilir, tabiri doğru ise "kullanıcının saçını başını yolmasını" engellmiş olursunuz..


Bir de ben sorayım bu başlığı okuyanlar için de önemli..
-LPT1 değil de USB olan nokta vuruşlu yazıcılar gören oldu mu ?
Ref : http://www.superwarehouse.com/Okidata_M ... /ps/249584
- Bu yazıcı için Parallel and USB Port diyor..
- Acaba bunlara nasıl yollarız. Sanal LPT portu mu tanımlanmıştır sizce..
-LPT1 değil de USB olan nokta vuruşlu yazıcılar gören oldu mu ?
Ref : http://www.superwarehouse.com/Okidata_M ... /ps/249584
- Bu yazıcı için Parallel and USB Port diyor..
- Acaba bunlara nasıl yollarız. Sanal LPT portu mu tanımlanmıştır sizce..

- kadirkurtoglu
- Üye
- Mesajlar: 748
- Kayıt: 22 May 2005 01:20
- Konum: Uzakta Görünen Tepeden...
USB Nokta vuruşlu yazıcı hiç görmedim ancak USB Lazer yazıcılara DOS dotmatrix gönderim için sanal port tanımlanıyor. Yazıcının DOS desteği yoksa sanal destek programı kuruluyor.
Bir mum, yanındaki mumları tutuşturmakla,
ışığında hiç bir şey kaybetmez.
Mevlana
OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
ışığında hiç bir şey kaybetmez.
Mevlana
OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
- kadirkurtoglu
- Üye
- Mesajlar: 748
- Kayıt: 22 May 2005 01:20
- Konum: Uzakta Görünen Tepeden...
çalışma sonuçlandı..
kodlar
Dsoyadan yazdırmak için Procedur
Fastreport Dotmatrix Export Kodları
normal punto için Escape kodlarının dosyaya eklenmesi
ve hazır olan dosyayı yazdırma
kodlar
Dsoyadan yazdırmak için Procedur
Kod: Tümünü seç
procedure PrintFile(AFileToPrint: string);
var
Port, FileToPrint: TextFile;
ALine: string;
begin
AssignFile(FileToPrint, AFileToPrint);
Reset(FileToprint);
AssignFile(Port, 'LPT1');
Rewrite(Port);
while not Eof(FileToPrint) do
begin
Readln(FileToPrint, ALine);
Writeln(Port, ALine);
end;
CloseFile(Port);
CloseFile(FileToPrint);
end;
Kod: Tümünü seç
Dosya := ExtractFilePath(Application.ExeName) + 'dosya.prn';
if FileExists(dosya) then
Begin
DeleteFile(dosya);
end;
frxReport1.ShowReport(false);
frxTXTExport1.PageBreaks := true;
frxTXTExport1.EmptyLines := false;
frxTXTExport1.OEMCodepage := true;
frxTXTExport1.LeadSpaces := true;
frxTXTExport1.FileName := dosya;
frxPreview1.Export(frxTXTExport1);
Kod: Tümünü seç
Dosya := ExtractFilePath(Application.ExeName) + 'dosya.prn';
listbox1.Items.LoadFromFile(dosya);
listbox1.Items.Strings[0] := '';
listbox1.Items.Add('');
ListBox1.Items.SaveToFile(dosya);
ve hazır olan dosyayı yazdırma
Kod: Tümünü seç
PrintFile(Dosya);
Bir mum, yanındaki mumları tutuşturmakla,
ışığında hiç bir şey kaybetmez.
Mevlana
OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome
ışığında hiç bir şey kaybetmez.
Mevlana
OS win.10, IDE Delphi 10.3, RDBMS Firebird and MSSQL, BROWSER Chrome