Снимок экрана «Android» - PullRequest
       16

Снимок экрана «Android»

0 голосов
/ 14 декабря 2011

Я могу сделать «скриншот изображения» в моем приложении, но мне нужно сделать скриншот «определенной части» в этом изображении. Пожалуйста, кто-нибудь, помогите мне сделать это ... Спасибо ... Вот код, который я использую, чтобы сделать скриншот изображения ....

L1 = (LinearLayout) findViewById(R.id.LinearLayout01);
Button but = (Button) findViewById(R.id.Button01);
but.setOnClickListener(new View.OnClickListener() {

    @Override

    public void onClick(View v) {

        View v1 = L1.getRootView();

        v1.setDrawingCacheEnabled(true);

        Bitmap bm = v1.getDrawingCache();

        BitmapDrawable bitmapDrawable = new BitmapDrawable(bm);
        image = (ImageView) findViewById(R.id.ImageView01);

        image.setBackgroundDrawable(bitmapDrawable);

    }

});

`

1 Ответ

0 голосов
/ 14 декабря 2011

после получения растрового изображения сделайте так

Bitmap new_bmp = Bitmap.createBitmap(bm, 0, 0, linear.getWidth(), linear.getHeight(), matrix, false);

            image.draw(new Canvas(new_bmp));
            String s = Environment.getExternalStorageDirectory().toString();

            linear.setBackgroundColor(Color.BLACK);
            OutputStream outStream = null;
            SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd_hhmmss");
            String file_name = sdf.format(new Date())+".PNG";
            File file = new File(s, file_name);
            try {
             outStream = new FileOutputStream(file);
             new_bmp.compress(Bitmap.CompressFormat.PNG, 100, outStream);
             outStream.flush();
             outStream.close();
            } catch (FileNotFoundException e) {
                 e.printStackTrace();
                 Toast.makeText(CaptureImage.this, e.toString(), Toast.LENGTH_LONG).show();
            } catch (IOException e) {
                 e.printStackTrace();
                 Toast.makeText(CaptureImage.this, e.toString(), Toast.LENGTH_LONG).show();
            }
...