網上有不少文章說怎麼調用圖庫去選擇並裁剪圖片,卻對這些參數說的比較少。 今天把看懂的一些參數總結一下:
Intent intent = new Intent(Intent.ACTION_GET_CONTENT, null);
intent.setType("image/*"); //這個參數是確定要選擇的內容為圖片
intent.putExtra("crop", "circle"); //這個參數 不太懂,唯一知道的是:設定了參數,就會調用裁剪,如果不設定,就會跳過裁剪的過程。
intent.putExtra("aspectX", 33); //這個是裁剪時候的 裁剪框的 X 方向的比例。
intent.putExtra("aspectY",43); //同上Y 方向的比例. (注意: aspectX, aspectY ,兩個值都需要為 整數,如果有一個為浮點數,就會導致比例失效。)
//設定aspectX 與 aspectY 後,裁剪框會按照所指定的比例出現,放大縮小都不會更改。如果不指定,那麼 裁剪框就可以隨意調整了。
intent.putExtra("outputX", 50); //返回資料的時候的 X 像素大小。
intent.putExtra("outputY", 100); //返回的時候 Y 的像素大小。
//以上兩個值,設定之後會按照兩個值產生一個Bitmap, 兩個值就是這個bitmap的橫向和縱向的像素值,如果裁剪的映像和這個像素值不符合,那麼空白部分以黑色填充。
intent.putExtra("noFaceDetection", true); // 是否去除面部檢測, 如果你需要特定的比例去裁剪圖片,那麼這個一定要去掉,因為它會破壞掉特定的比例。
intent.putExtra("return-data", true); //是否要傳回值。 一般都要。
startActivityForResult(intent, 1);
以上為個人理解,如果有誤請指正。