Photoshop dosyasında kullanılan tüm fontları bulun


54

Buna sahibim .psd(Photoshop dosyası) ve HTML & CSS'ye dönüştürmeye çalışıyorum.

Belirleyemediğim tek şey, hangi fontta kullandıkları. .psd

Photoshop dosyasında hangi fontların kullanıldığını nasıl öğrenebilirim?


CC2018'den itibaren, aşağıdaki komut dosyalarından 2'si ve jsx eklentisi bozuldu. Her biri için özel olarak yorum yaptım.
Drew,

Yanıtlar:


63

Bilgileri nasıl çıkarmak istediğinize bağlı.

Bölüm veya metin alanı başına

Metin aracını seçin ( serifs ile T simgesi) ve düzenlemek için metin alanına tıklayın. Karakter penceresinde hangi fontun kullanıldığını gösterecektir.

Bir bakışta kullanılan tüm fontlar

  1. Görüntü belgesini PDF olarak kaydedin veya dışa aktarın
  2. PDF sürümünü Adobe Reader'da açın
  3. Dosya → Özellikler → Yazı Tipleri'ni seçin.

Bu , PSD dosyasında kullanılan tüm gömülebilir fontları listeleyebilmeniz koşuluyla listeler .

Eksik fontlar

Karakter aracında, aşağı açılan yazı tipi seçimine gidin. Listenin sonunda, görüntüde kullanılan ancak sisteminizden eksik olan fontlar olacaktır. Bunlar tipik olarak gri renkli olacaktır.

Rastersiz görüntüler

Yazı tipi yüzüne ihtiyacınız olan herhangi bir rasterleştirilmiş resim görürseniz, bu bölümü açık, bağımsız bir resim olarak dışa aktarmalı ve yazı tipini belirlemek için Yazı Tipi gibi bir hizmet kullanmalısınız .


23

Bu komut dosyasını Photoshop> Hazır Ayarlar> Komut Dosyaları klasörünüze yeni bir dosya olarak kaydedin. İstediğiniz şekilde adlandırın, örneğin "Fonts.jsx'i Algıla" gibi

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.',);
}

görüntü tanımını buraya girin


1
+500000 puan. İnanılmaz.
Half Crazed


Panoya metin yazmak için bu cevabı kullanın: stackoverflow.com/a/13983268/1578857
Dima Kurilo

(Photoshop CC2018) Hata 8500: İstenen özellik mevcut değil. Satır 53: var n = layerStyles.getObjectValue (countStyles) .getObjectValue (stringIDToTypeID ('textStyle')). GetString (stringIDToTypeID ('fontPtyScriptName'));
Drew

@Drew Komut dosyasının sabit bir sürümüyle güncellenmiş bir cevap göndermek
üzereyim

8

PSD dosya formatı Adobe tarafından belgelenmiştir - yazı tipi bilgilerini nasıl sakladığını okuyabilirsiniz.

Daha sonra dosyanın onaltılı dökümünü inceleyebilir ve yazı tiplerini bulmak için dosya formatı belirtimini kullanabilirsiniz.

Alternatif olarak, font adlarının stringsLinux / Unix sistemlerinde bulunan yardımcı programın çıktısında görünmesi gerekir .


2
+1: Aynı çözümü buldum. Nedense GIMP PSD'yi doğru bir şekilde içe aktarmadı ve hangi yazı tipinin kullanıldığını bilmiyordum. Bir HEX editöründe PSD dosyasını bulmak için analiz ettim (Ara: "Yazı Tipi" olarak TEXT). Önerilen editör: "korusun".
lepe

5

Bu aslında PSD'nizin katmanlarını yineleyebilen ve metin katmanı verilerini alabilen PS komut dosyalarını kullanmak için çok kolaydır.

Son zamanlarda yazı tipi bilgilerini doğrudan geliştiricilere iletilen kompozisyonlara yerleştirmek için JavaScript tabanlı bir komut dosyası kullanıyorum. Bitmedi, ancak hala ilgi varsa (bunun oldukça eski olduğunu görüyorum) bir pencerede kullanılan yazı tiplerini gösteren hızlı ve kirli bir sürüm oluşturabilirim.

