• Post Reply Bookmark Topic Watch Topic
  • New Topic

how to use a canvas class

 
Amy konan
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
hello friend
I have a project in j2me and I'm totally lost so i wish someone could help me
well it's how to use the( Canvas )class for change the font in j2me
this is the class

class FontCanvas extends Canvas {
private Font mSystemFont, mMonospaceFont, mProportionalFont;

public FontCanvas() {
this(Font.STYLE_PLAIN);
}

public FontCanvas(int style) {
setStyle(style);
}

public void setStyle(int style) {
mSystemFont = Font.getFont(Font.FACE_SYSTEM, style, Font.SIZE_MEDIUM);
mMonospaceFont = Font.getFont(Font.FACE_MONOSPACE, style, Font.SIZE_MEDIUM);
mProportionalFont = Font.getFont(Font.FACE_PROPORTIONAL, style, Font.SIZE_MEDIUM);
}


public void paint(Graphics g) {
int w = getWidth();
int h = getHeight();

int x = w/2 ;
int y = 40;

y += showFont(g, "HELLO THISE IS MY PROG.", x, y, mSystemFont);
y += showFont(g, "HELLO THISE IS MY PROG.", x, y, mMonospaceFont);
y += showFont(g, "HELLO THISE IS MY PROG.", x, y, mProportionalFont);
}

private int showFont(Graphics g, String s, int x, int y, Font f) {
g.setFont(f);
g.drawString(s, x, y, Graphics.TOP | Graphics.HCENTER);

return f.getHeight();
}
}

my question is how could I make this class change the font for any word pass from MIDlet class(another class) ?
I mean in this code it's only change the font for "HELLO THISE IS MY PROG." sentence
what is the changes that I should do it on this class to make it change the font for any word according to my request(the word i send to it)?
and I'll be thankful for you all
my regards
 
Tim Holloway
Bartender
Posts: 18469
61
Android Eclipse IDE Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
A "canvas" is just a rectangular area that you can do raw graphics in. So you can't really do "smart" things using a Canvas like tell the text output functions to shift fonts for certain words.

When you paint into a canvass, what you get is exactly what you tell it to paint and no more and no less.
 
Amy konan
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
well this will change whole my project
any way thank you Tim
 
What are you doing? You are supposed to be reading this tiny ad!
the new thread boost feature brings a LOT of attention to your favorite threads
https://coderanch.com/t/674455/Thread-Boost-feature
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!