1. Produkti
  2.   Attēls
  3.   Ruby
  4.   PSD.rb
 
  

Atvērtā pirmkoda Rubīna bibliotēka Photoshop PSD faila parsēšanai

Ruby API, kas atbalsta PSD konvertēšanu uz kanvas, PSD datu eksportēšanu, piekļuvi PSD slāņu datiem un piekļuvi PSD slānim Ruby lietotnēs.  

PSD.rb ir viegla, viegli lietojama atvērtā pirmkoda Ruby bibliotēka, kas ļauj programmatūras izstrādātājiem parsēt Adobe Photoshop PSD failu vai izvilkt metadatus un citu izmantojamu informāciju, izmantojot Ruby kodu. Bibliotēka ļauj lietotājiem apstrādāt Photoshop dokumentu datus pārvaldāmā koka struktūrā. PSD.rb izstrādes mērķis bija nodrošināt labākas PSD nokasīšanas iespējas izstrādātājiem, kuri regulāri strādā ar Photoshop PSD failiem.

Bibliotēka apstrādā visas galvenās funkcijas, kas saistītas ar piekļuvi failam un faila atvēršanu, kā arī vajadzīgo datu meklēšanu un izgūšanu operatīvajā formā. PSD.rb bibliotēka ir ļoti viegli apstrādājama, un tā ļauj izstrādātājiem strādāt ar Photoshop dokumentu pārvaldāmā koka struktūrā un meklēt svarīgus datus, piemēram, dokumenta lielumu, dokumenta struktūru, mapes nosaukumu un izmēru, mapes necaurredzamību, mapes redzamību. ,  fonta nosaukums, fonta krāsa vai izmērs, vektora maskas dati, saplacināta attēla dati un daudz kas cits

Previous Next

Darba sākšana ar PSD.rb

Ieteicamais veids, kā instalēt PSD.rb, ir lietot RubyGems. Lūdzu, izmantojiet šo komandu vienmērīgai instalēšanai.

Instalējiet PSD.rb, izmantojot GitHub

$ gem install psd

PSD datu eksportēšana, izmantojot Ruby API

Atvērtā pirmkoda PSD.rb bibliotēka ļauj programmatūras programmētājiem viegli eksportēt datus no PSD faila, izmantojot Ruby komandas. Strādājot koka struktūrā, mēs varam rekursīvi eksportēt jebkuru mezglu uz objektu, kas ietver visu kopējo informāciju. Ir iespējams arī eksportēt PSD uz saplacinātu attēla failu, izmantojot tikai dažas Ruby koda rindas. Lūdzu, atcerieties to saglabāt ar iespējotu saderības režīmu, pretējā gadījumā tiks izveidots tukšs attēls

Eksportējiet PSD datus, izmantojot 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

Konvertējiet PSD uz Canvas, izmantojot Ruby

Atvērtā pirmkoda PSD.rb bibliotēka ir nodrošinājusi pilnīgu funkcionalitāti PSD konvertēšanai uz audeklu Ruby lietojumprogrammās. Bibliotēka atbalsta importētā PSD parsēšanu un pārvērš to audekla objektos. Pēc tam varat atkārtot PSD objektu slāņus un viegli pievienot objektus audeklā. Pēc šī pasūtījuma pievienotie objekti un esat pabeidzis. Varat arī eksportēt audeklu PDF, SVG, PNG, PEG un citur.

Piekļūstiet PSD šķēlumu datiem

PSD.rb bibliotēka sniedz programmatūras izstrādātājiem iespēju piekļūt PSD slāņiem tieši savās lietojumprogrammās. Tas arī atbalsta visu dokumenta slāņu masīva iegūšanu, izmantojot tikai dažas Rubīna koda rindas. Ir iespējams arī meklēt šķēles pēc to nosaukuma vai ID. Bibliotēka nodrošina arī atbalstu eksportēt šķēles kā PNG.

Piekļūstiet PSD Slices datiem, izmantojot 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

Piekļūstiet PSD slāņa datiem

Atvērtā pirmkoda PSD.rb bibliotēka ļauj programmatūras profesionāļiem piekļūt PSD slāņa datiem, izmantojot Ruby komandas. Jūs varat viegli iegūt slāņa nosaukumu, kā arī izmērus, izmantojot pāris Ruby koda rindiņas. Izstrādātāji var piekļūt arī cita veida informācijai, kas tiek glabāta slāņu informācijas blokos, piemēram, izmēram, krāsai, fontiem utt.

Piekļūstiet PSD slānim, izmantojot 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);"}
 Latviski