У меня есть приложение, которое используется для редактирования файла PNG (например, для записи текста на них).
Мой процесс - создать растровое изображение из этого PNG, использовать Canvas для рисования текста, а затем использовать bitmap.compress для сохранения результата на SD-карту.
Все отлично работает. Но когда я проверяю свой результат, я вижу, что PPI был изменен. Как сохранить этот PPI как оригинальный.
Вот пример: мое Исходное изображение имеет разрешение 1300x700 и 250 ppi (я проверил с PS), но после использования моего приложения для редактирования этого изображения мое результирующее изображение имеет разрешение 1300x700 и 72. PPI . Я хочу, чтобы у моего результата все еще было разрешение 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 );
эта проблема не из-за drawText, потому что когда я не рисую текст, просто открываю и сохраняю, PPI все еще меняется.