android 使用其他字体
2011-04-11 10:45
330 查看
AssetManager manager=this.getAssets(); try { manager.open("shuijin.ttf"); digital_clock.setTypeface(Typeface.createFromAsset(manager, "shuijin.ttf")); day_text.setTypeface(Typeface.createFromAsset(manager, "shuijin.ttf")); }catch(Exception ex){ //TODO }
Android 使用自定义字体
要在其他平台实现自定义字体可谓是相当的麻烦,但是在Android平台就很简单了。
首先将自定义字体放到“assets”下面被实例化之后再使用,字体文件如下图所示。
在程序中通过如下方式实例化自定义字体:
Java代码 :
Typeface.createFromAsset(getContext().getAssets(),"fonts/samplefont.ttf");
复制代码
下面是Android默认字体和自定义字体的绘制效果:
源代码如下:
Java代码 :
package com.yarin.android.Typefaces;
import android.app.Activity;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Typeface;
import android.os.Bundle;
import android.view.View;
public class Typefaces extends Activity
{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(new SampleView(this));
}
private static class SampleView extends View
{
private Paint mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
private Typeface mFace;
public SampleView(Context context)
{
super(context);
//实例化自定义字体
mFace = Typeface.createFromAsset(getContext().getAssets(),"fonts/samplefont.ttf");
//设置字体大小
mPaint.setTextSize(32);
}
@Override protected void onDraw(Canvas canvas)
{
canvas.drawColor(Color.WHITE);
//绘制默认字体
mPaint.setTypeface(null);
canvas.drawText("Default:abcdefg", 10, 100, mPaint);
//绘制自定义字体
mPaint.setTypeface(mFace);
canvas.drawText("Custom:abcdefg", 10, 200, mPaint);
}
}
}
复制代码
好了,就这么简单就实现了自定义字体。
下面是两个非常有用的方法,在这里备份一下:
Java代码 :
//消除锯齿
paint.setFlags(Paint.ANTI_ALIAS_FLAG)
//取得字符串宽度
paint.measureText()
由www.J2meGame.com精心收集。
相关文章推荐
- 使用非Android系统的其他字体
- Android中使用其他格式的字体
- [Android] 字体使用dp单位避免设置系统字体大小对排版的影响
- Android TextView使用HTML处理字体样式、显示图片等
- MFC中button控件背景色和字体的设置,或者可以采用添加背景图片的方法;已验证有效MFC其他的简单使用使用
- 在ANDROID中使用自定义字体
- android开发 通过文字生成头像 (包含使用额外的字体)
- [原]零基础学习SDL开发之在Android使用SDL2.0加载字体
- Android关于Spinner的使用(更换字体颜色,下拉列表的条目布局)
- android使用TelephonyManager获取imei和其他手机信息
- Android的TextView使用Html来处理图片显示、字体样式、超链接等
- 解决Unity中,使用Ngui 的默认字体Arial,在部分Android设备显示中文不清楚,或者显示不出来问题
- JasperReport 导出PDF时使用其他字体
- Android 使用selector设置button字体颜色无效
- Android TextView 使用HTML处理字体样式、显示图片
- 【Based Android】让你的android应用使用可爱的iphone备忘录字体
- Android TextView使用HTML处理字体样式、显示图片等
- Android 使用DexClassLoader要执行其他apk方法
- 设置字体大小时,应使用像素、点、字长还是其他单位
- android使用自定义字体