前回、フォントの表示が遅い、と書きましたが、英数字のみをコンバートした場合は速いです。
和文字を含めてコンバートした場合は2MBくらいですが、英数字のみの場合はわずかに18KB!
はじめ、AllCharactersのデータの場合はロードに時間がかかるのかな?
と思ったのですが、クラスにしてクリックごとに生成されるようにしてみたところで、やはり同じくもたつきます。
快適に日本語を打つ方法があるんでしょうか?
今回はクラスを使ってみましたよ。まだドラッグできない。
//prosessing
XtPad r1 = new XtPad(10,10,100,20,color(50,50,50));
void setup() {
size(512, 512);
background(100);
stroke(200);
fill(127);
frameRate(15);
}
void draw() {
//background(100);
}
void mousePressed() {
if (mousePressed && (mouseButton == LEFT)){
r1.createPad();
}else if (mousePressed && (mouseButton == RIGHT)){
r1.movePad();
}
}
void mouseDragged() {
if (mousePressed && (mouseButton == RIGHT)){
r1.movePad();
}
}
----------------------------------------------------------------------------
class XtPad {
color pCol;
float xpos, ypos, rectWidth, rectHeight;
XtPad(float x, float y, float w, float h,color c){
xpos = x;
ypos = y;
rectWidth = w;
rectHeight =h;
pCol = c;
}
void createPad() {
fill(pCol);
rect(mouseX, mouseY, rectWidth, rectHeight);
//fill(pCol+color(20,20,20));
//ellipse(mouseX+10, mouseY+10, rectWidth/10, rectWidth/10);
PFont font;
font = loadFont("MS-Gothic-12.vlw");
textFont(font, 12);
fill(pCol+color(20,20,20));
text("ABCDEFG", mouseX+10, mouseY+15);
}
void movePad(){
xpos=mouseX;
ypos=mouseY;
}
}
制作・©:のぼる/N.Lab