Skip to content

tianheng812/AndroidFreetype

Repository files navigation

在根目录的build.gradle中添加依赖

allprojects {
   repositories {
      maven { url "https://raw.githubusercontent.com/tianheng812/AndroidFreetype/master" }
   }
}

在项目中的build.gradle添加依赖

dependencies {
    implementation 'com.xian:freestype:1.0.1'
}

在AndroidManifest.xml加入读写权限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

初始化

WordManager.getInstance().init(this);//默认是宋体

WordManager.getInstance().init(this,字体路径);//更改字体

销毁

 WordManager.getInstance().destroy();

1.使用freetype提取字的模式,并可以转化为bmp图,如图

byte[] bytes = WordManager.getInstance().stringToBmpByte("我们", 16, 0);
Bitmap bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);

2.提取点阵:

 StringBuilder builder = new StringBuilder();   
 byte[][] arr = WordManager.getInstance().stringToLattice(content, fontSize, 0);
 for (int i = 0; i < arr.length; i++) {
      for (int j = 0; j < arr[0].length; j++) {
           if (arr[i][j] == 1) {
                 builder.append("1");
             } else {
                  builder.append("0");
             }
       }
            builder.append("\n");
  }

 Log.i("点阵", builder.toString());