-1

AndroidでiText APIを使用して、すでにギャラリーにあるキャプチャされた画像を変換し、PDFドキュメントとして保存する方法を教えてください。できるだけ早く助けが必要です。主な目的は、ギャラリーから複数の画像を取得して pdf 形式で保存できる Android アプリケーションを作成することです。

4

2 に答える 2

1

ギャラリーから画像を取得するには、startActivityForResult を開始する必要があり、onActivityResult で画像を pdf ファイルに保存できます。

最初にギャラリー インテントを次のように呼び出します:-

Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent,"Select Picture"), SELECT_PICTURE);

次に、onActivityResult でビットマップを取得し、PDF に書き込みます。

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);


        if (resultCode == RESULT_OK) {  


        switch(requestCode){    

             case SELECT_PICTURE:
                  Uri selectedImageUri = data.getData();
                  String[] filePathColumn = { MediaStore.Images.Media.DATA };
                  Cursor cursor = getContentResolver().query(selectedImageUri,filePathColumn, null, null, null);
                  cursor.moveToFirst();
                  int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
                  String picturePath = cursor.getString(columnIndex);
                  cursor.close();
                  Bitmap bmp = BitmapFactory.decodeFile(picturePath);
                  ByteArrayOutputStream stream = new ByteArrayOutputStream();
                  bmp.compress(Bitmap.CompressFormat.PNG, 100, stream);

              Document document = new Document();
              File f=new File(Environment.getExternalStorageDirectory(), "SimpleImages.pdf");
              PdfWriter.getInstance(document,new FileOutputStream(f));
              document.open();
              document.add(new Paragraph("Simple Image"));

              Image image = Image.getInstance(stream.toByteArray());
              document.add(image);
              document.close();
              break;
            }  
          }  

    }

お役に立てれば..

于 2013-05-08T10:55:46.907 に答える