ספריית קוד פתוח לרובי להעברת Photoshop PSD

רובי API התומך בהמרה PSD לקנבס, ייצוא PSD נתונים, גישה PSD פרוסות נתונים, וגישה PSD שכבה בתוך אפליקציות רובי.  

PSD.rb הוא קל משקל, קל להשתמש בספריית Ruby קוד פתוח המאפשרת למפתחי תוכנה להפיץ את קובץ Adobe Photoshop PSD או לחלץ Metadata ומידע שימושי אחר באמצעות קוד רובי. הספרייה מאפשרת למשתמשים להתמודד עם נתוני המסמך של Photoshop במבנה עץ לניהול. המטרה מאחורי פיתוח PSD.rb הייתה לספק PSD יכולות גרוטאות טובות יותר למפתחים שעובדים עם קבצי Photoshop PSD באופן קבוע.

הספרייה מטפלת בכל הפונקציות העיקריות בנוגע לגישה ולפתיחה של הקובץ ומחפשת את הנתונים הרצויים ולאחזר אותו בצורה המבצעית. ספריית SD.rb קלה מאוד לטיפול ומאפשרת למפתחים לעבוד עם מסמך פוטושופ במבנה עץ שניתן לניהול ולחפש נתונים חשובים כגון גודל המסמך, שם התיקיה ונתונים בעלי אופיין.

Previous Next

להתחיל עם SD.rb

הדרך המומלצת להתקין SD.rb היא באמצעות RubyGems. אנא השתמש בפקודה הבאה עבור התקנה חלקה.

התקן SD.rb באמצעות GitHub

$ gem install psd

PSD מידע על רובי API

ספריית הקוד הפתוח PSD.rb מאפשרת למתכנתים לייצא נתונים מקובץ PSD בקלות באמצעות פקודות רובי. תוך כדי עבודה במבנה העץ, אנו יכולים לייצא מחדש כל צומת לאובייקט, הכולל את כל המידע המשותף. ניתן גם לייצא את PSD לקובץ תמונה שטוח עם רק כמה שורות של קוד רובי. אנא זכור לשמור אותו במצב תאימות המופעל, אחרת תיווצר תמונה ריקה.

PSD נתונים באמצעות רובי 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 על קנבס באמצעות רובי

ספריית הקוד הפתוח PSD.rb סיפקה פונקציונליות מלאה להמרת PSD בד בתוך יישומי רובי. הספרייה תומכת בחיתוך PSD המיובאים וממירה אותו לאובייקטים בד. לאחר מכן, אתה יכול לכתוב את שכבות של PSD אובייקטים ולהוסיף את האובייקטים לתוך הבד בקלות. לאחר הזמנה זו, האובייקטים שנוספו ואתה נעשה. אתה יכול גם לייצא את הבד PDF, SVG, NG, EG ועוד.

PSD פרטים

ספריית PSD.rb מעניקה למפתחי תוכנה את היכולת לגשת ל-PSD פרוסות ישירות בתוך היישומים שלהם. זה גם תומך מקבל מערך של כל פרוסות במסמך עם רק כמה שורות של קוד רובי. ניתן גם לחפש פרוסות בשמם או בשמם. הספרייה גם מספקת תמיכה עבור פרוסות יצוא כמו NG.

גישה PSD של נתונים באמצעות רובי 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 שכבות נתונים באמצעות פקודות רובי. אתה יכול בקלות לקבל שם כמו גם ממדים של השכבה באמצעות כמה שורות של קוד רובי. מפתחים יכולים גם לגשת סוגים שונים של מידע המאוחסן בלוקים מידע שכבה כגון גודל, צבע, גופנים וכן הלאה.

גישה PSD שכירות דרך רובי 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);"}
 עִברִית