Skip to content

Instantly share code, notes, and snippets.

@agiletalk
Created May 24, 2011 16:42
Show Gist options
  • Save agiletalk/989084 to your computer and use it in GitHub Desktop.
Save agiletalk/989084 to your computer and use it in GitHub Desktop.
[예제] Text 객체 그리기
public void onDraw(Canvas canvas) {
Paint Pnt = new Paint();
canvas.drawColor(Color.WHITE);
String str = "Made in Korea";
char[] arCh = {'a', 'b', 'c'};
// 기본 문자열 출력. 안티 알리아싱을 적용했다.
Pnt.setAntiAlias(true);
Pnt.setColor(Color.BLACK);
canvas.drawText(str, 10, 10, Pnt);
canvas.drawText(str, 2, 11, 10, 30, Pnt);
canvas.drawText(arCh, 0, 3, 10, 50, Pnt);
// 수평 정렬
Pnt.setTextAlign(Paint.Align.LEFT);
canvas.drawText("Left Align", 100, 90, Pnt);
Pnt.setTextAlign(Paint.Align.CENTER);
canvas.drawText("Center Align", 100, 110, Pnt);
Pnt.setTextAlign(Paint.Align.RIGHT);
canvas.drawText("Right Align", 100, 130, Pnt);
// 수직 정렬은 항상 글꼴의 베이스의 맞춰진다.
Pnt.setTextAlign(Paint.Align.LEFT);
Pnt.setColor(Color.RED);
canvas.drawText("Small", 10, 180, Pnt);
Pnt.setTextSize(20);
canvas.drawText("Mid", 40, 180, Pnt);
Pnt.setTextSize(30);
canvas.drawText("Big", 80, 180, Pnt);
Pnt.setTextSize(40);
canvas.drawText("Hy", 125, 180, Pnt);
// 여러 가지 속성 동시에 적용해 보기
Pnt.setColor(Color.BLUE);
Pnt.setTextAlign(Paint.Align.LEFT);
Pnt.setTextSize(30);
Pnt.setTypeface(Typeface.create((String)null, Typeface.BOLD));
Pnt.setUnderlineText(true);
Pnt.setStrikeThruText(true);
Pnt.setSubpixelText(true);
Pnt.setTextSkewX(-0.25f);
Pnt.setTextScaleX(0.8f);
canvas.drawText(str, 10, 220, Pnt);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment