導航:首頁 > 操作系統 > android裁剪圖片不規則

android裁剪圖片不規則

發布時間:2022-07-18 07:41:52

1. android拍照圖片裁剪的問題

在裁剪代碼執行之前加上這幾句試試

try {
Runtime.getRuntime().exec("chmod 777 " + file.getAbsolutePath());

} catch (IOException e) {

e.printStackTrace();
}

2. 做了一個Android的demo實現頭像裁剪上傳,但是拍照完成後出現如下圖問題,圖庫也一樣大神們幫忙看看

實現思維路徑:
以進入相機拍照的思維路線為例子:
1.進入app
2.判斷之前是否保存頭像,如果有就顯示歷史圖像 (下面代碼中在getOldAvatar();方法中執行這個邏輯)
3.點擊更換圖像的Button或者布局,啟動對話框(下面代碼中在dialogueBox();方法執行這個邏輯)
4.系統版本判斷授權方式(靜態還是動態授權),判斷之前是否已經授權 (setPermissions(Permissions_CAMERA_KEY);這個方法執行授權邏輯)
5.如果是首次授權,就執行首次授權完成後馬上運行的回調方法 onRequestPermissionsResult
5.判斷完成不管是否是首次授權還是之前就是授權過了都要執行enterCamera();方法啟動相機並且發送攜帶數據的請求
6.啟動相機完成後,並且拍照完成退出相機,都要運行Intent返回數據請求回調方法onActivityResult。將傳入的數據傳入到cropPhoto(data.getData());方法里去執行圖片剪裁。
7.在cropPhoto方法里將攜帶數據跳轉到裁剪界面中裁剪圖片,裁剪完成後又要回到onActivityResult回調方法里,執行裁剪完的數據回調工作。

8.在onActivityResult回調方法里,裁剪完的圖片將運行setPicToView 方法保存圖片。保存的圖片將在下次啟動activity時作為歷史頭像調用。

package com.example.lenovo.mydemoapp;
import android.app.Activity;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Build;
import android.os.Environment;
import android.os.StrictMode;
import android.provider.MediaStore;
import android.support.annotation.NonNull;
import android.support.v4.app.ActivityCompat;
import android.support.v4.content.ContextCompat;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;

3. Android調用系統的圖片剪裁,剪裁框大小能設置嗎outputX和outputY不是

你的問題我理解的是從一張圖片上。挖取指定坐標的一塊圖片是吧。
看代碼的意思是。你想用參數的方法直接從camera取得。這種方法沒有嘗試過。
這一定得需要camera支持。識別extra里的參數。這樣實際是調用系統的api處理

倒不如你換個方法。把這些圖品剪切的動作放到本地里做。只從照片中取得整張圖片。避免API不支持或版本不支持

4. android上如何實現大圖片的分段切割顯示

有種場景,我們想將一個圖片切割成多個圖片。比如我們在開發一個拼圖的游戲,就首先要對圖片進行切割。
以下是封裝好的兩個類,可以實現圖片的切割。僅供參考和學習。
一個是ImagePiece類,此類保存了一個Bitmap對象和一個標識圖片的順序索引的int變數。
package arui319.blog.csdn.net;

import android.graphics.Bitmap;

public class ImagePiece {

public int index = 0;

public Bitmap bitmap = null;
}

一個是ImageSplitter類,有一個靜態方法split,傳入的參數是要切割的Bitmap對象,和橫向和豎向的切割片數。比如傳入的是3、3,則橫豎向都切割成3片,最終會將整個圖片切割成3X3=9片。
package arui319.blog.csdn.net;

import java.util.ArrayList;
import java.util.List;

import android.graphics.Bitmap;

public class ImageSplitter {

public static List<ImagePiece> split(Bitmap bitmap, int xPiece, int yPiece) {

List<ImagePiece> pieces = new ArrayList<ImagePiece>(xPiece * yPiece);
int width = bitmap.getWidth();
int height = bitmap.getHeight();
int pieceWidth = width / 3;
int pieceHeight = height / 3;
for (int i = 0; i < yPiece; i++) {
for (int j = 0; j < xPiece; j++) {
ImagePiece piece = new ImagePiece();
piece.index = j + i * xPiece;
int xValue = j * pieceWidth;
int yValue = i * pieceHeight;
piece.bitmap = Bitmap.createBitmap(bitmap, xValue, yValue,
pieceWidth, pieceHeight);
pieces.add(piece);
}
}

return pieces;
}

}
這里的切割,主要使用的是Bitmap對象的createBitmap方法,不再做具體描述。

5. android怎麼得到怎麼得到剪裁區域大小,然後設計輸出圖片大小比例

你的問題我理解的是從一張圖片上。挖取指定坐標的一塊圖片是吧。
看代碼的意思是。你想用參數的方法直接從camera取得。這種方法沒有嘗試過。
這一定得需要camera支持。識別extra里的參數。這樣實際是調用系統的api處理

倒不如你換個方法。把這些圖品剪切的動作放到本地里做。只從照片中取得整張圖片。避免API不支持或版本不支持

6. android 怎麼裁剪drawable

可使用ScaleType來指定drawable的縮放方式,來實現裁剪效果。

ImageView的Scaletype決定了圖片在View上顯示時的樣子,如進行何種比例的縮放,及顯示圖片的整體還是部分,等等。
設置的方式包括:
1. 在layout xml中定義android:scaleType="CENTER"
2. 或在代碼中調用imageView.setScaleType(ImageView.ScaleType.CENTER);

