एप्लेट में ग्राफिक्स प्रदर्शित करना

एप्लेट में हम विभिन्न ग्राफिक्स जैसे लाईन, वर्ग, आयत आदि को प्रदर्शित कर सकते हैं। इसके लिए हमें Graphics क्लास के कुछ मैथड्स का प्रयोग करना होता है। जिनमें से कुछ निम्नानुसार है-

मैथड कस नाम विवरण
drawLine(...) इस मैथड का प्रयोग एक लाइन बनाने के लिए होता है।
drawRect(...) इस मैथड का प्रयोग एक आयत बनाने के लिए होता है।
fillRect(...) इस मैथड का प्रयोग एक भरा हुआ आयत बनाने के लिए होता है।
drawRoundRect(...) इस मैथड का प्रयोग एक घुमावदार कोने वाला आयत बनाने के लिए होता है।
fillRoundRect(...) इस मैथड का प्रयोग एक घुमावदार भरा हुआ कोने वाला आयत बनाने के लिए होता है।
drawOval(...) इस मैथड का प्रयोग एक अण्डाकार बनाने के लिए होता है।
fillOval(...) इस मैथड का प्रयोग भरा हुआ अण्डाकार बनाने के लिए होता है।
drawArc(...) इस मैथड का प्रयोग एक चाप बनाने के लिए होता है।
setColor(...) इस मैथड का प्रयोग रंग सेट करने के लिए होता है।

नीचे दिए गए उदाहरण में ग्राफिक्स क्लास के कुछ मैथड्स का प्रयोग किय गया है।

import java.awt.*;
import java.applet.*;
public class app4 extends Applet
{
   public void paint(Graphics g)
   {
     g.drawLine(10, 10, 200, 10);
     g.setColor(Color.red);
     g.drawRect(50, 20, 200, 100);
     g.fillRect(70, 30, 160, 80);
     g.setColor(Color.green);
     g.drawRoundRect(50, 140, 200, 100, 5, 10);
     g.fillRoundRect(70, 150, 160, 80, 10, 5);
     g.setColor(Color.blue);
     g.drawOval(80, 35, 140, 70);
     g.fillOval(80, 155, 140, 70);
     g.drawArc(100, 250, 100, 100, 45, 110);
   }
}

HTML File:

<html>
<body>
  <applet code = "app4.class" height=350 width=300>
  </applet>
</body>
</html>

नीचे दिए गए उदाहरण में पाॅलीगन बनाया गया है।

import java.awt.*;
import java.applet.*;
public class app5 extends Applet
{
   public void paint(Graphics g)
   {
     int x[] = {10, 170, 80, 10};
     int y[] = {20, 40, 140, 20};
     int n = 4;
     g.drawPolygon(x, y, n);
   }
}

HTML File:

<html>
<body>
  <applet code = app5.class height=300 width=300>
  </applet>
</body>
</html>

repaint() मैथड

repaint() मैथड awt पैकेज की Component क्लास में होता है। यह मैथड इसी क्लास के update() मैथड को काॅल करता है तथा update() मैथड paint() मैथड को काॅल करता है।

getDocumentBase() मैथड

getDocumentBase() मैथड Applet क्लास का ही एक मैथड है। यह एप्लेट फाइल का URL अर्थात् पाथ एवं फाइल का नाम रिटर्न करता है।

import java.awt.*;
import java.applet.*;
import java.net.*;

/*<applet code="MyApplet.java" height=200 width=300> */

public class MyApplet extends Applet
{
	public void paint(Graphics g)
	{
		URL db;
		db = getDocumentBase();
		g.drawString(db.toString(), 10, 100);
	}
}
C:\JDK1.7\bin>javac MyApplet.java
C:\JDK1.7\bin>appletviewer MyApplet.java

getCodeBase() मैथड

getCodeBase() मैथड भी Applet क्लास का ही एक मैथड है। यह एप्लेट फाइल का पाथ रिटर्न करता है।

import java.awt.*;
import java.applet.*;
import java.net.*;

/*<applet code="MyApplet.java" height=200 width=300> */

public class MyApplet extends Applet
{
	public void paint(Graphics g)
	{
		URL cb;
		cb = getCodeBase();
		g.drawString(cb.toString(), 10, 100);
	}
}
C:\JDK1.7\bin>javac MyApplet.java
C:\JDK1.7\bin>appletviewer MyApplet.java

setForeground() मैथड

यह Component क्लास का एक मैथड है जो कि awt पैकेज में है। इसकी सहायता से एप्लेट पर प्रदर्शित होने वाले ग्राफिक्स के रंगों को सेट किया जा सकता है।

setBackground() मैथड

