Шаги ==== 1. # apt-get install -y mapsoft2 2. Поместить любые большие file.{jpg,tiff,gif,png} изображения в папку source, например с https://www.online-convert.com/file-type. 3. $ for source in jpg tiff gif png; do echo "$source ->" for target in jpg tiff gif png pnm; do echo -n " $target... " time -f "%es" -- ms2img source/file.$source output/file.$source.$target done done Фактический результат ===================== Конвертация в формат GIF из JPG, PNG и даже GIF (!) занимает значительно больше времени (30-40 секунд), чем другие, и даже чем TIFF -> GIF (все < 10 секунд): > jpg -> > jpg... 0.66s > tiff... 1.23s > gif... 37.60s > png... 7.26s > pnm... 1.46s > tiff -> > jpg... 0.02s > tiff... 0.07s > gif... 5.40s > png... 0.56s > pnm... 0.09s > gif -> > jpg... 0.34s > tiff... 0.37s > gif... 29.77s > png... 1.33s > pnm... 1.16s > png -> > jpg... 0.75s > tiff... 1.49s > gif... 35.58s > png... 8.21s > pnm... 1.60s Ожидаемый результат =================== Конвертация занимает < 10 секунд. Воспроизводимость ================= Воспроизводится на виртуальных машинах: [sisyphus] ALT Workstation 11.0 x86_64 mapsoft2-2.10-alt1.x86_64 [p11] ALT Workstation 11.0 x86_64 mapsoft2-2.7-alt1.x86_64
Задержка происходит при преобразовании картинки к 8-битной палитре. Для 8-битного gif это неизбежно, тот же эффект можно наблюдать и при сохранении в 8-битный png (`ms2img in.jpg --png_format=pal out.png`). Там можно попробовать какие-то оптимизации придумать при поиске ближайшего цвета, я над этим подумаю