您的位置:首页 > 大数据 > 人工智能

Paint---Typeface

2016-01-01 11:28 435 查看
Android系统默认支持三种字体,分别为:“sans”,“serif”,“monospace”。

android.graphic.typeface
字体类:

本类的常量静态定义,首先为字体类型(typeface)名称

字体类型(typeface)含义
Typeface DEFAULT
默认正常字体对象
Typeface DEFAULT_BOLD
默认的字体对象,注意:这实际上不可能是粗体的,这取决于字体设置。 由getStyle()来确定
Typeface MONOSPACE
monospace 字体风格
Typeface SANS_SERIF
sans serif字体风格
Typeface
SERIFserif字体风格
字体风格(style)含义
BOLD
加粗
BOLD_ITALIC
粗斜体
ITALIC
斜体
NORMAL
正常
设置TextView的字体可以通过TextView中的setTypeface方法来指定一个Typeface对象,因为Android的字体类

比较简单,我们列出所有成员方法:

static   Typeface    create(Typeface family, int  style)
//静态方法,参数一为字体类型这里是Typeface的静态定义,如宋体,参数二风格,如粗体,斜体

static   Typeface    createFromAsset(AssetManager mgr, String path)
//静态方法,参数一为AssetManager对象,主要用于从APK的assets文件夹中取出字体,参数二为相对于Android工程下的assets文件夹中的外挂字体文件的路径。

static   Typeface    createFromFile(File path)
//静态方法,从文件系统构造一个字体,这里参数可以是sdcard中的某个字体文件

static   Typeface    createFromFile(String path)
//静态方法,从指定路径中构造字体

static   Typeface    defaultFromStyle(int style)
//静态方法,返回默认的字体风格

int   getStyle()
//获取当前字体风格

final   boolean   isBold()
//判断当前是否为粗体

final   boolean   isItalic()
//判断当前风格是否为斜体

代码时间到了:



public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

LinearLayout linearlayout = (LinearLayout) findViewById(R.id.llayout);
for(int i=0;i<21;i++){
TextView textView = new TextView(this);
TextPaint paint = textView.getPaint();
textView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT));
String str;
Typeface typeface;
switch (i) {
case 0:
str="hello_world-----default";
typeface=Typeface.DEFAULT;
//              typeface=Typeface.create(Typeface.DEFAULT, Typeface.NORMAL);
break;
case 1:
str="hello_world-----DEFAULT_BOLD";
typeface=Typeface.DEFAULT_BOLD;
//必须要用paint设置Typeface.DEFAULT_BOLD才起作用
paint.setTypeface(Typeface.DEFAULT_BOLD);

//              typeface=Typeface.create(Typeface.DEFAULT_BOLD, Typeface.NORMAL);
break;
case 2:
str="hello_world-----MONOSPACE";
typeface=Typeface.MONOSPACE;
//              typeface=Typeface.create(Typeface.MONOSPACE, Typeface.NORMAL);
break;
case 3:
str="hello_world-----SANS_SERIF";
typeface=Typeface.SANS_SERIF;
//              typeface=Typeface.create(Typeface.SANS_SERIF, Typeface.NORMAL);
break;
case 4:
str="hello_world-----SERIF";
typeface=Typeface.create(Typeface.SERIF, Typeface.NORMAL);
break;
case 5:
str="hello_world-----Action_Man_Bold_Italic";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/Action-Man/Action_Man_Bold_Italic.ttf");
break;
case 6:
str="hello_world-----Action_Man_Bold";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/Action-Man/Action_Man_Bold.ttf");
break;
case 7:
str="hello_world-----Action_Man_Italic";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/Action-Man/Action_Man_Italic.ttf");
break;
case 8:
str="hello_world-----Action_Man";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/Action-Man/Action_Man.ttf");
break;
case 9:
str="hello_world-----SF_Arch_Rival_Bold_Italic";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/arch_rival/SF_Arch_Rival_Bold_Italic.ttf");
break;
case 10:
str="hello_world-----SF_Arch_Rival_Bold";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/arch_rival/SF_Arch_Rival_Bold.ttf");
break;
case 11:
str="hello_world-----SF_Arch_Rival_Italic";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/arch_rival/SF_Arch_Rival_Italic.ttf");
break;
case 12:
str="hello_world-----SF_Arch_Rival";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/arch_rival/SF_Arch_Rival.ttf");
break;
case 13:
str="hello_world-----JUICE_Bold_Italic";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/Juice/JUICE_Bold_Italic.ttf");
break;
case 14:
str="hello_world-----JUICE_Bold";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/Juice/JUICE_Bold.ttf");
break;
case 15:
str="hello_world-----JUICE_Italic";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/Juice/JUICE_Italic.ttf");
break;
case 16:
str="hello_world-----JUICE_Regular";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/Juice/JUICE_Regular.ttf");
break;
case 17:
str="hello_world-----Ubuntu-B";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/ubuntu/Ubuntu-B.ttf");
break;
case 18:
str="hello_world-----Ubuntu-BI";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/ubuntu/Ubuntu-BI.ttf");
break;
case 19:
str="hello_world-----Ubuntu-R";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/ubuntu/Ubuntu-R.ttf");
break;
case 20:
str="hello_world-----Ubuntu-RI";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"fonts/ubuntu/Ubuntu-RI.ttf");
break;
case 21:
str="hello_world-----MONACO";
// 获取字体并设置画笔字体
typeface = Typeface.createFromAsset(getAssets(),
"MONACO.ttf");
break;
default:
str="hello_world-----default";
typeface=Typeface.create(Typeface.DEFAULT, Typeface.NORMAL);
break;
}
textView.setText(str);
textView.setTypeface(typeface);
linearlayout.addView(textView);
}

}

}


源码下载

引用:

Android字体 - Embedded Girl - 博客频道 - CSDN.NET

Android字体设置及Roboto字体使用方法Android脚本之家

Typeface-Helper首页、文档和下载 - 自定义字体 - 开源中国社区

Android Typeface Helper自定义字体库_51CTO下载中心_IT技术资料免费下载

8.3.15 Paint API之——Typeface(字型) | 菜鸟教程

Android开发之assets目录下资源使用总结 - Android移动开发技术文章_手机开发 - 红黑联盟
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android 绘图 Typeface