2012-04-12 126 views
0

我需要从数据库读取文本/字符串并将其转换为图像。我尝试了下面的代码,但我只得到空白图像。请帮忙Android - 将字符串转换为图像

public Bitmap textAsBitmap(String text, float largest, int textColor) { 
      Paint paint = new Paint(); 
      paint.setStyle(Paint.Style.FILL); 
      paint.setColor(textColor); 
      // int width = (int) (paint.measureText(text) + 0.5f); // round 

      paint.setAntiAlias(true); 
      paint.setTypeface(Typeface.MONOSPACE); 

      paint.setTextSize(16); 
      int width = 400; 

      // float baseline = (int) (paint.ascent() + 0.5f) + 3f; 
      // int height = (int) ((baseline + paint.descent() + 0.5f) + 3); 

      int height = 400; 

      Bitmap image = Bitmap.createBitmap(width, height, 
        Bitmap.Config.RGB_565); 
      Canvas canvas = new Canvas(image); 
      canvas.drawText(text, 0, 5, paint); 
      return image; 

     } 
+0

如果将位置参数设置为类似200,100的值,它会起作用吗? (只要确保文本不会在位图之外结束) – Jave 2012-04-12 09:51:59

回答

0

我还没有尝试过这个,但是您是否需要首先使用与textColor形成对比的颜色来填充位图?在任何情况下,这肯定是一件很重要的事情 - createBitmap()的文档没有指定位图的初始内容,所以理论上它可以是任何内容,并且在未来的系统版本中可能会有所变化。

相关问题