Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/47: Рейтинг темы: голосов - 47, средняя оценка - 4.60
0 / 0 / 1
Регистрация: 03.07.2015
Сообщений: 15

Объединение нескольких png файлов в один png-файл

07.07.2016, 21:11. Показов 9865. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В общем надо написать програмулину, которая объединяет несколько png файлов (ширина и высота одинаковы у изображений) в один png-файл.

Пример:
Есть пара png-картинок: , , , , ,
Итоговое изображение должно выглядеть примерно как-то так:



Видел примеры кусков как это реализовано на яве, но так как я в ней вообще не разбираюсь, то ничего в них не понял
Может кто предложить решение данной проблемы с помощью великого и могучего C++ ? Буду благодарен
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.07.2016, 21:11
Ответы с готовыми решениями:

Конвертировать из BMP в PNG без VCL
Приветствую, Задача: Конвертировать из BMP в PNG без VCL (но работаю на C++ Builder), без доп библиотек,без GDI.... Заранее спасибо!

Вращение TImage c PNG. Нужна переделка решения для BMP под PNG
Здравствуйте. Очень нужна помощь с вращением. Есть решение данной проблемы для формата bmp :...

PNG
Как с помощью PNG создавать движение обекта, вот есть картинка фомарта ПНГ, хотелось бы узнать как сделать чтобы из этой картинки записать...

1
Эксперт С++
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
08.07.2016, 12:18
Если на словах, то решение такое. Берём библиотеку чтения-записи PNG. Многие обратились бы к libpng, но я порекомендовал бы LodePNG: она простая, компилируется прямо в программу, поддерживает C++.
Читаем информацию о входных файлах (интересуют в первую очередь размеры картинок). На этом же этапе можно загрузить и содержимое картинок в формате RGBA. Это будут массивы строк изображения в порядке сверху вниз, в каждой строке пиксели слева направо, на каждый пиксель 4 байта. Определяем, каким образом картинки будут скомпонованы, исходя из их размеров. Если размеры известны заранее и они одинаковы, как в случае этих смайлов, задача упрощается. Создаём массив под выходное изображение в том же порядке (сверху вниз, слева направо, 4 байта на пиксель). Копируем туда строки из исходных изображений в нужном порядке. Если в результирующем изображении образуются пустые места, заполняем их, например, чёрным цветом с прозрачностью на максимуме. Записываем этот массив в PNG при помощи той же LodePNG.
Можно не писать всю программу сразу, а сначала поиграться с более простыми вещами: например, загрузить маленький простенький PNG и посмотреть, какие данные составляют изображение; сгенерировать простое изображение и записать в PNG; изменить загруженные данные, сохранить и посмотреть, что станет с картинкой.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.07.2016, 12:18
Помогаю со студенческими работами здесь

PNG прозрачность
У меня BCB 2010 там есть TPNGImage.hpp есть возможность создавать png холсты))) так вот мне нужно создать холст фон которого будет...

png image
Привет всем! помогите, как вставить PNG картинку в C++ Builder. зарание спасибо :D

формат PNG
Доброго времени суток! Пишу курсовую, надо вставить в прогу пару рисунков в формате PNG. гуглил, чет ниче путевого не нашел, ...

Загрузка png из ресурсов.
Всем привет. Нужно из ресурсов в TImage загрузить png изображение. Для bmp примеров...

Кнопка с картинкой png
Всем привет. Подскажите, как в билдере можно прицепить к кнопке .png файл? Поиск не дал результатов, ибо исключает png из запроса, а...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru