PureBasic - форум

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PureBasic - форум » Вопросы по PureBasic » Как склеить изображения?


Как склеить изображения?

Сообщений 1 страница 4 из 4

1

Всем привет! Давно я не брал в руки шашки (С)  :rolleyes:
Собственно, вопрос в названии темы. Расшифрую: имеется две картинки (1 и 2). Нужно создать третью, содержащую 1 и 2, склеенные, допустим, по горизонтали.
Подскажите направление решения.

0

2

КЭС
Будучи не зная как это делать могу предположить. Сначала разобраться с форматом изображения чтобы получить доступ к растровым данным, чтобы узнать сколько байт приходится на пиксел. Узнать ширину картинки и высоту, удостоверится что произведение байт*ширину*высоту получается длина данных файла без заголовочной информации. Далее считываем строку пикселов левого файла и присоединяем строку правого файла, при учёте одинаковости форматов, иначе придётся сначала преобразовать в неиндексированный png (с прозрачностью) или bmp. О, неиндексированный как раз полноцветный и будет иметь одинаковый формат. Далее придётся изменить данный в заголовке файла. Скорее всего нужна структура, которая определяет заголовочные данные и определяет как читать файл. Возможно стоит спросить на оф.форуме, так как там могут дать ссылку на готовый вариант структуры, как мне дали по формату иконки ico.

0

3

AZJIO, спасибо за внимание к теме и за ответ! Картинки одного формата, с одним разрешением. Загружаю обычным LoadImage(), создаю третье изображение CreateImage(), размером с удвоенной шириной (высотой - не важно), а дальше не пойму, как загруженные картинки в третье поместить, каждое со своими начальными координатами.

0

4

Вопрос снимаю: разобрался. Вспомнил, как применять DrawImage() :)

0


Вы здесь » PureBasic - форум » Вопросы по PureBasic » Как склеить изображения?