![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Pcrepair |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Добрый день!
Вопросы к программистам, хорошо знающим работу с графикой Исходные данные: - есть test1.bmp (1bit, черный цвет -фон, белый цвет - значащий) - размеры файла 1280х1024 пик (скрин экрана дисплея) - в изображении есть символы и геометрические фигуры Задача: - сгенерировать BMP 1bit файлы 1280х1024 пик из исходного test1.bmp, в количестве равном общему числу символов и фигур в исходном файле - в каждом новом файле должна быть только один символ или фигура, остальным присвоен цвет = черный - фигурой или символом считать совокупность пикселей имеющих между собой контакт - каждый новый файл должен иметь свое имя (координаты первого пикселя символа или фигуры - верхний левый, типа 23-57.bmp) и быть записн на ЖД в том же каталоге Хотелось бы обсудить, с теми кто знает, алгоритмы работы такой программы если есть примеры кода на ДЕЛФИ, хорошо бы взглянуть Заранее спасибо всем! Присоединённый файл ( Кол-во скачиваний: 2 )
test1.zip 9,11 Kb--------------------
Сборник рабочего кода Процедур и Функций DelPhi http://validcoderepo.narod.ru/ |
|||
|
||||
| VictorTsaregorodtsev |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 274 Регистрация: 28.7.2006 Репутация: нет Всего: 8 |
Это не задача на графику, а задача на владение языком (или библиотекой VCL) и алгоритмами.
Если разрешено пользоваться классами из VCL - то можно не заморачиваться с побитовыми операциями (можно поставить TBitmap.PixelFormat=pf32bit и получить возможность работать с байтовой кодировкой цвета, когда цвету будет соответствовать не бит, а байт или четырехбайтовое целое - в общем, смотря как потом условие писать). И финальные битмапы можно создавать в памяти как многоцветные (чтобы не париться с битовыми операциями), а перед записью в файл менять им формат на однобитовый. Ну а поиск фигур - это придётся писать вручную. Я в текущем проекте написал подобное без проблем (мне надо было удалять с картинки "кляксы", чей размер меньше заданного числа пикселов, а крупные кляксы-фигуры оставлять). Могу написать за денежку. Но я, правда, работаю с С++ Билдером, поэтому трансляция сишного кода в паскаль у меня затянется (и денежку я запрошу за суммарное время написания-отладки кода на С++ и последующий перевод кода на паскаль, с которым давно не работал). Билдер включает в себя дельфийский компилятор с паскаля, поэтому пас-код будет транслироваться без ошибок, я это проверю ;) |
|||
|
||||
| Pcrepair |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
классы не нужны, вся программа - форма с кнопкой, при нажатии
- кушает тестовый файл в том же каталоге - генерирует файлы с символами и записывает их на диск - ждет следующего нажатия на кнопку это тестовая программа - кусочек, для определения всего алгоритма обработки, там еще много чего будет --------------------
Сборник рабочего кода Процедур и Функций DelPhi http://validcoderepo.narod.ru/ |
|||
|
||||
| VictorTsaregorodtsev |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 274 Регистрация: 28.7.2006 Репутация: нет Всего: 8 |
Я не про то. Либо можно задействовать TBitmap (т.е. высокоуровневые возможности чтения картинки из файла и записи её в файл, возможности доступа к строкам пикселов через ScanLine,...) - либо все перечисленные в скобках вещи надо будет писать на чистом паскакале. ЗЫ. Всё, больше не буду возвращаться в тему (в прошлом письме написал, что я сишник). Кому что надо - в личку или в мыло. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |