Tôi đang tạo một ứng dụng và muốn thiết lập chế độ xem thư viện. Tôi không muốn hình ảnh ở chế độ xem thư viện có kích thước đầy đủ. Làm cách nào để thay đổi kích thước hình ảnh trong Android?Làm thế nào để thay đổi kích cỡ hình ảnh trong Android?
72
A
Trả lời
146
Hãy thử:
Bitmap yourBitmap;
Bitmap resized = Bitmap.createScaledBitmap(yourBitmap, newWidth, newHeight, true);
hay:
resized = Bitmap.createScaledBitmap(yourBitmap,(int)(yourBitmap.getWidth()*0.8), (int)(yourBitmap.getHeight()*0.8), true);
+8
Nó hiển thị hình ảnh bị mờ khi thu nhỏ ... –
4
BitmapFactory.Options options=new BitmapFactory.Options();
options.inSampleSize=2; //try to decrease decoded image
Bitmap bitmap=BitmapFactory.decodeStream(is, null, options);
bitmap.compress(Bitmap.CompressFormat.JPEG, 70, fos); //compressed bitmap to file
6
Bạn có thể sử dụng Matrix để thay đổi kích thước hình ảnh máy ảnh của bạn ....
BitmapFactory.Options options=new BitmapFactory.Options();
InputStream is = getContentResolver().openInputStream(currImageURI);
bm = BitmapFactory.decodeStream(is,null,options);
int Height = bm.getHeight();
int Width = bm.getWidth();
int newHeight = 300;
int newWidth = 300;
float scaleWidth = ((float) newWidth)/Width;
float scaleHeight = ((float) newHeight)/Height;
Matrix matrix = new Matrix();
matrix.postScale(scaleWidth, scaleHeight);
Bitmap resizedBitmap = Bitmap.createBitmap(bm, 0, 0,Width, Height, matrix, true);
BitmapDrawable bmd = new BitmapDrawable(resizedBitmap);
6
Chụp hình ảnh và thay đổi kích thước nó.
Bitmap image2 = (Bitmap) data.getExtras().get("data");
img.setImageBitmap(image2);
String incident_ID = IncidentFormActivity.incident_id;
imagepath="/sdcard/RDMS/"+incident_ID+ x + ".PNG";
File file = new File(imagepath);
try {
double xFactor = 0;
double width = Double.valueOf(image2.getWidth());
Log.v("WIDTH", String.valueOf(width));
double height = Double.valueOf(image2.getHeight());
Log.v("height", String.valueOf(height));
if(width>height){
xFactor = 841/width;
}
else{
xFactor = 595/width;
}
Log.v("Nheight", String.valueOf(width*xFactor));
Log.v("Nweight", String.valueOf(height*xFactor));
int Nheight = (int) ((xFactor*height));
int NWidth =(int) (xFactor * width) ;
bm = Bitmap.createScaledBitmap(image2,NWidth, Nheight, true);
file.createNewFile();
FileOutputStream ostream = new FileOutputStream(file);
bm.compress(CompressFormat.PNG, 100, ostream);
ostream.close();
4
bm = Bitmap.createScaledBitmap(bitmapSource, width, height, true);
:)
28
public Bitmap resizeBitmap(String photoPath, int targetW, int targetH) {
BitmapFactory.Options bmOptions = new BitmapFactory.Options();
bmOptions.inJustDecodeBounds = true;
BitmapFactory.decodeFile(photoPath, bmOptions);
int photoW = bmOptions.outWidth;
int photoH = bmOptions.outHeight;
int scaleFactor = 1;
if ((targetW > 0) || (targetH > 0)) {
scaleFactor = Math.min(photoW/targetW, photoH/targetH);
}
bmOptions.inJustDecodeBounds = false;
bmOptions.inSampleSize = scaleFactor;
bmOptions.inPurgeable = true; //Deprecated API 21
return BitmapFactory.decodeFile(photoPath, bmOptions);
}
5
// ảnh là hình ảnh bitmap
Bitmap btm00 = Utils.getResizedBitmap(photo, 200, 200);
setimage.setImageBitmap(btm00);
And in Utils class :
public static Bitmap getResizedBitmap(Bitmap bm, int newHeight, int newWidth) {
int width = bm.getWidth();
int height = bm.getHeight();
float scaleWidth = ((float) newWidth)/width;
float scaleHeight = ((float) newHeight)/height;
Matrix matrix = new Matrix();
// RESIZE THE BIT MAP
matrix.postScale(scaleWidth, scaleHeight);
// RECREATE THE NEW BITMAP
Bitmap resizedBitmap = Bitmap.createBitmap(bm, 0, 0, width, height,
matrix, false);
return resizedBitmap;
}
2
resized = Bitmap.createScaledBitmap(yourImageBitmap,(int)(yourImageBitmap.getWidth()*0.9), (int)(yourBitmap.getHeight()*0.9), true);
0
BitmapFactory.Options options=new BitmapFactory.Options();
options.inSampleSize = 10;
FixBitmap = BitmapFactory.decodeFile(ImagePath, options);
//FixBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.gv);
byteArrayOutputStream = new ByteArrayOutputStream();
FixBitmap.compress(Bitmap.CompressFormat.JPEG, 80, byteArrayOutputStream); //compress to 50% of original image quality
byteArray = byteArrayOutputStream.toByteArray();
ConvertImage = Base64.encodeToString(byteArray, Base64.DEFAULT);
Các vấn đề liên quan
- 1. Thay đổi kích cỡ hình ảnh động giữa NSView
- 2. Làm cách nào để thay đổi kích cỡ hình ảnh tôi đã chọn từ thư viện trong android?
- 3. Làm thế nào để thay đổi kích cỡ nguồn với hình thu nhỏ sorl?
- 4. làm thế nào để thay đổi kích thước hình ảnh gif trong android
- 5. Tải lên thay đổi kích cỡ ảnh để S3
- 6. Làm thế nào để thay đổi chiều cao div trên cửa sổ thay đổi kích cỡ?
- 7. Làm thế nào để thay đổi kích cỡ khung hình jframe thành độ phân giải màn hình trong netbeans?
- 8. Thay đổi kích cỡ hình ảnh bằng .NET mà không làm mất dữ liệu EXIF
- 9. Cách thay đổi kích cỡ hình ảnh mà không làm mất chất lượng
- 10. Làm thế nào để thay đổi kích cỡ mảng trong C++?
- 11. itextsharp và kích cỡ hình ảnh
- 12. WPF: Làm thế nào để làm cho canvas tự động thay đổi kích cỡ?
- 13. Thay đổi kích cỡ UIImage và thay đổi kích thước của UIImageView
- 14. Thay đổi kích thước hình ảnh trong Java để giảm kích thước hình ảnh
- 15. thay đổi kích cỡ hình ảnh svg được chèn với nội dung: url()
- 16. Làm thế nào để tự động thay đổi kích thước của hình ảnh trong Sitecore?
- 17. Thay đổi kích cỡ khung hình bằng vải js
- 18. Xác định kích thước hình ảnh cho nhiều kích cỡ màn hình android/mật độ
- 19. Thay đổi kích cỡ mảng bằng C
- 20. Thay đổi kích cỡ vector của STL
- 21. Làm thế nào để thay đổi kích thước hình ảnh tỷ lệ của bất kỳ loại nào trong .NET?
- 22. Làm thế nào để thay đổi kích cỡ tệp gif động bằng C#?
- 23. Làm cách nào để tạo các hoạt ảnh di chuyển/thay đổi kích thước trong Android?
- 24. Làm thế nào tôi có thể thay đổi kích cỡ văn bản trong RemoteViews
- 25. ImageMagick - Thay đổi kích thước hình ảnh thành hình vuông
- 26. Thay đổi kích thước hình ảnh IFrame
- 27. Android CustomWebChromeClient openFileChooser Thay đổi kích thước hình ảnh trước khi tải lên
- 28. thay đổi kích thước hình ảnh và chất lượng PNG
- 29. Thay đổi kích thước hình ảnh bitmap
- 30. Thay đổi kích thước hình ảnh trong PIL trong Tkinter
Bạn muốn giảm kích thước nếu hình ảnh hoặc Just muốn hiển thị nhỏ? – MAC