1. Tuotteet
  2.   Kuva
  3.   Ruby
  4.   PSD.rb
 
  

Avoimen lähdekoodin Ruby Library Photoshopin PSD-tiedoston jäsentämiseen

Ruby API joka tukee PSD:n muuntamista kankaaksi, PSD-tietojen vientiä, pääsyä PSD-osien dataan ja PSD-kerroksen käyttöä Ruby-sovellusten sisällä.  

PSD.rb on kevyt, helppokäyttöinen avoimen lähdekoodin Ruby-kirjasto, jonka avulla ohjelmistokehittäjät voivat jäsentää Adobe Photoshop PSD -tiedoston tai poimia metatietoja ja muuta käyttökelpoista tietoa Ruby-koodin avulla. Kirjaston avulla käyttäjät voivat käsitellä Photoshop-asiakirjatietoja hallittavassa puurakenteessa. PSD.rb:n kehittämisen tavoitteena oli tarjota parempia PSD-kaappausominaisuuksia kehittäjille, jotka työskentelevät säännöllisesti Photoshopin PSD-tiedostojen kanssa.

Kirjasto hoitaa kaikki tärkeimmät toiminnot koskien tiedostoon pääsyä ja avaamista sekä haluttujen tietojen etsimistä ja hakemista operatiivisessa muodossa. PSD.rb-kirjastoa on erittäin helppo käsitellä, ja sen avulla kehittäjät voivat työskennellä Photoshop-asiakirjan kanssa hallittavassa puurakenteessa ja etsiä tärkeitä tietoja, kuten asiakirjan kokoa, asiakirjan rakennetta, kansion nimeä ja kokoa, kansion peittävyyttä, kansion näkyvyyttä ,  fontin nimi, fontin väri tai koko, vektorimaskitiedot, litistetty kuvadata ja paljon muuta

Previous Next

PSD.rb:n käytön aloittaminen

Suositeltu tapa asentaa PSD.rb on RubyGems. Käytä seuraavaa komentoa sujuvaan asennukseen.

Asenna PSD.rb GitHubin kautta

$ gem install psd

PSD-tietojen vienti Ruby API:lla

Avoimen lähdekoodin PSD.rb-kirjaston avulla ohjelmoijat voivat viedä tietoja PSD-tiedostosta helposti Ruby-komentojen avulla. Puurakenteessa työskennellessämme voimme rekursiivisesti viedä minkä tahansa solmun objektiin, joka sisältää kaikki yleiset tiedot. On myös mahdollista viedä PSD litteäksi kuvatiedostoksi, jossa on vain muutama Ruby-koodirivi. Muista tallentaa se siten, että yhteensopivuustila on käytössä, muuten syntyy tyhjä kuva

Vie PSD-tiedot Ruby API:n kautta

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

Muunna PSD Canvasiksi Rubyn avulla

Avoimen lähdekoodin PSD.rb-kirjasto on tarjonnut täydelliset toiminnot PSD:n muuntamiseen kankaaksi Ruby-sovelluksissa. Kirjasto tukee tuodun PSD:n jäsentämistä ja muuntaa sen canvas-objekteiksi. Sen jälkeen voit iteroida PSD-objektien kerroksia ja lisätä objektit kankaalle helposti. Tämän tilauksen jälkeen lisätyt objektit ja olet valmis. Voit myös viedä kankaan PDF-, SVG-, PNG-, PEG- ja muihin muotoihin.

Käytä PSD Slices -tietoja

PSD.rb-kirjasto antaa ohjelmistokehittäjille mahdollisuuden käyttää PSD-lohkoja suoraan omissa sovelluksissaan. Se tukee myös joukon saamista asiakirjan kaikista osista vain parilla Ruby-koodirivillä. On myös mahdollista etsiä viipaleita niiden nimen tai tunnuksen perusteella. Kirjasto tukee myös osien vientiä PNG-muodossa.

Käytä PSD Slices -tietoja Ruby API:n kautta

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

Käytä PSD-kerroksen tietoja

Avoimen lähdekoodin PSD.rb-kirjaston avulla ohjelmistoalan ammattilaiset voivat käyttää PSD-kerroksen tietoja Ruby-komentojen avulla. Voit helposti saada kerroksen nimen ja mitat käyttämällä pari riviä Ruby-koodia. Kehittäjät voivat myös käyttää erilaisia muita kerrosten tietolohkoihin tallennettuja tietoja, kuten kokoa, väriä, fontteja ja niin edelleen.

Käytä PSD-tasoa Ruby API:n kautta

//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);"}
 Suomen