1

我需要将edittext中的字符串转换为位图,但我没有得到字符串,而是得到了这个(见图)在此处输入图像描述

我的代码如下

 Canvas c=new Canvas();

     MainActivity.editText.setCursorVisible(false);
     MainActivity.editText.buildDrawingCache();
     Bitmap bmp = Bitmap.createBitmap(MainActivity.editText.getDrawingCache());

     System.out.println("string is "+MainActivity.editText.getText().toString());


File f =new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/Photo Text");
     if(!f.exists())
     {
         f.mkdirs();
     }
     f = new File(f.getAbsolutePath(),
             String.valueOf(System.currentTimeMillis()) +"phototext.jpg");
     if(!f.exists())
     {
         try {
            f.createNewFile();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
     }


     try {
         bmp.compress(Bitmap.CompressFormat.JPEG, 100, new FileOutputStream(f));
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }


     c.drawBitmap(bmp,0,0, mPaint);

请给我建议。我需要来自edittext的字符串作为位图。

4

1 回答 1

1

为什么不获取 的文本,ExitText然后Canvas用绘制它drawText()

String text = editText.getText().toString();
canvas.drawText(text, 0, 0, paint);

并根据文本高度和长度设置画布高度和宽度。

于 2013-10-04T07:13:17.513 回答