Paint API de Android - Tipo de letra (fuente)

Esta sección trae la última API de la serie Paint API, Typeface (tipo de fuente) Por el significado de la palabra, probablemente podamos adivinar que esta API se usa para configurar fuentes y estilos de fuente, ¡y es muy simple de usar! ¡Aprendamos algunos usos relacionados de Typeface!

Documentación oficial de la API: Tipo de letra ~


1. Estilos opcionales para fuentes

Cuatro constantes enteras:

  • NEGRITA : negrita
  • ITÁLICA : cursiva
  • BOLD_ITALIC : negrita cursiva
  • NORMAL : normal

2. Objeto de fuente opcional (Tipo de letra)

El sistema Android admite tres fuentes de forma predeterminada, a saber: sans , serif , monospace  , y hay cinco valores de objetos estáticos opcionales:

  • DEFAULT : objeto de fuente normal predeterminado
  • DEFAULT_BOLD : el objeto de fuente predeterminado, nota: esto no puede estar en negrita, depende de la configuración de la fuente. Determinado por getStyle()
  • MONOSPACIO : estilo de fuente monoespaciado
  • SANS_SERIF : estilo de fuente sans serif
  • SERIF : estilo de fuente serif

3. Crea fuentes personalizadas

Tal vez las tres fuentes predeterminadas no sean suficientes para usted, tal vez le guste la fuente de MAC - Fuente Monaco , desee usar esta fuente para el texto en su APLICACIÓN, primero prepare nuestro archivo TTF y luego tírelo a activos/fuente/ directorio y luego crear el objeto correspondiente, el código clave es el siguiente:

Tipo de letra typeFace =Typeface.createFromAsset(getAssets(),"font/MONACO.ttf");


4. Utilice el ejemplo de código:

Diagrama de efecto de carrera :

Clase de vista personalizada: MyView.java :

/** 
 * Creado por Jay el 2015/11/5 0005. 
 */ 
public class MyView extends View{ 

    private Paint mPaint1,mPaint2,mPaint3,mPaint4,mPaint5; 
    Contexto privado mContexto; 

    public MyView (contexto contexto) { 
        this (contexto, nulo); 
    } 

    public MyView(Context context, AttributeSet attrs) { 
        super(context, attrs); 
        mContexto = contexto; 
        en eso(); 
    } 

    public MyView(Context context, AttributeSet attrs, int defStyleAttr) { 
        super(context, attrs, defStyleAttr); 
    } 

    private void init(){ 
        mPaint1 = new Paint(); 
        mPaint2 = nueva pintura ();
        mPaint3 = nueva pintura (); 
        mPaint3.setTypeface(Tipo de letra.SANS_SERIF);
        mPaint4 = nueva pintura (); 
        mPaint5 = nueva pintura (); 

        mPaint1.setColor(Color.RED); 
        mPaint2.setColor(Color.AZUL); 
        mPaint3.setColor(Color.NEGRO); 
        mPaint4.setColor(Color.AMARILLO); 
        mPaint5.setColor(Color.GRAY); 


        mPaint1.setTextSize(100); 
        mPaint2.setTextSize(100); 
        mPaint3.setTextSize(100); 
        mPaint4.setTextSize(100); 
        mPaint5.setTextSize(100); 


        mPaint1.setTypeface(Tipo de letra.DEFAULT_BOLD); 
        mPaint2.setTypeface(Tipo de letra.MONOSPACIO); 
        mPaint4.setTypeface(Tipo de letra.SERIF);
        mPaint5.setTypeface(Typeface.createFromAsset(mContext.getAssets(), "font/MONACO.ttf")); 

    } 

    @Override 
    protected void onDraw(Canvas canvas) { 
        canvas.drawText("Coder-pig", 100, 100, mPaint1); 
        canvas.drawText("Coder-pig", 100, 200, mPaint2); 
        canvas.drawText("Coder-pig", 100, 300, mPaint3); 
        canvas.drawText("Codificador-pig", 100, 400, mPaint4); 
        canvas.drawText("Coder-pig", 100, 500, mPaint5); 
    } 
}

Supongo que te gusta

Origin blog.csdn.net/leyang0910/article/details/131795525
Recomendado
Clasificación