My Aim is to append text on the images and save the image. I am able to append text on image. My question is How to Specify the Area For the text, and how to make it Multi line, so that if data does not cross to the border. Code:-
public Test()
{
s = "Welcome TO Image Rendering";
s1="Title data";
s2="DescriptionA fast paced action thriller about a stunt driver.He finds himself a target for some dangerous men after he agrees to help his beautiful neighbour, Irene. Subtitles: Chinesedata";
Font f = new Font("Serif",Font.BOLD,22);
text = new JLabel("Welcome TO Image Rendering");
text.setFont(f);
AttributedString astr = new AttributedString(s);
astr.addAttribute(TextAttribute.FOREGROUND, Color.red, 0, 1);
MediaTracker mt = new MediaTracker(this);
image = Toolkit.getDefaultToolkit().createImage("c://Ci_Audio.jpg");
mt.addImage(image,0);
try{mt.waitForID(0);}catch(InterruptedException ie){}
int width = image.getWidth(null);
int height = image.getHeight(null);
BufferedImage bimg = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
bimg.createGraphics().drawImage(image, 0, 0, this);
bimg.getGraphics().setFont(f);
bimg.getGraphics().drawString(s,10,50);
bimg.getGraphics().drawString(s1,38,40);
bimg.getGraphics().drawString(s2,188,84);
img = new ImageIcon(bimg);
label = new JLabel(img);
p = new JPanel();
p.add(label);
getContentPane().add(p);
}
public static void main(String args[])
{
Test tt = new Test();
tt.setDefaultCloseOperation(EXIT_ON_CLOSE);
tt.setSize(360,305);
tt.setVisible(true);
}
}
Here String s2 Won't fit to the image screen. Thanks in Advance.