2011-04-09 17:57:57 +0000 2011-04-09 17:57:57 +0000
54
54

Найти все шрифты, используемые в файле Photoshop.

У меня есть этот файл .psd (Photoshop file) и я пытаюсь преобразовать его в HTML & CSS.

Единственное, что я не могу определить, какой шрифт они использовали в .psd

Как я могу узнать, какие шрифты были использованы в файле Photoshop?

Ответы (16)

63
63
63
2011-11-13 22:52:45 +0000

Зависит от того, как вы хотите извлечь информацию.

За раздел или текстовую область

Выберите инструмент “Текст” (значок T с засечками) и нажмите на текстовую область для ее редактирования. Он покажет, какой шрифт используется в окне Символы.

Все шрифты, используемые с первого взгляда

  1. Сохраните или экспортируйте документ в формате PDF
  2. Откройте версию PDF в Adobe Reader
  3. Выберите Файл → Свойства → Шрифты

Это список всех встраиваемых шрифтов, используемых в PSD-файле, при условии, что их можно встраивать.

Пропущенные шрифты

В инструменте Шрифты перейдите к выпадающему меню выбора шрифта. В конце списка появятся шрифты, которые используются в изображении, но отсутствуют в вашей системе. Обычно они выделяются серым цветом.

Растровые изображения

Если вы видите растровые изображения, для которых нужен шрифт, лучше всего экспортировать только этот раздел как чистое, отдельное изображение и использовать службу типа What the Font для определения шрифта.

23
23
23
2015-04-29 22:34:00 +0000

Сохраните этот скрипт как новый файл в папке Photoshop > Presets > Scripts (Скрипты). Назовите его так, как вы хотите, например “Detect Fonts.jsx”

var p = new ActionReference();

function arrayUnique(a){
    var t = []
        i = a.length;

    while(i--) {
        var f = false,
        n = t.length;

        while (n--) {
            if(a[i] === t[n]) {
                f = true;
            }
        }

        if(!f) {
            t.push(a[i]);
        }
    }
    return t;
}

function findFonts() {
    p.putEnumerated( charIDToTypeID('Dcmn'), charIDToTypeID('Ordn'), charIDToTypeID('Trgt') );

    var c = executeActionGet(p).getInteger(charIDToTypeID('NmbL'))+1,
        fonts = [];

    while(c--) {
        var r = new ActionReference(),
            descLayer,
            layerStyles,
            countStyles;

        r.putIndex( charIDToTypeID( 'Lyr ' ), c );

        try {
            descLayer = executeActionGet(r);
        } catch (e) {
            continue;
        }

        if(!descLayer.hasKey(stringIDToTypeID( 'textKey' ))) continue;

        layerStyles = descLayer.getObjectValue(stringIDToTypeID('textKey')).getList(stringIDToTypeID('textStyleRange'));
        countStyles = layerStyles.count;

        while(countStyles--) {
            var n = layerStyles.getObjectValue(countStyles).getObjectValue(stringIDToTypeID('textStyle')).getString(stringIDToTypeID('fontPostScriptName'));
            fonts.push(n);
        }
    }

    return arrayUnique(fonts).sort();
}

if (documents.length) {
    var d = findFonts();
    alert(d.length +' fonts found\n'+d.join('\n'));
} else {
    alert('No fonts used in the active document.',);
}

0x1&

8
8
8
2011-04-09 18:08:16 +0000

Формат PSD-файла документирован компанией Adobe - вы можете прочитать, как в нем хранится информация о шрифтах.

Вы можете просмотреть шестнадцатиричный дамп файла и использовать спецификацию формата файла для поиска шрифтов.

Альтернативно, имена шрифтов должны быть видны в выводе утилиты strings, найденной в Linux/Unix системах.

5
5
5
2012-07-18 02:56:44 +0000

Это на самом деле очень легко сделать с помощью PS-скриптов, которые могут выполнить итерацию через слои PSD и вытащить данные из текстового слоя.

В последнее время я экспериментирую со скриптом на основе JavaScript для наложения информации о шрифтах непосредственно на компы, которые доставляются разработчикам. Он не закончен, но если есть еще интерес (я вижу, что это довольно старый), я могу выложить быструю и грязную версию, которая просто всплывает шрифты, используемые в окне.

