मैं एचएसएल मानों से सी # रंग कैसे बना सकता हूं?एचएसएल मानों से सी # रंग बनाना
उत्तर
रिच न्यूमैन ने एचएसएलकॉलर क्लास बनाया है जिसका उपयोग सिस्टम.ड्राइंग.कॉलर के स्थान पर किया जा सकता है।
यह कक्षा * अधिकांश समय * काम करने लगती है। मुझे एक समस्या है जहां मेरे पास एक एचएसएल रंग (210,45,72) है जो एक नीली आउटपुट आरजीबी (90,62,83) है जो लाल है। मैं अपने ब्लॉग पर जाने की कोशिश कर रहा हूं लेकिन यह लगभग कभी भी लोड नहीं करता है। – Sinaesthetic
यह कक्षा रंग का उपयोग करती है। गेटब्राइटनेस विधि, इसलिए यह वास्तव में [एचएसबी] प्रस्तुत करता है (http://www.poynton.com/notes/colour_and_gamma/ColorFAQ.html#RTFToC36) रंग स्थान, एचएसएल नहीं। – ironic
# bbe30a और # 320ae3 के लिए काम नहीं करता है। मैंने केवल दो मानों की कोशिश की और इसे प्राप्त किया। – aloisdg
अपने कोड फ़ाइल में नामस्थान "का उपयोग" के लिए नीचे निम्न पंक्ति जोड़ें:
using System.Runtime.InteropServices
और पी/आह्वान, निम्नलिखित समारोह जोड़ने के साथ:
[DllImport("shlwapi.dll")]
public static extern int ColorHLSToRGB(int H, int L, int S);
किसी भी कक्षा में आप अपनी परियोजना में चाहते हैं।
यदि आपके पास रंग, रंग और संतृप्ति पूर्णांक के रूप में रंग है, तो इन मानों को उस कार्य को दें, और वांछित आरजीबी रंग पूर्णांक के रूप में वापस कर दिया जाएगा। फिर ColorTranslator.FromWin32 का उपयोग सिस्टम के पूर्णांक के रूप में लौटा आरजीबी रंग का अनुवाद करने के लिए करें। ड्रॉइंग। रंग संरचना।
एक और तरीका है Color.FromArgb (Int32) अधिभार विधि का उपयोग करने, रंग आपको लगता है कि पूर्णांक से System.Drawing.Color संरचना के रूप में चाहते हैं बनाने के लिए है।
एक और तरीका हैColorConverter वर्ग का एक उदाहरण बनाने के लिए, और फिर फोन ConvertFrom विधि, और यह दे आरजीबी रंग पूर्णांक ColorHLSToRGB समारोह से लौट आए, या एक ही पहले से ConvertTo विधि कॉल है तर्क, लेकिन दूसरे तर्क इनपुट typeof(System.Drawing.Color)
में। फिर लौटे ऑब्जेक्ट को System.Drawing.Color संरचना प्रकार में कनवर्ट करें।
परिणाम वही है जो आप खोज रहे हैं और उम्मीद कर रहे हैं!
आप आरजीबी रंग को सिस्टम के पूर्णांक के रूप में परिवर्तित करने के तरीके के बारे में अन्य एल्गोरिदम या तरीकों को भी खोज सकते हैं, खोज सकते हैं और सीख सकते हैं। ड्रॉइंग। रंग संरचना या एचएलएस मानों को तीन पूर्णांक के रूप में कैसे परिवर्तित करें सिस्टम। ड्रॉइंग। रंग संरचना!
कुछ चीजों को ध्यान में रखना: 'एच',' एल' और 'एस' 0 से 240 तक जाते हैं। ध्यान रखें कि 0 का चमकदार काला का मतलब है, और 240 का मतलब सफेद है, इसलिए यदि आप शुद्ध रंग चाहते हैं (जैसे '# F00') आपको' एल' 120 सेट करने की आवश्यकता है। ध्यान देने योग्य भी: यदि आप 'Color.FromArgb (Int32)' अधिभार का उपयोग करने जा रहे हैं, तो रंग का अल्फा 0 होगा, जिसका अर्थ है कि यह ' पारदर्शी हो जाएगा। 'ColorTranslator.FromWin32()' में उस समस्या नहीं है। – Nolonar
- 1. हेक्स रंग मान से सॉलिडकॉलर ब्रश बनाना
- 2. यादृच्छिक रंग बनाना (System.Drawing.Color)
- 3. के औसत परिपत्र मूल्यों (विशेष रूप से एचएसएल रंग योजना में ह्यूज़)
- 4. सीएसएस में, क्या एचएसएल मान फ़्लोट हो सकते हैं?
- 5. सी रंग
- 6. रंग सुधार (आईफोन/उद्देश्य-सी)
- 7. सी # परियोजना से डीएलएल बनाना?
- 8. हेक्साडेसिमल रंग मानों में अग्रणी "# एफएफ" क्यों?
- 9. विभिन्न मानों पर सेल रंग बदलें - ग्रिडव्यू
- 10. स्वचालित रूप से सी हेडर से सी # रैपर बनाना?
- 11. सी # - दो Int32s से एक Int64 बनाना
- 12. यह जावास्क्रिप्ट आरजीबी एचएसएल कोड क्यों काम नहीं करता है?
- 13. सी ++ win32 कंसोल में रंग
- 14. पिक्सेल मानों तक पहुंच ओपनसीवी 2.3 - सी ++
- 15. बनाना तीन स्तर सी #
- 16. बनाना पासवर्ड ऑब्जेक्टिव-सी
- 17. सी # समान रंग ढूंढना
- 18. क्रमबद्ध रंग (ऑब्जेक्टिव-सी)
- 19. सी # foreach केवल विशिष्ट मानों
- 20. मल्टी-रंग टेक्स्टबॉक्स सी #
- 21. कौन से मानों को डबल
- 22. आरजीबीए मानों को हेक्स रंग कोड में कनवर्ट करें
- 23. रनटाइम पर सी # कक्षाएं बनाना
- 24. एक सी ++ कक्षा आरेख बनाना
- 25. गतिशील रूप से छवि रंग बदलना
- 26. सी # मूल बातें बनाना परमाणु
- 27. सी ++, रनटाइम में कक्षाएं बनाना
- 28. नीले रंग से कुछ और
- 29. एक नया सी ++ सबवेक्टर बनाना?
- 30. एक सरणी बनाना जो सी ++
यह भी देखें: http://stackoverflow.com/questions/2942/hsl-in-net/2504318#2504318 –