1,从Assets 中取得字体格式
(1)通过 AssetManager mManger = getAssets();
(2)然后 通过Typeface中的方法 获取到文字格式 将manger 与ttf 文件名(在Assets 文件路径下的文件路径当为一个参数传进去)
Typeface tf = Typeface.createFromAsset(mManger, "cload.ttf");
(3)设置字体 textView.setTypeface(tf);
2,Html 格式的字体
// 2,html字体
(1)模拟Html格式的数据 例子:
String textStr = "<font color=\"#ff2200\">《秋登宣城谢眺北楼》<br>【唐】李白 </font><br>";
String textStr1 = "<font color=\"#ffff00\"> 江城如画里,</font><br>";
String textStr2 = "<font color=\"#00ff00\">山晓望晴空。</font><br>";
String textStr3 = "<font color=\"#ff00ff\">雨水夹明镜,</font><br>";
String textStr4 = "<font color=\"#00ffff\">双桥落彩虹。</font>";
(2 ) 使用 HTML 辅助类
CharSequence s=Html.fromHtml(textStr + textStr1 + textStr2 + textStr3+ textStr4);
textView.setText(s);
(3)代码控制的字体加粗
textView.getPaint().setFakeBoldText(true);
(4)// 4,加上阴影 在布局文件中加入
// android:shadowColor="#ffffff"
// android:shadowDx="15.0"
// android:shadowDy="5.0"
// android:shadowRadius="2.5"
(5) 插入图片 (1)使用html的形式将 image 转换
String imgStr = "<img src=\"" + R.drawable.ic_launcher + "\"/>";
Html.ImageGetter imageGetter = new ImageGetter() {
@Override
public Drawable getDrawable(String source) {
// TODO Auto-generated method stub
int id = Integer.parseInt(source);
Drawable draw = getResources().getDrawable(id);
// draw.setBounds(left, top, right, bottom);
// right-left 是宽 bottom-top 是高
draw.setBounds(10, 10, 100, 100);
return draw;
}
};
mImageHtml.append(Html.fromHtml(imgStr, imageGetter, null));
(6)跑马灯
// android:ellipsize="marquee"
// android:marqueeRepeatLimit="marquee_forever"
// android:singleLine="true"
// android:focusableInTouchMode="true"
//
mMarquee.setTypeface(tf);
mMarquee.setText(Html.fromHtml(textStr + textStr1 + textStr2 + textStr3
+ textStr4));
(7),下划线(1)
mMarquee.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG);
//下划线(2)tv.setText(Html.fromHtml("<u>使用html实现下划线样式</u>"));
运行截图