UPDATE: Я собрал грубую, но работающую “lite” версию скрипта, который я разрабатываю. Не стесняйтесь внести свой вклад - https://github.com/davidklaw/completer . Для тех, кто не знаком со скриптами, просто возьмите файл скрипта и поместите его в папку PS Presets/Scripts, и он будет доступен в разделе File -> Scripts (Файл -> Скрипты).

4
4
4
2014-10-14 04:50:44 +0000

Быстрый и простой способ найти недостающие шрифты

  1. Windows -> Символы Небольшое окошко для символов с информацией о шрифтах.

  2. Выберите название шрифта в раскрывающемся списке и прокрутите вниз до конца.

  3. В конце списка шрифтов вы увидите список недостающих шрифтов светло-серым цветом.

Из : http://www.bala-krishna.com/how-to-find-fonts-used-in-psd-file/

3
3
3
2011-01-25 23:25:48 +0000

Если текст уже был растеризован, легким способом будет обрезать область с тем шрифтом, который вы хотите определить, сохранить как .png и загрузить его в [ WhatTheFont ]0x3 и, где он должен быть в состоянии сказать вам, что это такое, если только он не является непонятным или на заказ. Identifont - это другой сайт, который вы можете использовать, где вы описываете характеристики шрифта.

1
1
1
2019-10-17 20:58:11 +0000

Основываясь на оригинальном ответе Дэвида (DetectFonts.jsx), я модифицировал скрипт, чтобы исправить проблему, о которой сообщил Дрю в комментариях: Найти все шрифты, используемые в файле Photoshop .

Следуйте первоначальным инструкциям, но используйте вместо этого тело скрипта - разница лишь в нескольких нулях (предположительно, либо в разнице в версии фотошопа, либо в чем-то, что связано с отсутствующими данными по определенным типам объектов, скорее всего, дизайнера или операционной системы)

Я также отправлю запрос на подтягивание по адресу https://github.com/dcondrey/DetectFontsinPSD

var p = new ActionReference();

function arrayUnique(a) {
    var t = []
    i = a.length;

    while (i--) {
        var f = false,
            n = t.length;

        while (n--) {
            if (a[i] === t[n]) {
                f = true;
            }
        }

        if (!f) {
            t.push(a[i]);
        }
    }
    return t;
}

function findFonts() {
    p.putEnumerated(charIDToTypeID('Dcmn'), charIDToTypeID('Ordn'), charIDToTypeID('Trgt'));

    var c = executeActionGet(p).getInteger(charIDToTypeID('NmbL')) + 1,
        fonts = [];

    while (c--) {
        var r = new ActionReference(),
            descLayer,
            layerStyles,
            countStyles;

        r.putIndex(charIDToTypeID('Lyr '), c);

        try {
            descLayer = executeActionGet(r);
        } catch (e) {
            continue;
        }

        if (!descLayer.hasKey(stringIDToTypeID('textKey'))) continue;

        layerStyles = descLayer.getObjectValue(stringIDToTypeID('textKey')).getList(stringIDToTypeID('textStyleRange'));
        if(!layerStyles) continue;

        countStyles = layerStyles.count;

        while (countStyles--) {
            var textStyle = layerStyles.getObjectValue(countStyles).getObjectValue(stringIDToTypeID('textStyle'));
            if(!textStyle || !textStyle.hasKey(stringIDToTypeID('fontPostScriptName'))) continue;

            var n = textStyle.getString(stringIDToTypeID('fontPostScriptName'));
            fonts.push(n);
        }
    }

    return arrayUnique(fonts).sort();
}

