Изменить PPI (пиксель на дюйм) PNG-файла в Android
У меня есть приложение, которое используется для редактирования файла PNG (например, написать текст на них).
Мой процесс - создать растровое изображение из этого PNG, использовать Canvas для рисования текста, а затем использовать bitmap.compress для сохранения результата на SD-карту.
Все отлично работает Но когда я проверяю свой результат, я вижу, что PPI был изменен. Как сохранить этот PPI как оригинальный.
Вот пример: мое Исходное изображение имеет разрешение 1300x700 и разрешение 250 пикселей на дюйм (я проверил с помощью PS), но после использования моего приложения для редактирования этого изображения мое результирующее изображение имеет разрешение 1300x700 и 72 пикселей на дюйм. Я хочу, чтобы изображение получилось с разрешением 1300x700 и разрешением 250 ppi.
Пожалуйста, помогите мне, спасибо за вашу помощь.
вот:
Bitmap bitmap = null;
try
{
BufferedInputStream buf = new BufferedInputStream(
PicksActivity.this.getAssets().open( file_name ) );
bitmap = BitmapFactory.decodeStream( buf );
}
catch ( Exception e )
{
// TODO: handle exception
}
Затем создайте растровое наложение:
Bitmap bmOverlay = Bitmap.createBitmap( bitmap.getWidth(), bitmap
.getHeight(), Config.ARGB_8888 );
и они сжимают это:
bmOverlay.compress( CompressFormat.PNG, 100, fos );
эта проблема не из-за draw Text, потому что, когда я не рисую текст, просто открываю и сохраняю, PPI все еще меняется.