2009-07-23 14 views
5

पर जेपीईजी रंगस्थान (एडोब आरजीबी से एसआरबीबी) को परिवर्तित करना मुझे बड़ी तस्वीरों से थंबनेल और मध्यम आकार की छवियां उत्पन्न करने की आवश्यकता है। ये छोटी तस्वीरें एक ऑनलाइन गैलरी में प्रदर्शित करने के लिए हैं। कई फोटोग्राफर एडोब आरजीबी का उपयोग कर जेपीईजी छवियां जमा कर रहे हैं। मैं सभी थंबनेल और मध्यम आकार छवियोंविंडोज़ (.NET)

मैं dotnet (asp.net) का उपयोग कर रहा के लिए sRGB उपयोग करने के लिए और एक तरह से की जरूरत है किसी भी गुणवत्ता खोने के बिना sRGB करने के लिए Adobe आरजीबी से परिवर्तित करना चाहते हैं।

उत्तर

4

पृष्ठभूमि जानकारी: जेपीजी फाइलों में लाल, हरे और नीले रंग के 8 बिट हैं, चाहे एसआरबीबी, एडोब आरजीबी, या सादा ओएल 'आरजीबी। आईसीसी डिस्क्रिप्टर कलर स्पेस निर्धारित करता है। कभी-कभी यह jpg फ़ाइल में एम्बेड किया गया है। कभी-कभी एसआरबीबी को निर्दिष्ट करने के लिए एक झंडा होता है, एक्सिफ कलर्सस्पेस टैग a001 = 1. एडोब आरजीबी के लिए कोई मानक ध्वज नहीं है, लेकिन कुछ एप्लिकेशन और कैमरे एक्सिफ टैग ए 001 में एडोब आरजीबी के लिए 65535 (अनलिब्रेटेड) का उपयोग करते हैं।

एक आईपीजी प्रोफाइल (रंगस्थान) से दूसरे में एक जेपीजी फ़ाइल को परिवर्तित करने के लिए, आप रंग रिक्त स्थान के बीच एक ट्रांसमॉर्म बनाने के लिए CreateColorTransform का उपयोग कर सकते हैं। आपको स्रोत (एडोब आरजीबी) और गंतव्य (एसआरबीबी) रंग रिक्त स्थान के लिए आईसीसी प्रोफाइल प्रदान करने की आवश्यकता होगी।

आपके पास परिवर्तन होने के बाद, पिक्सेल समायोजित करने के लिए अनुवाद बिटमैप बिट्स का उपयोग करें। छवि के साथ एक DIBSection के रूप में काम करना आसान हो सकता है।

यह .asp में लिखने के लिए थोड़ा जटिल हो सकता है, इसलिए ऐसा करने के लिए एक ग्राफिक्स लाइब्रेरी का उपयोग करना आसान हो सकता है।

0

सर्वर की तरफ आप ImageMagick पर कॉल कर सकते हैं और इसे आपके लिए रूपांतरण कर सकते हैं।

Here's a link to the -colorspace command line option

मैं इस विशेष विकल्प उपयोग नहीं किया है, लेकिन यह है कि तुम क्या चाहते हो रहा है।

1

आपको ImageMagic -profile विकल्प का उपयोग करना चाहिए, मुझे विश्वास है कि -colorspace विकल्प आपकी मदद नहीं करेगा।

convert image.jpg -profile sRGB.icc rgb_image.jpg 

वैकल्पिक रूप से आप के लिए little color management engine

4

ColorConvertedBitmap class पर एक नजर डालें देख सकते हैं।

+0

लिंक अब काम करने लगता है। –

+0

@ जोन धन्यवाद, मैंने उत्तर अपडेट किया। –

1

The bitmap transform classes पर एक नज़र डालें, जिसमें एक प्रोफ़ाइल के साथ ColorconvertedBitmap क्लास का उपयोग करने का एक छोटा सा नमूना है।

संबंधित मुद्दे