if (documents.length) {
    var d = findFonts();
    alert(d.length + ' fonts found\n' + d.join('\n'));
} else {
    alert('No fonts used in the active document.');
}
```.
1
1
1
2011-04-09 23:02:10 +0000

Я бы взял снимок нужного текста (желательно увеличенный) и использовал WhatTheFont , чтобы получить некоторые догадки. (Разве шрифт не должен быть показан, когда вы открываете PSD и выбираете соответствующий текст?).

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

1
1
1
2015-01-08 20:26:37 +0000

Используйте Creative Cloud Extract

В нем будут перечислены все используемые шрифты (среди прочих удобных вещей).

0
0
0
2011-05-21 07:50:50 +0000

Открытый фотошоп. Перейти к Windows “ Символ. Появится маленькая коробка. Просто выберите текстовый слой, и в окне будет указано семейство шрифтов, их размер и т.д.

0
0
0
2014-05-06 07:22:17 +0000

Есть бесплатный Photoshop Extension/Panel, который может сделать эту работу за вас, Free Photoshop Font Detector http://www.layerhero.com/photoshop-font-detector/ ), и если вы хотите собрать/копировать файлы шрифтов из системной папки, попробуйте Photoshop Art Packer http://www.layerhero.com/photoshop-art-packer/ ).

0
0
0
2019-03-11 01:26:50 +0000

Я хотел знать шрифты документов вместе с их стилями, размерами, цветами, форматированием и т.д. для веб-разработки и CSS, так что вот что я придумал:

  1. Щелкните по иконке “T” на панели слоёв, чтобы отфильтровать/просмотреть только текстовые слои
  2. Shift + щелкните левой кнопкой мыши самый верхний текстовый слой на палитре “Слои 3”. Прокрутите до конца в нижнюю часть палитры “Слои” и щелкните Shift + левой кнопкой мыши нижний текстовый слой
  3. Щелкните правой кнопкой мыши выделенные слои на палитре “Слои” и выберите “Дублировать слои”
  4. В разделе Документ назначения выберите Новый 0x2 и 6. Перейдите к новому документу, который должен содержать все текстовые слои 0x2 и 7. Снова выделите все слои текста (см. шаги № 2 и № 3) 0x2 и 8. Щелкните значок папки в нижней части палитры “Слои”, чтобы сделать все текстовые слои одной группой 0x2 и 9. Измените режим наложения группы (выпадающий на палитре слоев) на “Нормальный”
  5. Щелкните правой кнопкой мыши новую группу
  6. Выберите “Копировать CSS”
  7. Вставьте в документ и отформатируйте список стилей по мере необходимости!
0
0
0
2013-09-26 04:39:43 +0000

Используйте онлайн-инструмент для получения шрифтов psd файла http://psdfonts.com/

0
0
0
2014-09-27 05:04:39 +0000

На вкладке “Слои” есть опция, позволяющая отфильтровать все слои, чтобы показать только шрифты. Нужно выбрать каждый слой, чтобы увидеть их на самом деле, и это полезно только в том случае, если нужно быстро взглянуть на них 0x2 и 0x2 и Надеюсь, это поможет кому-нибудь через три года после того, как был задан этот вопрос.

0
0
0
2013-11-17 13:46:06 +0000

Разработчик спросил меня почти о том же, что и тебе. Я придумал редактирование простого скрипта, для экспорта свойств слоя (текст, имя шрифта, размер шрифта, цвет шрифта), который вам нужен при разработке, в один текстовый файл (должен работать на Windows-машине).

Просто сохраните это как “ExportTexts.js” и поместите в Adobe Photoshop > Presets > Scripts.

После этого запустите (или перезапустите) Photoshop и запустите скрипт (Файл -> Скрипты -> ExportTexts). Также убедитесь, что вы разобрали все слои, прежде чем делать это. Экспортированный файл должен быть в том же dir, что и psd файл.

if (documents.length > 0)
{
    var docRef = activeDocument;
    CurrentFolder = activeDocument.path;
    var outputFile = new File(CurrentFolder + "/" + activeDocument.name + "fonts.txt" );
    outputFile.open("w");
    for (var i = docRef.layers.length-1 ; i >=0 ; i--)
    {
        docRef.activeLa`enter preformatted text here`yer = docRef.layers[i]
        if (docRef.activeLayer.kind == LayerKind.TEXT)
        {
            outputFile.write( 
            docRef.activeLayer.textItem.contents + "\n" + 
            docRef.activeLayer.textItem.font +"," +
            docRef.activeLayer.textItem.size +"," +
            docRef.activeLayer.textItem.color.rgb.hexValue + "\n\n\n");
        }
    }
    outputFile.close();
    alert("Finished");
}
else
{
    alert("You must have at least one open document to run this script!");
}
docRef = null
-1
-1
-1
2016-05-09 10:58:33 +0000

Для получения информации о шрифтах из файла PSD Вы можете использовать онлайн-инструменты, если Вы не можете или не хотите использовать Photoshop (или если Вы предпочитаете использовать Gimp, который растеризует PSD-шрифты).

Например, Вы можете попробовать этот онлайн-экстрактор шрифтов html5 для PSD “Получить шрифты PSD”.

Это распаковщик информации о шрифтах PSD, основанный на Melitingice Github project psd.js и не требующий загрузки файлов, работающий локально на странице браузера.