2

У меня есть много изображений размером примерно 10000 x 40 пикселей, которые визуализируют графики, которые в основном представляют собой цепочки с несколькими шпорами и другими «украшениями». (Они сделаны путем fstdraw OpenFST через dot Graphviz).

Из командной строки, как я могу автоматически перегруппировать одно из этих тощих изображений, чтобы они легко помещались на экране 1920x1080? Например, разделите изображение на части длиной не более 1920 пикселей, а затем сложите их вертикально.

Что-то с помощью ImageMagick's convert -crop в цикле?

Вот что не получается:

  • Замена dot одной из ее сестер neato , fdp и т.д. По крайней мере, fdp выводит не тощее изображение, но только потому, что тощий график случайным образом скручивается и перекрывается, как чертова хромосома. Изображение по-прежнему в основном белое, надписи нечитаемо крошечные, а структура - просто волнистая.

  • Добавление соотношения вариант ratio=1 для ввода всего лишь колодок dot «с 10000x40 до 10000x10000.

1 ответ1

1

Поскольку 10000/1920 округляет до 6, разделите входные данные на 6 частей слева направо и склейте их обратно сверху вниз. Вместо использования 6 промежуточных файлов используйте формат, который содержит несколько изображений (tiff намного быстрее, чем gif), а также stdin и stdout.

convert in.png -crop 6x1@ +repage tiff:- | convert tiff:- -append out.png

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .