Kral-Forum - En Büyük Paylaşım Platformu
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Kral-Forum - En Büyük Paylaşım Platformu

Alemin En Kral Paylaşım Platform Sitesi
 
AnasayfaPortalLatest imagesKayıt OlGiriş yapsitemiekle

 

 Java Uygulamasından Yazıcıya Bilgi Yollamak

Aşağa gitmek 
YazarMesaj
By LaZoLi53
Administratör
By LaZoLi53


Erkek Mesaj Sayısı : 152
Nerden : mars\'dan
İş/Hobiler : pc,hacked
Kayıt tarihi : 18/02/08

By Poyraz
masterhack:
Java Uygulamasından Yazıcıya Bilgi Yollamak Left_bar_bleue0/0Java Uygulamasından Yazıcıya Bilgi Yollamak Empty_bar_bleue  (0/0)

Java Uygulamasından Yazıcıya Bilgi Yollamak Empty
MesajKonu: Java Uygulamasından Yazıcıya Bilgi Yollamak   Java Uygulamasından Yazıcıya Bilgi Yollamak Icon_minitimeC.tesi Mart 22, 2008 12:39 pm

Java Uygulamasından Yazıcıya Bilgi Yollamak
Java'da
print işlemleri AWT vasıtasıyla gerçekleştiriliyor. Bizim için en
önemli sınıf java.awt.PrintJob sınıfı. Bu sınıf vasıtasıyla yazıcınızın
özelliklerini öğrenebilirsiniz. Bunun için aşağıdaki fonksiyonlar
mevcuttur.


int getPageResolution()
Dimension getPageDimension()
boolean lastPageFirst()

getPageResolution( ):

Inç başına düşen nokta sayısını verir.

getPageDimension( ):

Yazılabilir alanın piksel olarak boyutlarını verir.

lastPageFirst( ):

Eğer son sayfa ilk önce basılacak ise true yollar, en son basılacaksa
false yollar. Eğer bu kodu bir frame içinde çalıştırdığımız düşünürsek
bu kod aşağıdaki gibi olacaktır.

java.awt.PrintJob pjob = getToolkit().getPrintJob( this,"Liste Yazimi", ozellikler);

Burada this kullandığımız Frame'i ifade ediyor.

Yukardaki fonksiyonlardan dönen bilgileri kullanarak sayfaya çizim
işlemlerinin nasıl gerçekleşeceğini kendiniz belirleyeceksiniz.
Kısacana bu bilgiler yardımıyla kağıdın dışına taşmamayı ve kağıtların
basım sırasına göre yazıcıya gidecek bilgiyi ayarlayacaksınız.

İlk olarak bir PrintJob nesnesine ihtiyacımız var.

Çizim işlemi appletin draw fonksiyonundaki gibi java.awt.Graphics
sınıfı yardımıyla gerçekleşir. Bu sınıfın desteklediği her türlü çizim
işlemini yapabilirsiniz. Grephics nesnesini PrintJob'tan aşağıdaki
şekilde ulaşmalısınız.

java.awt.Graphics sayfa = pjob.getGraphics();

Şimdi sıra unutmamanız gereken noktaya geldi. PrintJob'tan alınan
Graphics objesinine bir font atanmamıştır. Eğer sizde bir font
atamazsanız program sırasında exception yemektesiniz. Bundan dolayı
Graphics nesnesini çizim için kullanmadan önce fontunu ayarlamalısınız.


Font helv = new Font("Helvetica", Font.PLAIN, 12);
sayfa.setFont(helv);


Fontumuzuda ayarladığımıza göre artık çizim işlemlerine geçebiliriz.
Burada başlangıçtada bahsettğimiz bir kaç noktaya tekrar deyinmemizde
yarar görmekteyim. Sayfaya çizim yaparken sayfanın dışına çizdirme
yapmamak için belli kontroller yapmalısınız. ( eni aşmama, boyu aşmama
gibi ) . Bu işlem için ise kullandığınız fontun boyutları bilimenizde
yarar var. Aşağıda bir fontun boyutlarının naıl alınacağına dağir
kodları görebilirsiniz.


FontMetrics fm = sayfa.getFontMetrics(helv);
int fontHeight = fm.getHeight();
int fontDescent = fm.getDescent();


Bu işlemden sonra istediğiniz çizimleri yapabilirsiniz. Her sayfa
sonunda Graphics nesnesini dispose edip, yeni sayfa için PrintJob'tan
tekrar istemelisiniz. Yazıcıya bilgiler Graphics nesnesi dispose
olduktan sonra yollanmaktadır. Sayfa sonları için aşağıdakine benzer
bir kod görebilirsiniz. Dikkat edilecek olursa fontu set etmeyi
unutmuyoruz.


sayfa.dispose();
sayfa = pjob.getGraphics();
if (sayfa != null)
{
sayfa.setFont (helv);
}


En sonuda da PrintJob işlemini end( )ile sonlandırıyoruz.

pjob.end();

Örnek Program:

Yazımış olduğum örnek uygulama bir frame içersinde bir list, button,
text field ve label dan oluşmaktadır. Textfield'e yazdıktan sonra
enter'a bastığınızda text field içindeki bilgi listeye eklenmekte . Yaz
buttonuna bastığınızda ise bu bilgi yazıcıya gönderilmektedir. Bu
sırada label içersinde durumu belirten mesajlar yazılmaktadır. Yazdırma
işlemi program içersinde yaz() fonksiyonunda yapılmaktadır

Programdan bir görüntü aşağıdaki gibidir. Bu görüntü yaz tuşuna
basıldıktan sonra elde edilmiştir. Yaz tuşuna basıldığında Yazıcıya ait
ekran geliyor.

Java Uygulamasından Yazıcıya Bilgi Yollamak Yazici Programı nasıl çalıştıracağım

Kodu javac PrintTest2.java şeklinde derleyiniz. PrintTest2.class dosyası oluşacak
java PrintTest2 şeklinde programı çalıştırınız.

Programı İndirmek İçin Tıkla
Sayfa başına dön Aşağa gitmek
https://kral-forum.catsboard.com
 
Java Uygulamasından Yazıcıya Bilgi Yollamak
Sayfa başına dön 
1 sayfadaki 1 sayfası
 Similar topics
-

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
Kral-Forum - En Büyük Paylaşım Platformu :: Programlama Dilleri :: Java/JSP-
Buraya geçin: