Войти

Показать полную графическую версию : Как создать BMP файл из командной строки. Как работать с графикой из командной строки


Страниц : [1] 2

MKN
21-03-2016, 15:42
Подскажите пожалуйста консольную утилитку для создания bmp файлов (можно др. графических форматов) из командной строки.
Т.е. в команде присутствуют размер, битность , цвет и т.д.

Charg
21-03-2016, 16:04
А содержимое ты как из командной строки нарисуешь?

MKN
21-03-2016, 16:10
А содержимое ты как из командной строки нарисуешь? »
Содержимым будет обыкновенная цветная заливка. Т.е. создастся простой цветной квдратик или прямоугольник.
К примеру так делает функция CreateBitmap и похожие.

NickM
21-03-2016, 17:45
MKN, imagemagick (http://www.imagemagick.org/script/index.php) не смотрели?

Iska
21-03-2016, 19:39
Присоединюсь к рекомендации коллеги NickM.

MKN
22-03-2016, 08:01
imagemagick не смотрели? »
Первым делом... Т.к. другого инструментария похоже в природе нет... Но продукт этот оч громоздский и мутный...
Моя задача "на 10 килобайт" раздута в нём до неимоверных размеров и требует времени для изучения...

NickM
22-03-2016, 08:28
Т.к. другого инструментария похоже в природе нет... »

тогда следует заморчочиться с *.vbs скриптом, в котором создавать объект canvas или image с требуемыми характеристиками(размер, заливка, фигура и пр.), а после сохранять в файл методом SaveTofile

Iska
22-03-2016, 08:35
Но продукт этот оч громоздский и мутный...
Моя задача "на 10 килобайт" раздута в нём до неимоверных размеров и требует времени для изучения... »
MKN, если детально опишете задачу/задачи — попробуем подсказать готовый код.

тогда следует заморчочиться с *.vbs скриптом, в котором создавать объект canvas или image с требуемыми характеристиками(размер, заливка, фигура и пр.), а после сохранять в файл методом SaveTofile »
И снова поддержу. Тут, правда, куда меньше возможностей: VBScript: работа с графическими файлами — Windows Script Host, HTA (VBScript, JScript) — Коллекция скриптов и идей — Серый форум (http://forum.script-coding.com/viewtopic.php?id=2846).

MKN, ещё вспомнил — IrfanView вроде как умеет что-то делать из командной строки (сам не пробовал).

MKN
22-03-2016, 09:54
если детально опишете задачу »
Задача проста. Для наглядности, типа :
CreateBMP.exe -путь\имя.bmp -размер100,80 -HEX-цвет -24bit

IrfanView вроде как умеет »
Да. Отличный инструмент для ряда задач. Но создавать файлы не умеет... (в доках такого не нашёл...)

CyberDaemon
22-03-2016, 17:32
Но создавать файлы не умеет... »
Из меню умеет. "Изображение -> Создать новое (пустое) изображение... Snift+N", потом "сохранить как"
Может и из командной строки тоже сможет.

Charg
22-03-2016, 17:36
Из меню умеет. "Изображение -> Создать новое (пустое) изображение... Snift+N", потом "сохранить как" »

Как создать BMP файл из командной строки

CyberDaemon
22-03-2016, 17:37
Charg, угу, я дополнил мысль. Раз может из меню - может и из командной тоже можно.

MKN
22-03-2016, 17:46
Придётся использовать ImageMagick... Инструмент конечно мощнейший. Из командной строки чудеса творит. Но размер... Тот же основной convert.exe - аж 12 метров...
И попутно вопрос по ImageMagick, может кто знает... :
Каким образом использовать одновременно ключи -append и -border ? Т.е. когда делается последовательность из изображений, но рамку надо сделать, скажем, только на втором изображении, остальные не трогаем ?

Iska
23-03-2016, 08:05
Задача проста. Для наглядности, типа :
CreateBMP.exe -путь\имя.bmp -размер100,80 -HEX-цвет -24bit »
MKN, как-то так:
convert.exe -size 100x80 xc:"#aaddff" -type truecolor "C:\Temp\Sample.bmp"
И попутно вопрос по ImageMagick, может кто знает... :
Каким образом использовать одновременно ключи -append и -border ? Т.е. когда делается последовательность из изображений, но рамку надо сделать, скажем, только на втором изображении, остальные не трогаем ? »
Ох, не всю задачу Вы озвучили ;).

MKN
23-03-2016, 08:14
как-то так: »
С convert.exe было всё понятно, но слишком объёмно. Потому и не хотелось бы связываться. Уверен, что моя задача решается десятком-другим килобайт...
Но, т.к. решения нет, то пришлось связаться с ImageMagick. А раз уж связался , то и задачи стали теперь иные. :)
И по этим задачам сразу возникли вопросы (ессно после изучения доков в пределах моих возможностей)

Iska
23-03-2016, 08:21
С convert.exe было всё понятно, но слишком объёмно. Потому и не хотелось бы связываться. »
Не столько объёмно, сколь не всегда логично (это я по памяти сужу).

Уверен, что моя задача решается десятком-других килобайт... »
Хех. Это я Вам ещё Adobe Photoshop не предлагал :). Там и возможностей побольше, и логика куда более понятна. Да и решается всё в рамках нормального объектного подхода (а в ImageMagic объект Automation решает по сути одну задачу — тупо передать ровно ту же самую командную строку :lol:).

А раз уж связался , то и задачи стали теперь иные.
И по этим задачам сразу возникли вопросы (ессно после изучения доков в пределах моих возможностей) »
Если есть желание — расписывайте, будем «ковырять» вместе.

MKN
23-03-2016, 08:29
Не столько объёмно, сколь не всегда логично »
О какой логике речь ? :) В моём случае предполагалось очень даже логично. В коде программки размером менее сотни килобайт надо было генерировать кучу BMP файлов для "внутреннего" использования. Согласен был бы и на включение внешней утилитки для этих целей. Но утилитки, а не утилитище размером более 12 метров :)
Теперь концепция вынужденно поменялась...
Если есть желание — расписывайте, будем «ковырять» вместе. »
Желание у меня есть, но взваливать на других обузу "ковыряния" в мало кому интересном, кроме меня вопросе, как то не ловко... :)

Iska
23-03-2016, 09:31
О какой логике речь ? »
О параметрах утилиты. Не всегда они выглядят логично, особенно в комплекте, когда решаешь ту или иную задачу.

MKN
23-03-2016, 09:36
О параметрах утилиты. Не всегда они выглядят логично »
Есть такое дело... :) Я чуть позже покажу скрины и команду, где вроде бы действую по логике, но результат совсем не тот...

Charg
23-03-2016, 10:07
Уверен, что моя задача решается десятком-другим килобайт... »
Решается десятком-сотней самописных килобайт. Те решения, которые в интернете расчитаны на массового пользователя, вполне логично облеплены горой других функций, которые не нужны конкретно для этой задачи, но возможно нужны другим юзерам.
Можно конечно облазить stackoverflow на предмет наличия готового кода и отталкиваться именно от него, раз уж хочется "компактного" решения.




© OSzone.net 2001-2012