canvas之文本
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了canvas之文本相关的知识,希望对你有一定的参考价值。
参考技术A使用 canvas 绘制文本,重要的属性和方法如下:
示例:
有更多的属性可以让你改变canvas显示文本的方式:
(1)font 字体样式
(2)textAlign文本的对齐方式
语法:ctx.textAlign = "left" || "right" || "center" || "start" || "end";
注意: 该对齐是基于CanvasRenderingContext2D.fillText方法的x的值。
有效值:
(3)textBaseline 文本基线,决定文字垂直方向的对齐方式。
有效值:
(4)direction 当前文本方向(此功能某些浏览器尚在开发中)
有效值:
其它文章请访问:
参考: 路径-CanvasAPI|MDN
Android学习笔记技巧之给文本加边框
BorderTextViews.Java
- package xiaosi.BorderTextView;
- import android.content.Context;
- import android.graphics.Canvas;
- import android.graphics.Color;
- import android.graphics.Paint;
- import android.util.AttributeSet;
- import android.widget.TextView;
- public class BorderTextViews extends TextView
- {
- private Paint paint = null;
- private int color = Color.GRAY;
- public BorderTextViews(Context context, AttributeSet attrs)
- {
- super(context, attrs);
- }
- //设置边框颜色
- public void setPaintColor(int color){
- this.color = color;
- }
- @Override
- protected void onDraw(Canvas canvas)
- {
- super.onDraw(canvas);
- paint = new Paint();
- //给边框设置颜色
- paint.setColor(color);
- //上
- canvas.drawLine(0, 0, this.getWidth()-1, 0, paint);
- //左
- canvas.drawLine(0, 0, 0, this.getHeight()-1, paint);
- //下
- canvas.drawLine(0, this.getHeight()-1, this.getWidth()-1, this.getHeight()-1, paint);
- //右
- canvas.drawLine(this.getWidth()-1, 0, this.getWidth()-1, this.getHeight()-1, paint);
- }
- }
- package xiaosi.BorderTextView;
- import android.app.Activity;
- import android.graphics.Color;
- import android.os.Bundle;
- public class BorderTextViewActivity extends Activity {
- /** Called when the activity is first created. */
- private BorderTextViews borderTextView = null;
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- borderTextView = (BorderTextViews)findViewById(R.id.Border);
- borderTextView.setPaintColor(Color.GRAY);
- }
- }
main.xml
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:orientation="vertical"
- android:background="#CCFF66">
- <xiaosi.BorderTextView.BorderTextViews
- android:id="@+id/Border"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:textColor="#C71585"
- android:layout_marginTop="20dp"
- android:padding="10dp"
- android:layout_gravity="center"
- android:text="在画布上画边框" />
- </LinearLayout>
以上是关于canvas之文本的主要内容,如果未能解决你的问题,请参考以下文章