要在其他平台实现自定义字体可谓是相当的麻烦,但是在Android平台就很简单了。
首先将自定义字体放到“assets”下面被实例化之后再使用,如果你的DDMS中的system/fonts/....下面有你需要的ttf文件的话,
可以直接使用下面的方法来调用
在程序中通过如下方式实例化自定义字体:
Java代码 :
1.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代码 :
1.//消除锯齿
2.paint.setFlags(Paint.ANTI_ALIAS_FLAG)
3.//取得字符串宽度
4.paint.measureText()
在Android的所有控件中,WebView的功能是最强大的作为直接从android.webkit.Webview实现的类可以拥有浏览器所有的功能,Webview可以让开发人员从Java转向html+js这样的方式,如果你掌握ajax可以方便通过这种方式配合远端server来实现一些内容。
Webview中设置字体,可以使用 WebView.getSettings().setDefaultFontSize() 方法,设置屏幕的缩放级别可以使用 WebView.getSettings().setDefaultZoom() 来实现。
目前在Android 2.2中已经加入了Adobe Flash Player功能,我们可以WebView.getSettings().setPluginsEnabled(true); 设置允许Gears插件来实现网页中的Flash动画显示.
分享到:
相关推荐
本文实例讲述了Android使用自定义字体的方法。分享给大家供大家参考,具体如下: 一、问题: 作为android初学者,在做一个游戏,游戏的标题我用的是TextView,android只提供斜体粗体,但把字体设置成楷体游戏的界面...
"Smart Fonts for Android" 是一个针对Android Studio的插件,旨在简化开发者在Android应用中集成和使用自定义字体的过程。这个插件提供了方便快捷的方式,使得开发者不必再进行繁琐的字体文件处理和XML布局修改,...
一旦有了自定义字体,你可以按照以下步骤在你的项目中使用它: 1. **添加字体资源**: - 打开Delphi XE10 IDE,选择你的项目。 - 右键点击“资源”(Resources)文件夹,选择“添加资源”(Add Resource)。 - ...
在创建适配器时,除了提供数据,还可以进一步自定义字体大小。例如,在创建`ArrayAdapter`时,可以重写`getView()`方法: ```java ArrayAdapter<String> adapter = new ArrayAdapter(this, android.R.layout....
本教程将通过一个名为“android自定义字体Demo”的项目来详细讲解如何在Android应用中实现自定义字体的加载和切换。 首先,我们需要了解Android系统对字体的支持。Android原生支持的字体类型主要是TrueType Font ...
2. **字体许可**:使用自定义字体时需要确保拥有相应的字体使用权。很多商用字体并不允许在网页上使用,除非购买了相应的Web字体许可。 3. **性能优化**:字体文件可能较大,会增加页面加载时间。可以考虑使用子集...
`Android-AACustomFont`项目就是针对这一需求,通过使用Data Binding库来实现动态加载和应用自定义字体的功能。下面我们将深入探讨如何利用Data Binding来实现这一功能。 首先,让我们了解什么是Data Binding。Data...
标题提到的“Android-一个辅助库用于为你的android视图设置自定义字体”就是一个这样的解决方案,它旨在简化Android应用中自定义字体的集成过程。这个辅助库可能叫做"Calligrapher",正如压缩包文件名`Calligrapher-...
本文将深入探讨如何使用自定义Seekbar来实现对网页字体大小的控制。Seekbar,又称滑动条,是Android系统中的一个基本组件,通常用于用户进行数值选择或进度调整。在这里,我们将自定义Seekbar作为网页字体大小的调节...
"AndroidTypefaceHelper自定义字体库"是一个专门为Android平台设计的工具,它帮助开发者轻松地集成和管理自定义字体,使得应用程序可以拥有独特的文字风格。下面将详细阐述自定义字体库的核心概念、实现原理以及使用...
在Android开发中,有时为了使应用更具个性化或者满足特定设计需求,我们需要使用自定义字体来替代系统默认的字体。本文将详细介绍如何在Android应用中实现自定义字体的使用。 首先,Android系统内置了三种默认字体...
"Android 自定义字体Fontinator"是一个专为此目的设计的库,它简化了在Android应用中集成和使用自定义字体的过程。这个库的出现,使得开发者不必再手动处理字体文件的加载和设置,从而节省了开发时间和精力。 ...