Open Source Ruby-bibliotheek voor het ontleden van Photoshop PSD-bestanden

Ruby API die ondersteuning biedt voor het converteren van PSD naar canvas, het exporteren van PSD-gegevens, toegang tot PSD-segmentgegevens en toegang tot de PSD-laag in Ruby-apps.  

PSD.rb is een lichtgewicht, gebruiksvriendelijke open source Ruby-bibliotheek waarmee softwareontwikkelaars Adobe Photoshop PSD-bestanden kunnen ontleden of metadata en andere bruikbare informatie kunnen extraheren met behulp van Ruby-code. Met de bibliotheek kunnen gebruikers Photoshop-documentgegevens verwerken in een beheersbare boomstructuur. Het doel achter het ontwikkelen van PSD.rb was om ontwikkelaars die regelmatig met Photoshop PSD-bestanden werken betere PSD-scraping-mogelijkheden te bieden.

De bibliotheek behandelt alle belangrijke functionaliteiten met betrekking tot het openen en openen van het bestand en het zoeken naar de gewenste gegevens en het ophalen ervan in de operationele vorm. De PSD.rb-bibliotheek is zeer eenvoudig te gebruiken en stelt ontwikkelaars in staat om met een Photoshop-document in een beheersbare boomstructuur te werken en belangrijke gegevens te zoeken, zoals documentgrootte, documentstructuur, mapnaam en -grootte, de dekking van de map, mapzichtbaarheid ,  lettertypenaam, letterkleur of -grootte, vectormaskergegevens, platte afbeeldingsgegevens en nog veel meer

Previous Next

Aan de slag met PSD.rb

De aanbevolen manier om PSD.rb te installeren is door RubyGems te gebruiken. Gebruik de volgende opdracht voor een vlotte installatie.

Installeer PSD.rb via GitHub

$ gem install psd

PSD-gegevens exporteren met Ruby API

De open source PSD.rb-bibliotheek stelt softwareprogrammeurs in staat om eenvoudig gegevens uit een PSD-bestand te exporteren met behulp van Ruby-commando's. Terwijl we in de boomstructuur werken, kunnen we elk knooppunt recursief exporteren naar een object, dat alle algemene informatie bevat. Het is ook mogelijk om de PSD te exporteren naar een afgevlakte afbeeldingsbestand met slechts een paar regels Ruby-code. Vergeet niet om het op te slaan met de compatibiliteitsmodus ingeschakeld, anders wordt er een lege afbeelding geproduceerd

Export PSD Data via 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

Converteer PSD naar Canvas met Ruby

De open source PSD.rb-bibliotheek biedt volledige functionaliteit voor het converteren van PSD naar canvas in Ruby-toepassingen. De bibliotheek ondersteunt het ontleden van de geïmporteerde PSD en converteert deze naar canvasobjecten. Daarna kunt u de lagen van de PSD-objecten herhalen en de objecten gemakkelijk aan het canvas toevoegen. Na die bestelling, de toegevoegde objecten en bent u klaar. U kunt het canvas ook exporteren naar PDF, SVG, PNG, PEG en meer.

Toegang tot PSD Slices-gegevens

De PSD.rb-bibliotheek geeft softwareontwikkelaars de mogelijkheid om rechtstreeks vanuit hun eigen applicaties toegang te krijgen tot PSD-segmenten. Het ondersteunt ook het verkrijgen van een array van alle segmenten in het document met slechts een paar regels Ruby-code. Het is ook mogelijk om segmenten te zoeken op naam of op ID. De bibliotheek biedt ook ondersteuning voor het exporteren van segmenten als PNG.

Vertaling:

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

Toegang tot PSD-laaggegevens

De open source PSD.rb-bibliotheek stelt softwareprofessionals in staat om toegang te krijgen tot PSD-laaggegevens met behulp van Ruby-commando's. U kunt eenvoudig een naam en afmetingen van de laag krijgen met behulp van een paar regels Ruby-code. Ontwikkelaars hebben ook toegang tot verschillende andere soorten informatie die is opgeslagen in laaginfoblokken, zoals grootte, kleur, lettertypen, enzovoort.

Acces PSD Layer via 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);"}
 Dutch