|
3 / 3 / 0
Регистрация: 14.12.2020
Сообщений: 171
|
||||||
Как функцией BitBlt записать данные в массив?28.05.2023, 16:32. Показов 4078. Ответов 55
Метки нет (Все метки)
Здравствуйте!
Подскажите, пожалуйста как заставить следующий код заработать?
0
|
||||||
| 28.05.2023, 16:32 | |
|
Ответы с готовыми решениями:
55
Как записать в массив слова с функцией strtok Вывод изображения функцией BitBlt Как записать в массив данные из *.TXT и и правильно рассортировать данные по ячейкам массива? |
|
12 / 12 / 0
Регистрация: 02.07.2014
Сообщений: 117
|
|
| 29.07.2023, 10:49 | |
|
Меня смущает слово "лишь". А чего собственно ещё не хватает?
И я специально подчёркивал, что речь о формате буфера после StartDrawing(). Какой он до этого и после stop... автор не посчитал нужным документировать, а значит не обязан сохранять от версии к версии и от системы к системе. p.s. #PB_PixelFormat_ReversedY : The Y-Coordinate of the output is reversed in memory (the bottom row is stored first). т.е. ещё в каком порядке эти самые строки хранятся.
0
|
|
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
|
| 29.07.2023, 11:05 | |
|
А как, к примеру, узнать, с какого байта относительно *Buffer начинаются те самые пиксельные байты, хранящие R,G,B цвета ?
0
|
|
|
12 / 12 / 0
Регистрация: 02.07.2014
Сообщений: 117
|
|
| 29.07.2023, 11:08 | |
|
С нулевого. А вот какая строка, первая или последняя (верхняя / нижняя) зависит от #PB_PixelFormat_ReversedY
0
|
|
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
||
| 29.07.2023, 11:17 | ||
|
То есть, после StartDrawing() в адресе *Buffer находятся непосредственно байты самого изображения со значениями R,G,B или B,G,R и больше ничего лишнего. Я правильно понял ?
0
|
||
|
12 / 12 / 0
Регистрация: 02.07.2014
Сообщений: 117
|
|
| 29.07.2023, 11:37 | |
|
Правильно, но только обязательно с учётом того, что "англицким" по белому:
#PB_PixelFormat_8Bits : 1 byte per pixel, palletised #PB_PixelFormat_15Bits : 2 bytes per pixel #PB_PixelFormat_16Bits : 2 bytes per pixel #PB_PixelFormat_24Bits_RGB : 3 bytes per pixel (RRGGBB) #PB_PixelFormat_24Bits_BGR : 3 bytes per pixel (BBGGRR) #PB_PixelFormat_32Bits_RGB : 4 bytes per pixel (RRGGBB) #PB_PixelFormat_32Bits_BGR : 4 bytes per pixel (BBGGRR) #PB_PixelFormat_ReversedY : The Y-Coordinate of the output is reversed in memory (the bottom row is stored first). т.е. один пиксель может занимать от 1-го до 4-х байт в обсуждаемом буфере. Добавлено через 14 минут Мне это не интересно, но кажется можно весь этот спектр экзотики в форматах 1-4 по пытаться получить используя RDP. В клиенте допустимо устанавливать "глубину цвета". Не проверял насколько это может повлиять на формат скриншота. Идея бредовая.
0
|
|
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
|||
| 29.07.2023, 11:54 | |||
|
Добавлено через 12 минут
0
|
|||
|
12 / 12 / 0
Регистрация: 02.07.2014
Сообщений: 117
|
|
| 29.07.2023, 12:07 | |
|
https://ru.wikipedia.org/wiki/... p_Protocol
Я не про палитру. Я про то, что для экономии трафика и попытки приспособиться к медленным каналам клиент RDP позволяет сказать хосту, что он древний монитор с 256-ю цветами ))) Но чаще именно 15бит на плохих каналах используется.
0
|
|
|
|
||
| 29.07.2023, 12:09 | ||
|
DrawingBuffer() вернет указатель на массив данных картики, а не на данные файла. Если нужны данные файла, следует использовать функции ReadFile(), ReadData() и т. д.
0
|
||
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
|||
| 29.07.2023, 12:14 | |||
|
Добавлено через 2 минуты
0
|
|||
|
12 / 12 / 0
Регистрация: 02.07.2014
Сообщений: 117
|
|
| 29.07.2023, 12:19 | |
|
Кстати Свежие версии mstsc (клиент в составе win10) и не позволяют ниже 15 бит опускаться.
0
|
|
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
|||
| 30.07.2023, 19:51 | |||
0
|
|||
|
|
||
| 30.07.2023, 21:38 | ||
|
0
|
||
|
3 / 3 / 0
Регистрация: 14.12.2020
Сообщений: 171
|
|
| 01.08.2023, 06:36 [ТС] | |
|
Например, о них пишут в одной из русифицированных версий хелпа...
Я например, с DrawingBuffer() потому долго и не мог разобраться, что меня упоминание о дополнительных данных с толку сбивало....
1
|
|
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
||
| 01.08.2023, 06:52 | ||
|
0
|
||
|
3 / 3 / 0
Регистрация: 14.12.2020
Сообщений: 171
|
||
| 01.08.2023, 07:30 [ТС] | ||
|
из цветов....или ошибаюсь?
0
|
||
|
12 / 12 / 0
Регистрация: 02.07.2014
Сообщений: 117
|
|
| 01.08.2023, 11:15 | |
|
Это всё историческое наследие. Когда то мы вполне обходились 2-мя или 16-ю цветами.
Я видел цветной монитор без графики с 4-мя цветами с возможностью выбора из 4-х палитр. Как 8-битный (т.е. 0-255 цветов) цвет разбирался/собирался из/в RGB не помню и не интересно вспоминать. https://stackru.com/questions/... chenie-rgb p.s. про дополнительные данные - это фантазии переводчиков.
0
|
|
| 01.08.2023, 11:15 | |
|
Как записать данные в массив ? Как записать данные в массив? Как записать нетипизированные данные в массив? Как пробежаться по БД и записать данные в массив? Как записать данные с файла в массив? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Эксперимент с картинкой-обложкой на CodinGame
Adler 10.07.2026
Решил на днях провести эксперимент. У меня есть аккаунт на CodinGame, ТОП-3 по РФ среди 2200 участников (в разделе соревнования по программированию ИИ-ботов). Там есть обложка, куда можно влепить. . .
|
GitDOS: Когда я решил скрестить MS-DOS, GitHub и Claude
MaGz GoLd 08.07.2026
Привет, Киберфорум! Хочу поделиться своим проектом, который, надеюсь, вас заинтересует. GitDOS — это веб-приложение, которое позволяет запускать DOS в браузере с тремя крутыми фичами: диски живут в. . .
|
Учебный мини "цифровой двойник" = (Сервер = Java + Flask_питон )+(3D = Гугловскаая 4T nvideo + google colab) +( WMS = Odoo на Docker)
anaschu 07.07.2026
Увидел в требованиях к вакансии создателя имитационных моделей связку (REst + Api + WMS + Anylogic + питон + 3D Nvideo), и решил посмотреть, что это такое. Из этого всего я работал более менее. . .
|
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал.
Оно само - говорит.
Кто слышит тот слышит.
|
|
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было
ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась.
Первый вариант. . .
|
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2.
Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
|
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет.
Но обычно это 50 лет и более.
Наверное, закисление почвы происходит сезонно в средней. . .
|
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
|