Библиотека Ruby с отворен код за анализ на PSD файл на Photoshop

Ruby API, който поддържа конвертиране на PSD в платно, експортиране на PSD данни, достъп до PSD данни за срезове и достъп до PSD слой в Ruby приложения.  

PSD.rb е лека, лесна за използване Ruby библиотека с отворен код, която позволява на разработчиците на софтуер да анализират PSD файл на Adobe Photoshop или да извличат метаданни и друга използваема информация с помощта на Ruby код. Библиотеката позволява на потребителите да обработват данни от документи на Photoshop в управляема дървовидна структура. Целта зад разработването на PSD.rb беше да се осигурят по-добри възможности за изтриване на PSD на разработчиците, които редовно работят с PSD файлове на Photoshop.

Библиотеката обработва всички основни функции по отношение на достъпа и отварянето на файла и търсенето на желаните данни и извличането им в оперативна форма. Библиотеката PSD.rb е много лесна за работа и позволява на разработчиците да работят с документ на Photoshop в управляема дървовидна структура и да търсят важни данни като размер на документа, структура на документа, име и размер на папка, непрозрачност на папката, видимост на папката ,  име на шрифта, цвят или размер на шрифта, данни за векторна маска, данни за плоски изображения и много други

Previous Next

Първи стъпки с PSD.rb

Препоръчителният начин за инсталиране на PSD.rb е използването на RubyGems. Моля, използвайте следната команда за гладка инсталация.

Инсталирайте PSD.rb чрез GitHub

$ gem install psd

Експортиране на PSD данни чрез Ruby API

Библиотеката с отворен код PSD.rb позволява на софтуерните програмисти да експортират данни от PSD файл с лекота с помощта на Ruby команди. Докато работим в дървовидната структура, можем рекурсивно да експортираме всеки възел към обект, който включва цялата обща информация. Възможно е също така да експортирате PSD в изравнен файл с изображение само с няколко реда Ruby код. Моля, не забравяйте да го запазите с активиран режим на съвместимост, в противен случай ще се създаде празно изображение

Данни за износ PSD чрез 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

Конвертирайте PSD в Canvas с помощта на Ruby

Библиотеката PSD.rb с отворен код предоставя пълна функционалност за конвертиране на PSD в canvas в Ruby приложения. Библиотеката поддържа анализиране на импортирания PSD и го преобразува в обекти на платното. След това можете да повторите слоевете на PSD обектите и да добавите обектите в платното с лекота. След този ред добавените обекти и сте готови. Можете също да експортирате платното в PDF, SVG, PNG, PEG и др.

Достъп до данните за PSD срезове

Библиотеката PSD.rb дава на разработчиците на софтуер възможност за достъп до PSD срезове директно в техните собствени приложения. Той също така поддържа получаване на масив от всички части в документа само с няколко реда Ruby код. Възможно е също да търсите срезове по тяхното име или по техния ID. Библиотеката също така предоставя поддръжка за експортни срезове като PNG.

Достъп до данни PSD чрез 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

Достъп до PSD данни за слоя

Библиотеката с отворен код PSD.rb позволява на софтуерните професионалисти да осъществяват достъп до данните на слоя PSD с помощта на Ruby команди. Можете лесно да получите име, както и размери на слоя, като използвате няколко реда Ruby код. Разработчиците могат също да имат достъп до различни други типове информация, съхранени в информационни блокове на слоеве, като размер, цвят, шрифтове и т.н.

Достъп до PSD слоя чрез 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);"}
 Български