суббота, 20 октября 2007 г.

Этот удивительный Autotrace

Понадобилась мне картинка для презентации - иллюстрация теории центральных мест Кристаллера. Нашёл вордовский документ с чем-то похожим (правда зачем-то использовали какие-то стёбанные шрифты, типа шрифтов punk в TeX-е).

Задача первая - как вытянуть эту картинку из doc-a? C этим справился быстро, помогла заметка в Компьютерре (рубрика RTFM).
Надо просто сохранить в формате HTML. Все картинки сохраняются в gif-файлы (а не в png, как в заметке говорилось).
Теперь надо вставить картинку в tex-документ. Т.е. надо перевести в ps/eps, а лучше сразу в pdf.
Ну, думаю -чего проще. Открываем в XnView, сохраняем в ps. Ага, щаз. Получили чёрный прямоугольник.

Обращаемся к Интернету. И тут оказалось, что ps - векторный формат :0 ! И для перевода из битмапа в векторную картинку необходима автотрассировка. Это умеют делать Adobe Illustrator, Bitmap Tracer и многие другие проги - вот здесь
http://www.masternewmedia.org/ru/ digital_imaging/ autotracing_how_to_
convert_bitmaps_20050819.htm

длинный список таких прог. Я выбрал единственную бесплатную прогу из него - AutoTrace ( http://autotrace.sourceforge.net/ ). На вход она gif не берёт, конвертнул в bmp. Скачал в бинарниках (неохота компилять исходники). Оказалась это такая консольная утилита - один экзешник и с ним штук тридцать dll. Нда, думаю, оригинальная поставка.

Но ещё более оригинальным оказался формат командной строки.
Казалось бы чего естественнее
autotrace file.bmp file.ps
Нет - too many files. Если оставить autotrace file.gif - получаем кучу цифер, выданных в stdout (такого цирка ещё не видел я). Вызов с ключом -help прояснил ситуацию, однако при этом система выкинула ошибку о попытке записи куда-то не туда. Такую же ошибку выдаёт при попытке трассировки в ps (даже с правильными ключами). Сыровата прога, даа..

В итоге удалось конвертировать мой c_theory.bmp в pdf и eps (в цветном виде). Делалось это так:
autotrace -output-format eps -output-file c.eps c_theory.bmp
autotrace -output-format pdf -output-file c.pdf c_theory.bmp

Есть ещё надстройка над Autotrace с GUI на Java. Называется Delineate. Надо бы и её попробовать.

Комментариев нет: