Создание палитры изображений с несколькими строками с помощью ImageMagick

Создание палитры изображений с несколькими строками с помощью ImageMagick

Я научился генерировать изображение палитры из исходного изображения с помощью ImageMagick:

convert source.png -colors 256 -unique-colors -scale 1000% palette.png

Выводится изображение с одним рядом цветов, например следующее:

Однорядная палитра

Однако я хотел бы установить значение, чтобы ограничить количество квадратов/столбцов, и начать новую строку, когда это число будет достигнуто. Поэтому вывод должен выглядеть примерно так:

Многорядная палитра

Можно ли это сделать с помощью ImageMagick? Или есть другой способ?

решение1

Например, вы можете обрезать длинную линию на 4 части (каждая по 25%), а затем соединить их одну под другой ( -append):

convert source.png -colors 256 -unique-colors -scale 1000% \
 -crop 25%x100% -append palette.png

Это не совсем то, что вы просили, но, изменяя процентное значение, вы можете изменять точку обрезки или использовать фиксированную ширину в пикселях, например, -crop 63x100%чтобы получить именно тот результат, который вы привели в качестве примера.

Связанный контент