2016-09-01 3 views
2

Я читаю Loading Large Bitmaps Efficiently и у меня трудное время, чтобы понять концепцию inSampleSizeПочему InSampleSize должен быть мощностью 2?

Почему это должно быть степенью 2? Это создает изображение больше необходимого, и мне интересно, почему я просто не могу установить точную ширину и высоту.

+0

Вы можете использовать тот же самый размер, но тогда все равно будет большой битмап, загруженный в memmory. Сначала используйте размер insample для уменьшения самого растрового изображения, затем установите ширину и высоту в требуемое значение – X3Btel

ответ

0

Согласно this inSampleSize просто уменьшите количество пикселей. Он может t be used on whole numbers, you can t map 2 пикселя до 1,5 пикселя, то есть его мощность равна 2.

Точка inSampleSize предназначена для уменьшения физического размера растрового изображения. Затем вы можете изменить его размер в соответствии с вашими потребностями.

+0

, это фактически не отвечает на вопрос, почему он должен быть сильным из двух? вы можете отобразить 3x3 пиксела в один, но 3 не является силой 2 .. – lelloman

+0

кажется, что в карте с отпечатком в размере 2 к 1. Он отображает только 2 к 1. Таким образом, вы получаете мощность 2 – X3Btel

+0

да, но опять же, почему ? – lelloman

0

Я не совсем уверен, вероятно, они могут использовать когерентную выборку для пробы изображения. который требует, чтобы часть его параметра была мощностью 2. Не уверен, хотя.

Смежные вопросы