Я пытался установить изображение для изображения imageview
вид из внешнего хранилища, и я сделал с этим, но дело в том, что оно устанавливает все изображение в imageview
, и я хочу только установить выбранную квадратную область от этого изображения. Просто жизнь facebook предоставила функциональность, чтобы настроить профиль pic .. Может ли кто-нибудь помочь мне это сделать? Ниже приводится пример того, что я хочу сделать ..Как установить выбранную область изображения в ImageView
3
A
ответ
2
Что-то вроде этого:
public static Bitmap cropBitmapToSquare(Bitmap bmp) {
System.gc();
Bitmap result = null;
int height = bmp.getHeight();
int width = bmp.getWidth();
if (height <= width) {
result = Bitmap.createBitmap(bmp, (width - height)/2, 0, height,
height);
} else {
result = Bitmap.createBitmap(bmp, 0, (height - width)/2, width,
width);
}
return result;
}
Вот пример с растениеводстве деятельности:
http://khurramitdeveloper.blogspot.ru/2013/07/capture-or-select-from-gallery-and-crop.html
0
на самом деле мой комментарий выше о setImageMatrix не был лучшим решением, попробуйте этот пользовательский Drawable (нет необходимости allo Cate любые временные Bitmaps): Код
class CropDrawable extends BitmapDrawable {
private Rect mSrc;
private RectF mDst;
public CropDrawable(Bitmap b, int left, int top, int right, int bottom) {
super(b);
mSrc = new Rect(left, top, right, bottom);
mDst = new RectF(0, 0, right - left, bottom - top);
}
@Override
public void draw(Canvas canvas) {
canvas.drawBitmap(getBitmap(), mSrc, mDst, null);
}
@Override
public int getIntrinsicWidth() {
return mSrc.width();
}
@Override
public int getIntrinsicHeight() {
return mSrc.height();
}
}
и тестирование:
ImageView iv = new ImageView(this);
Bitmap b = BitmapFactory.decodeResource(getResources(), R.drawable.test);
Drawable d = new CropDrawable(b, 150, 100, 180, 130);
iv.setImageDrawable(d);
setContentView(iv);
Смежные вопросы
- 1. ImageView область отображения изображения
- 2. Как установить область с клики для ImageView?
- 3. Как увеличить выбранную область изображения, например, зрачок?
- 4. Установить изображения в массиве imageView?
- 5. Как добавить мышь над текстом в выбранную область изображения?
- 6. Как установить выбранную опцию
- 7. Как установить выбранную опцию?
- 8. Качество изображения в ImageView
- 9. Как установить ImageView для отображения изображения из URL-адреса изображения?
- 10. Установить изображение в imageView
- 11. Как извлечь выбранную область из QGraphicsView?
- 12. Как обрезать части большого изображения в ImageView
- 13. Распечатайте выбранную область в 1 Page PDF
- 14. Вставить текст в выбранную текстовую область
- 15. андроид - ImageView - установить не-ресурс изображения
- 16. Javascript добавляет теги в выбранную область
- 17. Сделать выбранную область на загруженной области прозрачной
- 18. Как установить OnClickListener в повернутый ImageView?
- 19. Как установить границу на ImageView
- 20. Как установить выбранную опцию по умолчанию, выбранную в Javascript
- 21. Как анимировать выбранную часть изображения
- 22. IndentGuide, можно добавить цвет в выбранную область?
- 23. Как получить выбранную карту изображения?
- 24. Как установить выбранную строку таблицыView
- 25. Android: Как установить изображения в Imageview из видео
- 26. Как установить ресурс изображения в ImageView с использованием DataBinding
- 27. установить изображения в imageview, чтобы он выглядел как progressbar.
- 28. Как установить ImageView относительно фонового изображения в Android Studio
- 29. Как установить изображения камеры в ImageView с помощью Android Lollipop?
- 30. Как установить LayoutParams для ImageView
вы имеете в виду вы хотите обрезать изображение? –
используйте это с целью вашей камеры - photoPickerIntent.putExtra («crop», «true»); –
Я не хочу изменять исходное изображение, я просто хочу установить выделенную область в imageview – Akshay