0

我正在尝试获取 Android TextView 中字体的坐标。

为此,我打算输入 TextView,水平和垂直地遍历整个 TextView,然后查看哪些像素是黑色的,哪些像素是白色的。黑色是文本的一部分,白色不是。

你能告诉我如何在 TextView 中区分哪些像素是黑色的,哪些像素是白色的吗?

谢谢!

4

1 回答 1

2

我想分享我的想法。如果您打算迭代 textview 像素并匹配颜色,则首先需要从 textview 获取位图。

TextView textview = (TextView) findViewById(R.id.text_title);
textview.setDrawingCacheEnabled(true);
textview.buildDrawingCache();        
Bitmap bitmap = textview.getDrawingCache();

之后,您可以通过以下方法简单地检查像素颜色:

for(int x = 1; x <= width; x++)
   for(int y = 1; y <= height; y++) {

int pixel = bitmap.getPixel(x,y);
int redValue = Color.red(pixel);
int blueValue = Color.blue(pixel);
int greenValue = Color.green(pixel);

//now check if black or white color
if(Color.argb(1,redValue, greenValue , blueValue) == Color.BLACK) {
//do work for black pixel
}
else {
//white pixel
}
}

希望能帮助到你。

于 2016-03-28T19:03:49.227 回答