0

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

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;

        }
4

1 回答 1

0

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

于 2012-04-12T09:44:03.023 回答