Biblioteca Ruby de código abierto para analizar archivos PSD de Photoshop
Ruby API que admite la conversión de PSD a lienzo, la exportación de datos de PSD, el acceso a datos de cortes de PSD y el acceso a la capa de PSD dentro de las aplicaciones de Ruby.
PSD.rb es una biblioteca de Ruby de código abierto, liviana y fácil de usar que permite a los desarrolladores de software analizar archivos PSD de Adobe Photoshop o extraer metadatos y otra información utilizable mediante el código de Ruby. La biblioteca permite a los usuarios manejar datos de documentos de Photoshop en una estructura de árbol manejable. El objetivo detrás del desarrollo de PSD.rb fue proporcionar mejores capacidades de raspado de PSD a los desarrolladores que trabajan regularmente con archivos PSD de Photoshop.
La biblioteca maneja todas las funcionalidades principales relacionadas con el acceso y la apertura del archivo y la búsqueda de los datos deseados y recuperarlos en forma operativa. La biblioteca PSD.rb es muy fácil de manejar y permite a los desarrolladores trabajar con un documento de Photoshop en una estructura de árbol manejable y buscar datos importantes como el tamaño del documento, la estructura del documento, el nombre y el tamaño de la carpeta, la opacidad de la carpeta, la visibilidad de la carpeta. , nombre de fuente, color o tamaño de fuente, datos de máscara vectorial, datos de imagen aplanada y mucho más
Primeros pasos con PSD.rb
La forma recomendada de instalar PSD.rb es usando RubyGems. Utilice el siguiente comando para una instalación sin problemas.
Instale PSD.rb a través de GitHub
$ gem install psd
Exportación de datos PSD mediante la API de Ruby
La biblioteca PSD.rb de código abierto permite a los programadores de software exportar datos desde un archivo PSD con facilidad utilizando los comandos de Ruby. Mientras trabajamos en la estructura de árbol, podemos exportar recursivamente cualquier nodo a un objeto, que incluye toda la información común. También es posible exportar el PSD a un archivo de imagen plano con solo un par de líneas de código Ruby. Recuerde guardarlo con el modo de compatibilidad habilitado; de lo contrario, se producirá una imagen vacía
Exportación PSD Datos vía Ruby API
require 'fileutils'
require 'benchmark'
require './lib/psd'
file = ARGV[0] || 'examples/images/example.psd'
psd = PSD.new(file, parse_layer_images: true)
results = Benchmark.measure "Layer image exporting" do
psd.parse!
psd.tree.descendant_layers.each do |layer|
path = layer.path.split('/')[0...-1].join('/')
FileUtils.mkdir_p("output/#{path}")
layer.image.save_as_png "output/#{layer.path}.png"
end
end
puts Benchmark::CAPTION
puts results.to_s
Convierta PSD a Canvas usando Ruby
La biblioteca PSD.rb de código abierto ha proporcionado una funcionalidad completa para convertir PSD a lienzo dentro de las aplicaciones de Ruby. La biblioteca admite el análisis del PSD importado y lo convierte en objetos de lienzo. Después de eso, puede iterar las capas de los objetos PSD y agregar los objetos al lienzo con facilidad. Después de ese orden, los objetos agregados y listo. También puede exportar el lienzo a PDF, SVG, PNG, PEG y más.
Acceder a datos de rebanadas de PSD
La biblioteca PSD.rb brinda a los desarrolladores de software la capacidad de acceder a segmentos de PSD directamente dentro de sus propias aplicaciones. También admite obtener una matriz de todos los segmentos del documento con solo un par de líneas de código Ruby. También es posible buscar cortes por su nombre o por su ID. La biblioteca también proporciona soporte para exportar sectores como PNG.
Acceso a los datos de PSD filas vía Ruby API
require 'benchmark'
require './lib/psd'
require 'pp'
psd = nil
file = ARGV[0] || 'examples/images/example.psd'
results = Benchmark.measure "PSD parsing" do
psd = PSD.new(file)
psd.parse!
end
if psd.resources[:slices]
psd.resources[:slices].data.to_a.each do |slice|
pp slice
end
end
Acceder a los datos de la capa PSD
La biblioteca de fuente abierta PSD.rb permite a los profesionales del software acceder a PSD datos de capa utilizando comandos Ruby. Puedes conseguir fácilmente un nombre y dimensiones de la capa usando un par de líneas de código Ruby. Los desarrolladores también pueden acceder a otros tipos de información almacenada en bloques de información de capa tales como tamaño, color, fuentes, etc.
Acceso PSD Layer vía Ruby API
//Get Name & Dimensions of a layer
psd.tree.descendant_layers.first.name
psd.tree.descendant_layers.first.width
//Get Other Layer Info
psd.tree.descendant_layers.first.text[:font]
# Returns
{:name=>"HelveticaNeue-Light",
:sizes=>[33.0],
:colors=>[[255, 19, 120, 98]],
:css=>
"font-family: \"HelveticaNeue-Light\", \"AdobeInvisFont\", \"MyriadPro-Regular\";\nfont-size: 33.0pt;\ncolor: rgba(19, 120, 98, 255);"}