यह भी Component क्लास का एक मैथड है जो कि awt पैकेज में है। इसकी सहायता से एप्लेट के बैक ग्राउंड कलर को सेट किया जा सकता है।

import java.awt.*;
import java.applet.*;
import java.net.*;

/*<applet code="MyApplet.java" height=200 width=300> */

public class MyApplet extends Applet
{
	public void paint(Graphics g)
	{
		setBackground(Color.yellow);
		setForeground(Color.blue);

		g.drawString("Hello Java", 14, 100);
		g.drawRect(8, 80, 80, 30);
	}
}

Color क्लास के कंस्ट्रक्टर की सहायता से हम RGB(red, green, blue) वैल्यूज़ देकर इच्छानुसार अपना कलर भी डिफाइन कर सकते हैं।

import java.awt.*;
import java.applet.*;
import java.net.*;

/*<applet code="MyApplet.java" height=200 width=300> */

public class MyApplet extends Applet
{
  public void paint(Graphics g)
  {
	Color c = new Color(25,255,100);
	setForeground(c);

	g.drawString("Hello Java", 14, 100);

	g.setColor(new Color(240, 100, 200));
	g.drawString("Hello Java", 14, 150);
  }
}

setPaintMode() मैथड

यह Graphics क्लास का एक मैथड है जो कि awt पैकेज में है। इस मैथड का प्रयोग स्क्रीन पर पेंट मोड में ग्राफिक ड्राॅ करने के लिए किया जाता है। अर्थात् इसमें पहले से ड्राॅ किए ग्राफिक पर यदि दूसरा ग्राफिक ड्राॅ किया जाता है तो पहला वाला ग्राफिक overlap हो जाता है। यह डिफाॅल्ट मोड होता है।

setXORMode() मैथड

यह भी Graphics क्लास का एक मैथड है। इस मैथड का प्रयोग स्क्रीन पर ज़ाॅर मोड में ग्राफिक ड्राॅ करने के लिए किया जाता है। अर्थात् इसमें पहले से ड्राॅ किए ग्राफिक पर यदि दूसरा ग्राफिक ड्राॅ किया जाता है तो पहला वाला ग्राफिक भी प्रदर्शित होता है। इस ओवरलैप्ड ग्राफिक में setXORMode() मैथड में दिया गया कलर प्रदर्शित होता है।

import java.awt.*;
import java.applet.*;
import java.net.*;

/*<applet code="MyApplet.java" height=200 width=300> */

public class MyApplet extends Applet
{
	public void paint(Graphics g)
	{
		g.setColor(Color.blue);
		g.fillRect(20, 10, 100, 100);

		g.setXORMode(Color.green);
		g.fillRect(50, 40, 100, 100);

		g.setPaintMode();
		g.fillRect(80, 70, 100, 100);
	}
}

फोंट परिवर्तित करना

एप्लेट पर प्रदर्षित होने वाले टैक्स्ट को किसी विषेष फोंट, स्टाइल तथा साइज़ में प्रदर्शित कराया जा सकता है। इसके लिए Font क्लास के कंस्ट्रक्टर का प्रयोग किया जाता है। फोंट का स्टाइल निर्धारित करने के लिए Font क्लास के निम्न काॅन्सटेंट को प्रयोग किया जाता हैः

  • Font.PLAIN
  • Font.BOLD
  • Font.ITALIC
  • Font.BOLD + Font.ITALIC

नीचे दिए गए उदाहरण में एप्लेट में दो बार hello को अलग-अलग फोंट में प्रिंट कराया गया है। फोंट को apply करने के लिए setFont() मैथड का प्रयोग किया गया है।

import java.awt.*;
import java.applet.*;

/*<applet code="MyApplet.class" height=200 width=300>*/

public class MyApplet extends Applet
{
	public void paint(Graphics g)
	{
		Font f = new Font("Courier new", Font.ITALIC, 16);
		g.setFont(f);
		g.drawString("Hello", 10, 100);

		g.setFont(new Font("Arial", Font.BOLD+Font.ITALIC, 16));
		g.drawString("Hello", 10, 150);
	}	
}

इमेज प्रदर्शित कराना

एप्लेट में किसी इमेज को प्रदर्शित करवाने के लिए Applet क्लास के getImage() मैथड तथा Graphics क्लास के drawImage() मैथड का प्रयोग किया जाता है। नीचे दिए गए उदाहरण में एप्लेट में एक इमेज को प्रदर्शित कराया गया है।

import java.awt.*;
import java.applet.*;

/*<applet code="MyApplet.class" height=200 width=300>*/

public class MyApplet extends Applet
{
	Image i;
	public void paint(Graphics g)
	{
		i = getImage(getCodeBase(), "fish.gif");
		g.drawImage(i, 120, 80, this);
	}	
}
सुझाव / कमेंट