Scaletype的取值說明:
1. SetScaleType(ImageView.ScaleType.CENTER);
按圖片的原來size居中顯示,當圖片長/寬超過View的長/寬,則截取圖片的居中部分顯示

2. SetScaleType(ImageView.ScaleType.CENTER_CROP);

按比例擴大圖片的size居中顯示,使得圖片長(寬)等於或大於View的長(寬)

3. setScaleType(ImageView.ScaleType.CENTER_INSIDE);
將圖片的內容完整居中顯示,通過按比例縮小或原來的size使得圖片長/寬等於或小於View的長/寬

4. setScaleType(ImageView.ScaleType.FIT_CENTER);

把圖片按比例擴大/縮小到View的寬度,居中顯示

5. FIT_START, FIT_END在圖片縮放效果上與FIT_CENTER一樣,只是顯示的位置不同,FIT_START是置於頂部,FIT_CENTER居中,FIT_END置於底部。
在此就不給出示例了。

6. FIT_XY
不按比例縮放圖片,目標是把圖片塞滿整個View。

7. Android如何進行圖片編輯

裁剪選取或拍攝的圖片
public static void cropphoto(Fragment fragment, Uri uri){ //設置裁剪圖片保存位置 File bomb=new File(fragment.getContext().getExternalCacheDir(),"bmob"); Log.d("tag", "cropphoto: "+bomb); if (!bomb.exists()){ bomb.mkdir(); } File file=new File(bomb,"user_icon.jpg"); if (!file.exists()){ try { file.createNewFile(); } catch (IOException e) { e.printStackTrace(); } } Intent intent=new Intent("com.android.camera.action.CROP");//intent隱式調用啟動拍照界面 intent.setDataAndType(uri,"image/*");//設置需要裁剪的圖片地址 intent.putExtra("crop", "true");//通過put(key,value)方法設置相關屬相 intent.putExtra("aspectX", 1);//設置圖片寬高比例 intent.putExtra("aspectY", 1); intent.putExtra("outputX", 240);//設置圖片寬高 intent.putExtra("outputY", 240); intent.putExtra("return-data", false);//該屬性設置為false表示拍照後不會將數據返回到onResluet方法中(建議設置為false,這樣獲取的圖片會比較清晰) intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file));//該屬性設置的是拍照後圖片保存的位置 intent.putExtra("outputFormat", Bitmap.CompressFormat.JPEG.toString());//設置輸出格式 intent.putExtra("noFaceDetection", true);//是否取消人臉識別 /*ComponentName componentName = intent.resolveActivity(context.getPackageManager()); Log.d("TAG", "cropphoto: "+componentName); if (componentName!=null){ fragment.startActivityForResult(intent,Variable.request_crop); }*/ fragment.startActivityForResult(intent,Variable.request_crop); }

8. android從相冊選取圖片裁剪,裁剪的時候圖片變為黑色的,怎麼解決

有可能是手機載入過慢 暫時顯示 如果不是建議返回 不然照片沒救了

9. 請問安卓ui切圖的時候,不規則的圖也需要拉伸么

根據app的設計經驗來看,是不需要的。最終導出的png都是一樣的。尺寸一樣,大小也一樣。沒什麼分別。但是切圖的時候,有幾個要點需要注意:

1、取整,所有圖片的寬度和高度都應該是整數,ios有抗鋸齒機制,如果圖片尺寸不是整數,本來很清晰的圖片會變得模糊。而且圖片上下左右邊緣最好留有一像素以上的透明區域。以防程序員做動畫的時候邊緣產生鋸齒。因為ios是對圖片內部做抗鋸齒處理,對邊緣是不會做處理的。

2、可重復元素,比如背景圖,可以用很小的一小塊,平鋪開來。還有按鈕的左右部分,中間留一像素可以展開就可以。

3、存圖和命名,IOS平台需要用到大小兩套圖形,iPhone3和3GS用的是小圖,320x480。而iPhone4和4S用的是640x960的解析度(iPhone5用的是640x1136)因此腰存成兩套圖,小圖直接後綴.png即可,而大圖的名字後面需要加一個@2x.png。方便程序區分。

至於Android,為了兼容多平台,一般需要三套不同規格的圖片。

10. 如何在Android手機上批量剪切圖片

若手機需要編輯圖片,如果使用的是三星手機產品,請參考以下內容:
1.手機支持圖片編輯器功能:打開照相機-點開某張圖片-菜單鍵-編輯-圖片編輯器-然後可以編輯圖片。
2.下載第三方美圖軟體編輯,如美圖秀秀、網路魔圖等軟體。

閱讀全文

與android裁剪圖片不規則相關的資料

熱點內容
12位是由啥加密的 瀏覽:868
程序員編迷你世界代碼 瀏覽:895
php取現在時間 瀏覽:246
單片機高吸收 瀏覽:427
怎麼區分五代頭是不是加密噴頭 瀏覽:244
hunt測試伺服器是什麼意思 瀏覽:510
2013程序員考試 瀏覽:641
畢業論文是pdf 瀏覽:736
伺服器跑網心雲劃算嗎 瀏覽:471
單片機定時器計數初值的計算公式 瀏覽:801
win7控制台命令 瀏覽:567
貓咪成年app怎麼升級 瀏覽:692
360有沒有加密軟體 瀏覽:315
清除cisco交換機配置命令 瀏覽:751
華為刪除交換機配置命令 瀏覽:473
shell打包命令 瀏覽:827
加密狗插上輸不了密碼 瀏覽:187
大學單片機相關科目 瀏覽:23
自己建了伺服器地址 瀏覽:698
命令按鈕的屬性設置 瀏覽:965