4.1.6 텍스트 그리기

6196 단어
물론 우리는 직선, 형상, 점만 그리는 것이 아니다.drawText 방법을 사용하여 Canvas 대상에 텍스트를 그릴 수 있습니다.그림% 1개의 캡션을 편집했습니다.Paint 클래스에는 사용할 수 있는 텍스트 크기를 설정하는 setTextSize 라는 방법이 있습니다.
1         Paint paint=new Paint();

2         paint.setColor(Color.GREEN);

3         paint.setTextSize(40);

4         float text_x=120;

5         float text_y=120;

6         canvas.drawText("Hello", text_x, text_y, paint);

    1.기본 글꼴
텍스트를 그릴 때 글꼴이나 스타일을 지정할 수 없으면 매우 제한됩니다.다행히도, Paint 클래스는 setTypeface 방법을 호출해서 Typeface 대상을 전송해서 어떤 글꼴을 사용해야 할지 지정할 수 있습니다.
Typeface 클래스에는 안드로이드 운영 체제에 포함된 내장 글꼴을 나타내는 많은 상수가 정의되어 있습니다.이 글꼴들은 Ascender라는 회사(www.ascender corp.com/)에서 만든 것으로 Droid 글꼴 세트의 일부분이다.
이러한 글꼴은 Typeface 클래스에서 다음과 같이 정의됩니다.
     Typeface.MONOSPACE: 이 글꼴의 자모마다 같은 간격이 있습니다.
     Typeface.SNAS_SERIF: 안감 없는 글꼴입니다.
     Typeface.SERIF: 라이닝(serif)이 포함된 글꼴입니다.
참고: 라이너(serif)는 행의 끝에서 문자를 구성하는 짧은 선입니다.
이 세 가지 주요 글씨체를 제외하고는 다른 두 개의 글씨체 상량도 있다.
     Typeface.DEFAULT: 이 글꼴은 안감 없는 글꼴과 같습니다. setTypeface를 호출하지 않으면 기본 글꼴을 사용합니다.
     Typeface.DEFAULT_BOLD: 안감 없는 글꼴의 굵은 버전입니다.
1         Paint paint=new Paint();

2         paint.setColor(Color.GREEN);

3         paint.setTextSize(40);

4  paint.setTypeface(Typeface.DEFAULT_BOLD); 5         float text_x=120;

6         float text_y=120;

7         canvas.drawText("Hello", text_x, text_y, paint);

    2.글꼴 스타일
또한 기본 글꼴과 함께 Typeface 클래스에 일련의 스타일 상수가 정의되어 있습니다.Typeface 클래스에 존재하는create 방법을 사용하면 이러한 스타일을 내장 글꼴을 수정하는 데 사용할 수 있습니다.이 메서드는 사용 가능한 새로운 Typeface 객체를 반환합니다.
다음은 Typeface 클래스에 정의된 스타일 목록입니다.
    Typeface.BOLD:굵게
    Typeface.ITALIC:기울임꼴
    Typeface.NORMAL: 일반
    Typeface.BOLD_ITALIC: 굵은 기울임꼴
그것들을 사용하는 것은 매우 간단하다.Typeface를 먼저 호출합니다.create, 사용하고자 하는 기본 글꼴과 스타일을 전송합니다.그리고paint에 전달할 수 있습니다.setTypeface 메서드의 Typeface 객체입니다. 이것이 바로 필요한 프로세스입니다.다음은 간단한 예이다.
1         Paint paint=new Paint();

2         paint.setColor(Color.GREEN);

3         paint.setTextSize(40);

4         Typeface serif_italic=Typeface.create(Typeface.SERIF, Typeface.ITALIC);

5         paint.setTypeface(serif_italic);

6         float text_x=120;

7         float text_y=120;

8         canvas.drawText("Hello", text_x, text_y, paint);

    3.외부 글꼴
안드로이드 응용 프로그램은 내장 글꼴만 사용할 수 있습니다.Android는 TrueType 글꼴 파일에서 Typeface 객체를 만들 수 있습니다.TrueType 글꼴은 표준 글꼴이며 다양한 플랫폼에서 사용할 수 있습니다.이것은 우리의 응용 프로그램에 광범위한 가능성을 가져왔다.
인터넷에는 많은 사이트에서 무료 글씨체를 제공하는데, 물론 글씨체를 만드는 디자인 단위와 회사에서 글씨체를 사용하는 허가를 받기도 한다.
안드로이드 내장 글꼴과 전혀 다른 글꼴은 Claude Pelletier에서 만든 Chopin Script 글꼴입니다.그것은 공공 분야를 대상으로 각종 출처를 통해 무료로 다운로드할 수 있다. 예를 들어 fontspace 등이다.com(www.fontspace.com/diogene/chopinscript) 등.이 글꼴을 사용하기 위해서 다운로드하고.ttf 파일(chopinscript.ttf)을 프로젝트의 "assets"폴더에 넣습니다.
   Typeface.createFromAsset 방법은 AssetManager 대상과 파일의 이름을 매개 변수로 받아들일 수 있습니다. 그 중에서 AssetManager 대상은 Context에서 getasset을 호출해서 얻을 수 있습니다.이 메서드는 paint에 전달할 수 있는 Typeface 객체를 반환합니다.setTypeface 메서드.
1    Typeface chops=Typeface.createFromAsset(getAssets(), "ChopinScript.ttf");

2    paint.setTypeface(chops);

    4.경로의 텍스트
수평선에서 텍스트를 그릴 뿐만 아니라또한 경로에 그것을 그릴 수 있습니다.
1         Paint paint=new Paint();

2         paint.setColor(Color.GREEN);

3         paint.setTextSize(40);

4         paint.setTypeface(Typeface.DEFAULT);

5         Path p=new Path();

6         p.moveTo(20, 20);

7         p.lineTo(100, 150);

8         p.lineTo(200, 220);

9         canvas.drawTextOnPath("Hello", p, 0, 0, paint);

좋은 웹페이지 즐겨찾기