【问题标题】:Android application: how to use the camera and grab the image bytes?Android应用程序:如何使用相机并抓取图像字节?
【发布时间】:2012-02-20 02:40:52
【问题描述】:

我正在尝试为 Android 创建一个小应用程序,它使用设备的相机拍照并在其顶部放置一个 PNG 框架。这样,最终保存的图片将在其顶部有一个海滩,或帽子,或任何东西。有没有人有这种行为的示例程序?

【问题讨论】:

    标签: java android mobile titanium


    【解决方案1】:

    查看有关使用图像捕获意图 here 的 SDK 文档。

    我这样开始我的图像捕捉意图:

    Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
    

    CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE 是我活动中的私人成员:

    private static final int CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 100;
    

    然后使用以下 onActivityResult 处理程序从摄像头取回字节数组:

    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {        
        if (requestCode == CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE) {
            if (resultCode == Activity.RESULT_OK) {
                Bitmap bmp = (Bitmap) data.getExtras().get("data");
                ByteArrayOutputStream stream = new ByteArrayOutputStream();
                bmp.compress(Bitmap.CompressFormat.PNG, 100, stream);
                byte[] byteArray = stream.toByteArray();
    
                AddImage(byteArray);
    
            } else if (resultCode == Activity.RESULT_CANCELED) {
                // User cancelled the image capture
            } else {
                // Image capture failed, advise user
            }
        }               
    }
    

    之后,您可以对图像进行所有您想要的处理。

    【讨论】:

    • 如何处理图片?我应该使用哪个库?
    • 我知道这个问题已经得到解答,但这只会检索缩略图而不是全图。
    猜你喜欢
    • 1970-01-01
    • 2019-08-24
    • 1970-01-01
    • 2013-01-20
    • 1970-01-01
    • 2011-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多