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