Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Образ экрана преобразовать в BMP
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! При помощи функции Код: plaintext 1. я получаю образ экрана и сохраняю его в файл. Как далее преобразовать файл в ВМP? Изучить структуру BMP и вперед ...? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2013, 14:23 |
|
||
|
Образ экрана преобразовать в BMP
|
|||
|---|---|---|---|
|
#18+
BMP (RGB)-это (без опции compression) один из самых простых форматов графики в Windows. Многие кодят свои собственные средства для его сохранения. Самое сложно там - правильно заполнить структуру bitmapinfoheader и не забывать что длина строки выравнивается на границу кратную 4 байтам и строки идут не сверху вниз а снизу вверх. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2013, 14:48 |
|
||
|
Образ экрана преобразовать в BMP
|
|||
|---|---|---|---|
|
#18+
mayton, Спасибо, но вопрос состоит в следующем: 1. Есть ли что-либо готовое (либо код либо несложная прогрммка) для операции преобразования в файл изображения. 2. Если есть для преобразования в другой формат - не беда, применим его. ВМР можно "сделать" потом уже стандартным способом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2013, 15:06 |
|
||
|
Образ экрана преобразовать в BMP
|
|||
|---|---|---|---|
|
#18+
Игорь С, эта функция __getimage - откуда? Что за библиотека? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2013, 16:53 |
|
||
|
Образ экрана преобразовать в BMP
|
|||
|---|---|---|---|
|
#18+
GDI+, спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2013, 09:24 |
|
||
|
Образ экрана преобразовать в BMP
|
|||
|---|---|---|---|
|
#18+
Бота пишите?? Очень интересно. Пару дней назад для младшего брата подружки думал такое написать))) Кто в теме, скажите.. реализация в лоб??? т.е. скрины передаются в либы компьютерного зрения и как-то кнопки нажимаются??? (не пишу под винду, не в теме) М б есть фреймворки готовые??? где типо сущности определил как конечные автоматы, логику прикрутил и в бой, м? Расскажите... вдруг геймдев плачет по мне)))) Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 19:03 |
|
||
|
Образ экрана преобразовать в BMP
|
|||
|---|---|---|---|
|
#18+
Чел получает образ и сохраняет его в файл. Теперь хочет его сохранять в БМП. И разве это бот? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 19:08 |
|
||
|
Образ экрана преобразовать в BMP
|
|||
|---|---|---|---|
|
#18+
На мсдне, по-моему в описании ф-ции BitBlt, есть сцилка как раз на пример кода превращения скриншота в бмп файл. С заполнением хедеров. Пишу по памяти, с телефона, проверять неудобно, поищите по имени ф-ции в гди референсе на мсдне. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2013, 01:49 |
|
||
|
Образ экрана преобразовать в BMP
|
|||
|---|---|---|---|
|
#18+
Capturing an image. В этом примере есть ф-ция делающая бмп файл. http://msdn.microsoft.com/en-us/library/dd183402(v=vs.85).aspx ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2013, 02:30 |
|
||
|
Образ экрана преобразовать в BMP
|
|||
|---|---|---|---|
|
#18+
valkot, Большое спасибо за пример. Этот пример - прямо по теме. Однако мне нужно, как бы, на более низком уровне. Подробнее сформулирую еще раз. Я получаю фрагмент образа экрана функцией getimage(x1,y1,x2,y2,buf) из библиотеки graphics.h Какова структура этого образа? (нужна для дальнейшей обработки) Например: если экран находится в 16-ти цветном режиме, то образ фрагмента 15х15 в целых со знаком (всего 124) таков: 15, 0, 15, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, -1, -2, -1, -2, -1, -2, -1, -2, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 Это изображение белого крестика на черном фоне. Если кто знает, где какие байты и пиксели? Где почитать? Нужно модифицировать старую программу. Заранее благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2013, 21:33 |
|
||
|
Образ экрана преобразовать в BMP
|
|||
|---|---|---|---|
|
#18+
Игорь Сvalkot, Я получаю фрагмент образа экрана функцией getimage(x1,y1,x2,y2,buf) из библиотеки graphics.h Какова структура этого образа? (нужна для дальнейшей обработки) ............ Если кто знает, где какие байты и пиксели? Где почитать?Почитать - наверное документацию на используемую библиотеку? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2013, 08:04 |
|
||
|
Образ экрана преобразовать в BMP
|
|||
|---|---|---|---|
|
#18+
Игорь С, куда уж ниже. Если вы знаете нужные параметры битмапы, то заполняете те 2 хедера всем чем нужно, и по очереди сливаете их в файл, а за ними тот буфер в который написала getimage. Если знаете, что там то что надо. Если не знаете, а задача - создать бмп файл с участком экрана, то лучше замените использование этой ф-ции гдишными, как в примере. Прочтите описание к нему, там все понятно объяснено. Получится сложно, но правильно и понятно. Из всего того кода, вам нужно разобраться с ф-цией с говорящим за себя названием CaptureAnImage. Нужно будет что-то такое: взять DC экрана (GetDC), создать совместимый DC (CreateCompatibleDC), создать совместимую битмапу (CreateCompatibleBitmap), выбрать последнюю в предпоследний (SelectObject), перенести нужный участок с дк экрана в совместимый дк (BitBlt), взять объект битмапы из ее гендла полученного ранее (GetObject), создать и заполнить структуры хедеров используя полученные данные (смотреть пример), выделить из кучи буфер нужного размера (HeapAlloc), вызовом GetDIBits как в примере перенести биты образа в буфер, теперь у вас в буфере правильная битмапа и вся инфа о ней где надо создайте файл и слейте туда все по очереди как в примере, освободите ресурсы. Консультируйтесь с референсами по битмапам и соответственным ф-циям и структурам гди на мсдне. Не знаю как еще помочь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2013, 09:36 |
|
||
|
Образ экрана преобразовать в BMP
|
|||
|---|---|---|---|
|
#18+
есть простое решение на .net Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. картинку можно не сохранять в файл а сразу обработать получить цвет можно с помощью bitmap.GetPixel() и не надо разбираться с форматами такой код можно откомпилировать в .net модуль а потом вызвать из c++ понятно что .net хотя бы v2 должен быть установлен но в win 7 стоит по умолчания даже .net v3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2013, 11:17 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=67&tid=2019797]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
46ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
| others: | 278ms |
| total: | 427ms |

| 0 / 0 |
