Конвертируем

Разговор пойдет о конвертировании файлов из одного формата в другой.
Все скрипты предполагают наличие как минимум дистрибутива linux а так же каталога с файлами.
На выходе в том же каталоге имеем файлы с теми же именами но уже требуемого формата. Оригиналы за ненадобностью удаляем.

Итак поехали

dfont2ttf
dfont любит apple а ttf любят почти все.

Для работы скрипта нужен fondu Utilities for converting between and manipulating mac fonts and unix fonts.

#!/bin/sh
#dfont2ttf

for file in `ls | grep dfont`
do
  filename=${file%.*}
  fondu "$file"
  echo "writing ${filename}.ttf"
  rm -f $file
done

icns2png
Тот же apple для иконок использует icns ну а если интересно png…

Устанавливаем media-libs/libicns A library for the translation of the icns format

#!/bin/sh
#icns2png

for file in `ls | grep icns`
do
  filename=${file%.*}
  #размер тоже по вкусу ;)
  icns2png -x "$file" -d 32 -s 128x128
  echo "writing ${filename}.png"
  rm -f $file
done

otf2ttf
otf хоть и так почти ttf но все же не совсем…

Нужен media-gfx/fontforge postscript font editor and converter
Тут ничего не удаляется после конвертирования. надо добавьте сами.

#!/usr/local/bin/fontforge
# Quick and dirty hack: converts a font to truetype (.ttf)
# fontforge -script otf2ttf.sh FONTNAME.otf 
Print("Opening "+$1);
Open($1);
Print("Saving "+$1:r+".ttf");
Generate($1:r+".ttf");
Quit(0);

pdf2svg
Из pdf в svg тоже элементарно.

Используется одноименная утилита media-gfx/pdf2svg pdf2svg is based on poppler and cairo and can convert pdf to svg files.

#!/bin/sh
#pdf2svg

for file in `ls | grep pdf`
do
  filename=${file%.*}
  pdf2svg "$file" "${filename}.svg"
  echo "writing ${filename}.svg"
  rm -f $file
done

tiff2png
Из tiff в png

Используется convert из media-gfx/imagemagick A collection of tools and libraries for many image formats.

#!/bin/sh
#tiff2png

for file in `ls | grep -e tif -e tiff`
do
  filename=${file%.*}
  convert "$file" -fuzz 5% -transparent white "${filename}.png"
  echo "writing ${filename}.png"
  rm -f $file
done

Ну пока на этом все.

Comments