कोर API

कोर API

PsdImage लोड करने, निरीक्षण करने, और PSD/PSB दस्तावेज़ों को सहेजने के लिए प्रवेश बिंदु है। यह सारभूत Image बेस क्लास को विस्तारित करता है, जो Width, Height, Bounds, Load(), Save(), और Dispose() को घोषित करता है।


दस्तावेज़ लोड करना और सहेजना

Image.Load() फ़ाइल पथ या एक Stream स्वीकार करता है और एक Image लौटाता है; परिणाम को PsdImage में कास्ट करें ताकि दस्तावेज़ की शेष सतह तक पहुँच सकें। PsdImage.Save() दस्तावेज़ को फ़ाइल पथ या स्ट्रीम में वापस लिखता है।

using var image = (PsdImage)Image.Load(inputPath);
// ... inspect or edit ...
image.Save(outputPath);

दस्तावेज़ हैडर गुण

PsdImage पार्स किए गए हैडर को टाइप्ड प्रॉपर्टीज़ के रूप में उजागर करता है: Width, Height, BitsPerChannel, ColorMode, Version, Compression, Size, और IsFlatten।

Console.WriteLine($"Width: {image.Width}, Height: {image.Height}");
Console.WriteLine($"ColorMode: {image.ColorMode}, Version: {image.Version}");
Console.WriteLine($"Compression: {image.Compression}, IsFlatten: {image.IsFlatten}");

छवि संसाधन

PsdImage.ImageResources पार्स किए गए ResourceBlock[] एरे को लौटाता है। इस FOSS बिल्ड में, ImageResources, GlobalLayerResources, ActiveLayer, और HasTransparencyData को पढ़ा जा सकता है लेकिन पुनः असाइन नहीं किया जा सकता — उनके सेटर्स NotSupportedException फेंकते हैं।

foreach (ResourceBlock resource in image.ImageResources)
{
    Console.WriteLine($"Resource {resource.ID}: {resource.Name} ({resource.DataSize} bytes)");
}

टिप्स और सर्वोत्तम प्रथाएँ

  • हमेशा Image.Load() के परिणाम को PsdImage में कास्ट करें ताकि PSD-विशिष्ट सदस्यों तक पहुंच सकें।
  • Dispose()-योग्य वस्तुओं को using कथन में लपेटें; PsdImage IDisposable को लागू करता है।
  • भले ही वे सेट्टर उजागर करते हों, ImageResources, GlobalLayerResources, ActiveLayer, और HasTransparencyData को केवल-पढ़ने योग्य मानें।
  • image.Layers में इंडेक्स करने से पहले image.Layers.Length जांचें — एक फ्लैटेड दस्तावेज़ में शून्य लेयर्स हो सकती हैं।

सामान्य समस्याएँ

समस्याकारणसमाधान
NotSupportedException सेट करते समय ImageResourcesयह प्रॉपर्टी FOSS बिल्ड में केवल-पढ़ने योग्य है, जबकि इसका सेट्टर मौजूद हैमान पढ़ें; इसे पुनः असाइन करने का प्रयास न करें
फ़्लैटेड दस्तावेज़ पर खाली image.Layers ऐरेIsFlatten true है और दस्तावेज़ में कोई पार्स्ड लेयर नहीं हैइंडेक्सिंग करने से पहले image.Layers में image.Layers.Length (या image.IsFlatten) की जाँच करें

FAQ

क्या PSD दस्तावेज़ को लोड करने से पिक्सेल डेटा डिकोड होता है?

नहीं। PsdImage.Load() दस्तावेज़ हेडर, लेयर मेटाडेटा और संसाधनों को डिकोड किए बिना या पिक्सेल डेटा को रेंडर किए बिना पार्स करता है।

क्या मैं PSD फ़ाइल को किसी अन्य इमेज फ़ॉर्मेट में बदल सकता हूँ?

नहीं। यह लाइब्रेरी केवल PSD/PSB दस्तावेज़ों को लोड, निरीक्षण और सहेजती है — यह पिक्सेल डेटा को रेंडर नहीं करती या अन्य इमेज फ़ॉर्मेट में परिवर्तित नहीं करती।


API Reference सारांश

क्लास/मेथडविवरण
Image.Load(string) / Image.Load(Stream)एक PSD या PSB दस्तावेज़ लोड करता है
PsdImage.Save(string) / PsdImage.Save(Stream)दस्तावेज़ को सहेजता है
PsdImage.Width / Height / BitsPerChannel / ColorMode / Version / Compression / Size / IsFlattenदस्तावेज़ हेडर गुण
PsdImage.ImageResourcesपार्स किए गए image resource blocks (केवल-पढ़ने-योग्य)

यह भी देखें

 हिन्दी