C # Scan0 и шагать - PullRequest
       11

C # Scan0 и шагать

3 голосов
/ 17 апреля 2011

Кто-нибудь знает, для чего нужны Scan0 и Stride? Мне нужно хорошее объяснение. Спасибо.

Ответы [ 2 ]

13 голосов
/ 17 апреля 2011

Вы говорите о классе BitmapData?Если да, то описание в документации достаточно ясное, я думаю:

Scan0:

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

Другими словами, это позволяет вам найти данные для проверки или изменения - или даже позволяет сделать растровое изображение совершенно другимчасть данных.

Stride:

Шаг - ширина одного ряда пикселей (строки развертки), округленная дочетырехбайтовая граница.Если шаг положительный, растровое изображение идет сверху вниз.Если шаг является отрицательным, растровое изображение идет снизу вверх.

Если вы хотите перейти от одной строки к другой, вам нужно добавить шаг к адресу строки, в которой вы находитесь в данный момент.смотря на.Строки выровнены по 4-байтовым границам, чтобы все виды кода могли получить к нему более эффективный доступ.(Различные операции в ЦП оптимизированы для работы на границах 4 или 8 байтов.)

1 голос
/ 17 апреля 2011

Единственное место, где я видел Scan and Stride, это когда имеешь дело с изображениями.

Смежный вопрос ... Кто-нибудь может объяснить функцию шага в растровых данных?

...