GÜNCELLEME: Geliştirdiğim betiğin kaba ancak çalışan bir "lite" sürümünü bir araya getirdim. Katkıda bulunmaktan çekinmeyin - https://github.com/davidklaw/completer . Komut dosyalarını bilmeyenler için sadece komut dosyasını alın ve PS Hazır Ayarları / Komut Dosyaları klasörünüzün altına koyun; Dosya -> Komut Dosyaları altında bulunur.


Bu soru eski olabilir, ancak neredeyse 6.000 görüşe sahip. Bir komut dosyası sağlayabilirseniz, çok memnun oluruz! Bu arada, Süper Kullanıcı'ya hoş geldiniz!
slhck

İyi karar. Açık kaynaklı GitHub projesi başladı. Temel JavaScript bilgisine sahip olan varsa, kendilerini evinde hissetmeleri gerekir.
David,

vay bu aslında oldukça iyi çalışıyor: D (y)!
Ejaz

4

Eksik Fontları Bulmanın Hızlı ve Kolay Yolu

  1. Windows -> Karakter Yazı tipi bilgileri içeren küçük bir karakter kutusu görüntülenecektir.

  2. Yazı tipi adı açılır menüsünü seçin ve sonuna kadar aşağı kaydırın.

  3. Yazı tipi listesinin sonunda eksik yazı tiplerinin açık gri renkte olduğunu göreceksiniz.

görüntü tanımını buraya girin

Gönderen: http://www.bala-krishna.com/how-to-find-fonts-used-in-psd-file/


Bu panele izin vermenin çok sayıda yolu vardır: Bir diğeri ise Tip -> Paneller -> Karakter.
martixy

3

Metin daha önce rasterleştirildiyse, kolay yol, tanımlamak istediğiniz yazı tipiyle alanı kırpmak, bir .png olarak kaydetmek ve onu ne olduğunu size söyleyebilmesi gereken WhatTheFont'a yüklemek olacaktır. belirsiz veya ısmarlama biri.

Identifont , yazı tipinin özelliklerini tanımladığınız başka bir sitedir.


Metin rasterleştirilmez, yani ayrı bir katmana yazılır.
dave

2
@Dave: Metin hala düzenlenebilirse, tek yapmanız gereken metni seçmek ve yazı tipi açılır menüsünde veya bilgi paletinde ne olduğunu görmek. Bu gerçekten çok açık!
paradroid

1

İhtiyacınız olan metni çekin (tercihen yakınlaştırılır) ve bazı tahminde bulunmak için WhatTheFont'u kullanırım. (PSD'yi açtığınızda ve ilgili metni seçerken yazı karakteri görünmemeli mi?)

Ve tabii ki, web için güvenli bir font değilse, değiştirmek veya geri dönüş yığını sağlamak için uygun bir yol bulmanız gerekir.


1

Creative Cloud Extract kullanın

Kullanılan tüm yazı tiplerini listeler (diğer kullanışlı şeylerin yanı sıra).


Bazı potansiyeli var gibi görünüyor, ama DreamWeaver'ı yüklemeyi gerektiriyor ..
Drew

1

David'in orijinal cevabına (DetectFonts.jsx) dayanarak, yorumlarda Drew tarafından bildirilen sorunu düzeltmek için komut dosyasını değiştirdim: Photoshop dosyasında kullanılan tüm fontları bulun .

Orijinal yönergeleri izleyin ancak bu komut dosyası gövdesini kullanın - yalnızca fark birkaç boş denetimdir (muhtemelen bir photoshop sürüm farkı veya belirli nesne türleri, muhtemelen tasarımcı veya işletim sistemine özgü verilerle ilgili eksik verilerle ilgili olabilir).

Ayrıca https://github.com/dcondrey/DetectFontsinPSD adresine bir çekme isteği göndereceğim

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.');
}

0

Photoshop'u açın. Windows'a git »Karakter . Küçük bir kutu açılacaktır. Metin katmanını seçmeniz yeterlidir; kutu size font ailesini, büyüklüğünü ve diğerlerini söyler.



0

Geliştirici bana neredeyse senin ihtiyaç duyduğunu düşündüğü gibi düşündü. Geliştirme sırasında ihtiyaç duyduğunuz katman özelliklerini (metin, yazı tipi adı, yazı tipi boyutu, yazı tipi rengi) tek bir txt dosyasına (Windows makinede çalışması gerekir) dışa aktarmak için basit komut dosyasını düzenlemeyle geldim.

