- Сообщения
- 150
- Реакции
- 11
Здравствуйте!
Потратил много времени, но удобного решения не нашёл. Раньше в окно программы помещался каталог с поврежденными именами шрифта и он просто их восстанавливал в той же папке. Разработчику программы я написал, но видимо проект давно заброшен.
Теперь из найденных решений на иностранных форумах предлагается команда в терминале:
mdls "$f" | grep -A1 name_postscript | tr -d \ | tail -n 1 | tr -d \"
которая имя шрифта достает, но дальше ручками...
второй способ более рабочий – скрипт запускаемый из того же терминала обрабатывает папку, но чтобы им воспользоваться нужно поставить в систему дополнительные компоненты Mac OSX Terminal – Rename TTF/OTF Fonts Когда компоненты установлены то команда в терминале sh /Users/mac/Desktop/RenameFonts.sh /Users/mac/Desktop/fonts/ все решает правильно, но может есть простое, недорогое решение решение?!
Source Code
Спасибо откликнувшимся.
Потратил много времени, но удобного решения не нашёл. Раньше в окно программы помещался каталог с поврежденными именами шрифта и он просто их восстанавливал в той же папке. Разработчику программы я написал, но видимо проект давно заброшен.
Теперь из найденных решений на иностранных форумах предлагается команда в терминале:
mdls "$f" | grep -A1 name_postscript | tr -d \ | tail -n 1 | tr -d \"
которая имя шрифта достает, но дальше ручками...
второй способ более рабочий – скрипт запускаемый из того же терминала обрабатывает папку, но чтобы им воспользоваться нужно поставить в систему дополнительные компоненты Mac OSX Terminal – Rename TTF/OTF Fonts Когда компоненты установлены то команда в терминале sh /Users/mac/Desktop/RenameFonts.sh /Users/mac/Desktop/fonts/ все решает правильно, но может есть простое, недорогое решение решение?!
Source Code
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | #!/bin/sh # RenameFonts.sh # # # Created by David Kittell on 1/18/18. # # Use script like "sh RenameFonts.sh ~/Desktop/fonts/" # Prerequisite #brew install fontconfig #for f in * ; do # mv "$f" "$f.ttf" #done if [ -z ${1+x} ]; then printf "\033[01m\e[4mType your desired font directory, followed by [ENTER]:\n\e[0m\033[0m" read ftDir else ftDir=$1 fi printf "\033[36mSearch Directory:\033[0m %s \e[90m$ftDir\033[0m\n"; for file in "$ftDir"*.{ttf,otf,TTF,OTF}; do postscriptname=$(fc-scan --format "%{postscriptname}\n" $file); if [ ! -z "$postscriptname" ]; then printf "\033[36m PostScript Name:\033[0m %s \e[90m(%s)\033[0m\n" "$postscriptname" "$file"; mv "$file" "$ftDir/$postscriptname.${file##*.}" fi done |
Спасибо откликнувшимся.