مكتبة روبي مفتوحة المصدر لتحليل ملف Photoshop PSD
واجهة برمجة تطبيقات Ruby التي تدعم تحويل PSD إلى قماش ، وتصدير بيانات PSD ، والوصول إلى بيانات شرائح PSD ، والوصول إلى طبقة PSD داخل تطبيقات Ruby.
PSD.rb عبارة عن مكتبة Ruby خفيفة الوزن وسهلة الاستخدام ومفتوحة المصدر تمكن مطوري البرامج من تحليل ملف Adobe Photoshop PSD أو استخراج البيانات الوصفية وغيرها من المعلومات القابلة للاستخدام باستخدام كود Ruby. تتيح المكتبة للمستخدمين التعامل مع بيانات مستند Photoshop في بنية شجرة يمكن التحكم فيها. كان الهدف من تطوير PSD.rb هو توفير قدرات تجريف PSD أفضل للمطورين الذين يعملون مع ملفات Photoshop PSD بانتظام.
تتعامل المكتبة مع جميع الوظائف الرئيسية المتعلقة بالوصول إلى الملف وفتحه والبحث عن البيانات المطلوبة واسترجاعها في الشكل التشغيلي. من السهل جدًا التعامل مع مكتبة PSD.rb وتمكن المطورين من العمل مع مستند Photoshop في بنية شجرة يمكن التحكم فيها والبحث عن البيانات المهمة مثل حجم المستند وهيكل المستند واسم المجلد وحجمه وشفافية المجلد ورؤية المجلد واسم الخط ولون الخط أو حجمه وبيانات قناع المتجه وبيانات الصورة المسطحة وغير ذلك الكثير
الشروع في العمل مع PSD.rb
الطريقة الموصى بها لتثبيت PSD.rb هي استخدام RubyGems. الرجاء استخدام الأمر التالي للتثبيت السلس.
قم بتثبيت PSD.rb عبر GitHub
$ gem install psd
تصدير بيانات PSD باستخدام Ruby API
تتيح مكتبة PSD.rb مفتوحة المصدر لمبرمجي البرامج إمكانية تصدير البيانات من ملف PSD بسهولة باستخدام أوامر Ruby. أثناء العمل في هيكل الشجرة ، يمكننا تصدير أي عقدة بشكل متكرر إلى كائن ، والذي يتضمن جميع المعلومات الشائعة. من الممكن أيضًا تصدير PSD إلى ملف صورة مسطح يحتوي فقط على سطرين من كود Ruby. يرجى تذكر حفظه مع تمكين وضع التوافق ، وإلا سيتم إنتاج صورة فارغة
تصدير بيانات PSD عبر 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
قم بتحويل PSD إلى Canvas باستخدام Ruby
توفر مكتبة PSD.rb مفتوحة المصدر وظائف كاملة لتحويل PSD إلى قماش داخل تطبيقات Ruby. تدعم المكتبة تحليل PSD المستوردة وتحويلها إلى كائنات لوحة الرسم. بعد ذلك ، يمكنك تكرار طبقات كائنات PSD وإضافة الكائنات إلى اللوحة القماشية بسهولة. بعد هذا الترتيب ، يتم الانتهاء من الكائنات المضافة وأنت. يمكنك أيضًا تصدير اللوحة إلى PDF و SVG و PNG و PEG والمزيد.
الوصول إلى بيانات شرائح PSD
تمنح مكتبة PSD.rb مطوري البرامج القدرة على الوصول إلى شرائح PSD مباشرة داخل تطبيقاتهم الخاصة. كما أنه يدعم الحصول على مصفوفة من جميع الشرائح في المستند ببضع سطرين فقط من كود روبي. من الممكن أيضًا البحث عن الشرائح باسمها أو بمعرفها. توفر المكتبة أيضًا دعمًا لتصدير الشرائح بتنسيق PNG.
الوصول إلى بيانات شرائح PSD عبر 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
الوصول إلى بيانات طبقة PSD
تمكّن مكتبة PSD.rb مفتوحة المصدر محترفي البرامج من الوصول إلى بيانات طبقة PSD باستخدام أوامر Ruby. يمكنك بسهولة الحصول على اسم وكذلك أبعاد الطبقة باستخدام سطرين من كود روبي. يمكن للمطورين أيضًا الوصول إلى أنواع أخرى متنوعة من المعلومات المخزنة في كتل معلومات الطبقة مثل الحجم واللون والخطوط وما إلى ذلك.
الوصول إلى طبقة PSD عبر 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);"}