Как я могу уменьшить размер изображения, полученного через функцию обмена на Android? - PullRequest
0 голосов
/ 12 октября 2011

Я хочу уменьшить разрешение / размер изображения, полученного с помощью общего ресурса, и у меня есть только его URI.Изображения могут быть в разных форматах, и я могу получить несколько изображений одновременно.Я использовал следующий фильтр намерений:

 <intent-filter android:icon="@drawable/icon" android:label="Share">
  <action android:name="android.intent.action.SEND" />
  <action android:name="android.intent.action.SEND_MULTIPLE" />
  <category android:name="android.intent.category.DEFAULT" />
  <category android:name="android.intent.category.ALTERNATIVE" />
  <category android:name="android.intent.category.SELECTED_ALTERNATIVE" />
  <data android:mimeType="image/*" />
 </intent-filter>

Как я могу это сделать?

Нужно ли мне снова сохранять изображения на карту SD с другим именем, если я хочуподелиться им / ими снова с другим приложением?

Спасибо!

1 Ответ

3 голосов
/ 12 октября 2011

Используйте API Bitmap.compress (...) .

Редактировать Чтобы скопировать и уменьшить масштаб изображения. Создайте новое пустое растровое изображение, используйте его как место для рисования холста. Нарисуйте старое растровое изображение на холсте с соответствующей матрицей Scale или нарисуйте старое растровое изображение с целевым прямоугольником тех же размеров, что и целевое растровое изображение (в зависимости от API и желаемого эффекта), затем сохраните конечное растровое изображение.

Или только для масштабирования используйте Bitmap.createScaledBitmap () .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...