Bunu "ExportTexts.js" gibi kaydedin ve Adobe Photoshop> Presets> Scripts'e koyun.

Ondan sonra Photoshop'u çalıştırın (veya yeniden başlatın) ve komut dosyasını çalıştırın (Dosya -> Komut Dosyaları -> ExportTexts). Ayrıca, bunu yapmadan önce tüm katmanları çözdüğünüzden emin olun. Dışa aktarılan dosya psd dosyası ile aynı dirde olmalıdır.

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

Komut dosyanız 8. satırda bozuldu
davidcondrey

Ve 12. hatta. Hata 8500, özellik mevcut değil: outputFile.write (.
Drew

0

Bu işi sizin için yapabilen ücretsiz bir Photoshop Uzantısı / Paneli, Free Photoshop Font Detector ( http://www.layerhero.com/photoshop-font-detector/ ) ve font dosyalarını sistemden toplamak / kopyalamak istiyorsanız klasöründe Photoshop Art Packer'ı deneyin ( http://www.layerhero.com/photoshop-art-packer/ )


"Ücretsiz Photoshop Yazı Tipi Dedektörü" artık ücretsiz indirilemiyor ve şimdi 39 $ 'lık pahalı bir FontHero eklentisinin parçası .
Paulmz

Bunların hiçbiri mevcut değil. LayerHero öldü .. Şaşırtıcı bir şekilde, Font Detector'ı WayBack makinesinden indirebilirsiniz : web.archive.org/web/20171211184218/http://www.layerhero.com/… Ancak ben de kuramadım Anastasiy'in Extension Manager ve Adobe ExMan ile.
Drew,

0

Katmanlar sekmesinde, yalnızca yazı tiplerini göstermek için tüm katmanları filtrelemenizi sağlayan bir seçenek vardır. Onları gerçekten görmek için her katmanı seçmelisiniz ve yalnızca onlara hızlıca bir göz atmaya ihtiyacınız varsa kullanışlıdır.

Bu sorulduktan üç yıl sonra birine yardımcı olacağını umuyorum.


0

Web geliştirme ve CSS amaçları için stilleri, boyutları, renkleri, biçimlendirmeleri vb. İle birlikte belge yazı tiplerini bilmek istedim.

  1. Yalnızca metin katmanlarını filtrelemek / görüntülemek için Katmanlar panelinde "T" simgesini tıklayın
  2. Shift + Katmanlar paletinde en üstteki metin katmanını sol tıklatın
  3. Katmanlar paletinin sonuna kadar kaydırın ve Shift + alt metin katmanını sol tıklatın
  4. Katmanlar paletinde seçilen katmanlara sağ tıklayın ve "Katmanları Çoğalt" ı seçin
  5. Hedef Belge altında, Yeni'yi seçin.
  6. Tüm metin katmanlarınızı içermesi gereken yeni belgenize gidin
  7. Tüm metin katmanlarını tekrar seçin (bakınız # 2 ve # 3)
  8. Tüm metin katmanlarını bir gruba dönüştürmek için Katmanlar paletinin altındaki klasör simgesini tıklatın
  9. Grubun karıştırma modunu (katmanlar paletindeki açılır menü) "Normal" olarak değiştirin
  10. Yeni grubunuzu sağ tıklayın
  11. "Kopyala CSS" yi seçin
  12. Bir belgeye yapıştırın ve stil listenizi gereken şekilde formatlayın!

-1

Yazı tipleri bilgisini bir PSD dosyasından almak için Photoshop kullanamıyorsanız ya da kullanmıyorsanız çevrimiçi araçları kullanabilirsiniz (ya da PSD yazı tiplerini rasterleştiren Gimp kullanmayı tercih ederseniz).

Örneğin, bu html5 PSD fontu çevrimiçi çıkarıcısını "Get PSD Fonts" u deneyebilirsiniz .

Dosya yükleme gerektirmeyen, tarayıcı sayfanızda yerel olarak çalışan Melitingice Github project psd.js dosyasını temel alan bir PSD font bilgisi çıkarıcısı


Dosyayı javascript'te, bir sunucuya göndermeden, kendi tarayıc sayfanızda açar! Dosya yolunu belirtmek için dosyayı
bırakmak zorundasınız

Söz konusu projelerle ilgili her türlü ilişkinizi, ücretsiz olsa bile açıklamak isteyebilirsiniz.
Journeyman Geek
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.