Quiero inspeccionar (y solo eso, sin la edición de este layer) que tipo de letra, tamaño, color, etc. fueron utilizados en una determinada capa de texto en el archivo PSD creado con Photoshop. Es esto factible, sin Photoshop.aplicación? Pixelmator parece ser incapaz de lograr que, al igual que la Bellota. Otra cosa que podría tratar?
Respuesta
¿Demasiados anuncios?Para más datos sin procesar, tratar de guardar como, por ejemplo psdtext.py
#!/usr/bin/python
import sys, re
input = sys.argv[1]
# This write_title function is just for vanity and easier manual searching
def write_title(num):
filler = 97
if num < 10:
filler2 = filler - 25
elif num < 100:
filler2 = filler - 26
else:
filler2 = filler - 27
print("\n" * 2)
print("#" * filler)
print("#" * filler)
print("#" * 11 + " Text layer " + str(num) + " " + "#" * filler2)
print("#" * filler)
print("#" * filler)
print("\n" * 2)
def psd_texts(input):
t = x = 0
for line in open(input, 'r'):
if re.search("^\s+/Text\s+.*", line):
x = 1
t += 1
write_title(t)
print(line.rstrip('\n'))
elif x == 1:
if "warp" in line:
x = 0
elif ">>" not in line and "<<" not in line:
print(line.rstrip('\n'))
if __name__ == "__main__":
psd_texts(input)
Después de ejecutables: $ chmod a+x psdtext.py
Guardar el resultado como un archivo*: $ ./psdtext.py my_file_with_text_layers.psd > textinfo.txt
Abrir en un editor: $ open textinfo.txt
Por ejemplo: usted puede buscar por /Text
en su editor para recorrer el contenido de texto de las diferentes capas, o la búsqueda de /FontSet
bucle a través de las fuentes (la primera fuente de los mencionados es el de la capa de usos, los demás son alternativas)
Sé que la salida es feo, pero vamos, que contiene toda la información.
*) Yo no lo haría sólo $ ./psdtext.py file.psd
ya que visualmente se mete hasta la Terminal de probar por ejemplo $ ./psdtext.py file.psd | less
lugar.