2009-06-03 17 views
68

मैं रंग चयन बटन खींच रहा हूं और मैं आरजीबी में दिए गए पृष्ठभूमि रंग के लिए एक अच्छा टेक्स्ट रंग (अग्रभूमि) प्राप्त करने के लिए एक अच्छा और सरल सूत्र ढूंढ रहा हूं।किसी दिए गए पृष्ठभूमि रंग के लिए अच्छा टेक्स्ट अग्रभूमि रंग

एक साधारण प्रयास केवल पूरक रंग लेना होगा, लेकिन यह शुद्ध नीले या शुद्ध लाल रंगों के लिए एक अजीब दिखने वाला बटन उत्पन्न करेगा।
क्या कुछ अच्छी तरह से ज्ञात है कि यह करता है?

यदि यह बिल्कुल मायने रखता है, तो मैं क्यूटी का उपयोग कर रहा हूं।

+4

करूँगा कुछ रूबी कोड है इसके अलावा, पूरक रंगों समस्या यह है कि ग्रे नक्शे ग्रे की है। – shoosh

+0

यह सुलभ रंग उपकरण मदद कर सकता है: http://accessible-colors.com –

उत्तर

114

अधिकतम सुवाृत्ति के लिए, आप अधिकतम चमक विपरीतता चाहते हैं जो बिना काम नहीं कर रहे हैं। ऐसा करने का सबसे संगत तरीका टेक्स्ट रंग के लिए काला या सफेद के साथ चिपकना है।आप अधिक सौंदर्यपूर्ण रूप से सुखदायक योजनाओं के साथ आने में सक्षम हो सकते हैं, लेकिन उनमें से कोई भी अधिक सुगम नहीं होगा।

काले या सफेद के बीच चयन करने के लिए, आपको पृष्ठभूमि की चमक जानने की आवश्यकता है।

  • व्यक्ति प्राइमरी लाल के कथित चमक, हरे और नीले समान नहीं हैं: यह एक छोटे से अधिक जटिल होने के कारण दो कारकों हो जाता है,। सबसे तेज़ सलाह मैं आरजीबी को ग्रे-आर * 0.299 + जी * 0.587 + बी * 0.114 में परिवर्तित करने के लिए पारंपरिक सूत्र का उपयोग करना है। कई अन्य सूत्र हैं।

  • डिस्प्ले पर लागू गामा वक्र मध्यम परिपक्व मूल्य को अपेक्षा से अधिक बनाता है। यह आसानी से 128 के बजाय 186 का उपयोग करके हल किया जाता है। 186 से कम कुछ भी सफेद पाठ का उपयोग करना चाहिए, 186 से अधिक कुछ भी काले पाठ का उपयोग करना चाहिए।

+0

मान लें कि हमारे पास एक पृष्ठभूमि रंग है जो ग्रेस्केल स्पेक्ट्रम के बीच में सही बैठता है।क्या यह रंग गामा-मॉनीटर द्वारा गामा-डीकोड होने से पहले सिस्टम द्वारा एन्कोड किया गया है? यदि हां, तो हम मिडपॉइंट को 186 पर सेट करके गामा-डिकोडिंग की दूसरी परत क्यों लागू करेंगे? या मुझसे यहां कुछ छूट रहा है? –

+1

@LeviBotelho, कोई भी सिस्टम गामा एन्कोडिंग नहीं करता है - यह सभी आरजीबी मानों के साथ काम करता है जिसे पहले से ही गामा एन्कोड किया गया माना जाता है। एक उचित कैलिब्रेटेड मॉनीटर पर आप पाएंगे कि 0/255 की वैकल्पिक रेखाएं 186 के भूरे रंग के ब्लॉक के समान चमक होगी। चूंकि अधिकांश मॉनीटर कैलिब्रेटेड नहीं होते हैं, यह कुछ हद तक भिन्न होगा, उदाहरण के लिए मेरा अपना 167 के करीब है। –

+0

धन्यवाद स्पष्टीकरण के लिए। वैकल्पिक लाइनों के साथ अच्छा उदाहरण! –

10

मैं आरजीबी से संबंधित प्रोग्रामिंग चीजों पर कोई विशेषज्ञ नहीं हूं, लेकिन एक डिजाइनर के परिप्रेक्ष्य से, अक्सर सबसे अधिक पठनीय रंग केवल इतना हल्का होगा (यदि पृष्ठभूमि रंग अंधेरा है) या गहरा (यदि पृष्ठभूमि रंग हल्का है) एक ही छाया के संस्करण।

असल में आप अपने आरजीबी मूल्यों को ले लेंगे और यदि वे 0 (अंधेरे) के करीब हैं तो आप उन्हें अपने अग्रभूमि रंग के बराबर मात्रा में धक्का देंगे, या इसके विपरीत यदि यह एक हल्का बीजी है।

पूरक रंग वास्तव में पठनीयता के लिए आंखों पर वास्तव में दर्दनाक हो सकते हैं।

+0

मैं इसके साथ सहमत हूं, एक ही रंग की गहरा या हल्की छाया के लिए जाएं। यह प्रोग्रामेटिकल – gonzohunter

+1

[दल्टनिक लोगों] [http://en.wikipedia.org/wiki/Color_blindness) को ध्यान में रखना आसान होगा। एक उदाहरण के रूप में, मेरे विश्वविद्यालय के शिक्षकों में से एक को नीले रंग के रंगों को अलग करने में बड़ी कठिनाई थी। – ANeves

+0

ऐसा करने का सबसे प्रभावी तरीका वास्तव में आरजीबी मूल्यों को बदलने के बजाय अस्पष्टता का उपयोग करना है। तो यदि आप पाठ को हल्का होना चाहते हैं, तो एक पारदर्शी सफेद का उपयोग करें, और एक पारदर्शी काला गहराई के लिए। https://www.google.com/design/spec/style/color.html#color-text-background-colors –

0

मैं आमतौर पर रंग पूरक को देखो, वे भी रंग पूरक पहियों एक सभ्य गणना

+13

मुझे लाल पृष्ठभूमि (या इसके विपरीत) पर हरे रंग के पाठ के साथ एक एप्लिकेशन दें और आपको पता चल जाएगा जहां मैंने अन्य निकायों को दफनाया है। –

-1

मैं बात के लिए मदद करने के लिए

http://www.makart.com/resources/artclass/cwheel.html

अपने रंग एचएसएल है, तो फ्लिप ह्यू 180 डिग्री से है जो एचएसवी में परिवर्तित हो सकता है, लेकिन आईएमओ बदलते रंग अजीब लगेंगे। मैं मूल्य और शायद संतृप्ति के साथ रंग और झुकाव रखने की कोशिश करता हूं (अंधेरे लाल पाठ के साथ हल्के लाल बटन ... एचएम डरावना लगता है :-))।

2

रंग संयोजन अक्सर ध्यान से चुने जाने पर भयानक लगते हैं। रंग की चमक के आधार पर पाठ के लिए या तो सफेद या काले रंग का उपयोग क्यों न करें। (पहले एचएसबी में कनवर्ट करने की आवश्यकता होगी।)

या उपयोगकर्ता को या तो काले या सफेद टेक्स्ट चुनने दें।

या पूर्व परिभाषित संयोजनों का उपयोग करें। Google उनके कैलेंडर उत्पाद में यही करता है।

2

आप चमकदारता में एक उच्च अंतर के साथ बेहतर हैं। सामान्य रूप से, रंगीन पाठ के साथ रंगीन पृष्ठभूमि पठनीयता के लिए चूसती है, समय के साथ आंखों को चोट पहुंचाती है। हल्के रंग के रंगों के साथ हल्के रंग के रंग (जैसे एचएसबी, एस ~ 10%, बी> 9 0%) में, काले रंग के काम के साथ ठीक, या हल्के ढंग से काले रंग की पृष्ठभूमि पर टिंटेड टेक्स्ट। मैं दोनों रंग से दूर रहना होगा। एक सफेद पृष्ठभूमि पर एक सूक्ष्म रंग के साथ डार्क टेक्स्ट (बी ~ 30%, एस> 50%) भी ठीक हो सकता है। गहरे नीले रंग की पृष्ठभूमि पर पीला (एम्बर) पाठ उत्कृष्ट पठनीयता है, जैसा कि काला पर एम्बर या हरा होता है। यही कारण है कि पुरानी डंबर्म्स (vt100, vt52, आदि) इन रंगों के लिए गए थे।

यदि आपको वास्तव में 'देखो' के लिए रंग-रंग रंग करने की आवश्यकता है, तो आप मध्यम और निम्न स्तर पर संतृप्ति पिन करते समय एच और बी दोनों को उलट सकते हैं।

और एक आखिरी नोट: यदि आपके पास 50% ग्रे पृष्ठभूमि है, तो अपने इंटरफ़ेस पर पुनर्विचार करें। आप अपनी गतिशील सीमा के आधे हिस्से को लूट रहे हैं! आप 35 से अधिक किसी भी व्यक्ति सहित कम दृश्यता उपयोगकर्ताओं को अलग कर रहे हैं ...

9

उत्तोलन स्पष्टता के लिए एक रूपरेखा

तो द्वारा "अच्छा पाठ रंग (अग्रभूमि)" आप प्रयोजनों स्पष्टता के लिए यह इरादा उपयोगकर्ता चुनता है जब any background colour, आप हमेशा सफेद पाठ उत्पादन कर सकते हैं एक काला रूपरेखा है। यह काले, सफेद और बीच में कुछ भी, किसी भी ठोस, पैटर्न या ढाल पृष्ठभूमि पर सुगम होगा।

enter image description here

यहां तक ​​कि अगर यह अपने इरादे का निशान हिट नहीं करता, मैं इसे सार्थक यहां पोस्ट क्योंकि मैं इसी तरह के समाधान की तलाश में आया था लगता है।

0

मैं एक समान जवाब ढूंढ रहा हूं और इस पोस्ट में आया हूं और कुछ अन्य जिन्हें मैंने सोचा था कि मैं साझा करूंगा। http://juicystudio.com/services/luminositycontrastratio.php#specify के अनुसार "डब्ल्यूसीएजी 2.0 के सफलता मानदंड 1.4.3 के लिए कुछ अपवादों के साथ पाठ की दृश्य प्रस्तुति और पाठ की छवियों में कम से कम 4.5: 1 का विपरीत अनुपात होना आवश्यक है। यह साइट आपको उनके विपरीत की गणना करने के लिए अग्रभूमि और पृष्ठभूमि रंगों में डाल देती है, हालांकि यह सहायक होगा या नहीं, यह विकल्प या श्रेणियों का सुझाव देगा।

रंग विपरीतता को देखने के लिए मैंने पाया है कि सबसे अच्छी साइटों में से एक है http://colorizer.org/ यह आपको एक ही समय में लगभग सभी प्रकार के रंग स्केल (आरजीबी, सीएमवाईके, आदि) को समायोजित करने देता है और फिर आपको स्क्रीन पर परिणाम दिखाता है , जैसे पीले रंग की पृष्ठभूमि पर सफेद पाठ। मार्क की प्रतिक्रिया की चोटी पर

4

भवन, यहाँ है कि काम

rgbval = "8A23C0".hex 
r = rgbval >> 16 
g = (rgbval & 65280) >> 8 
b = rgbval & 255 
brightness = r*0.299 + g*0.587 + b*0.114 
return (brightness > 160) ? "#000" : "#fff" 
+0

क्यूटी/सी ++ समतुल्य: ऑटो चमक = brush.redF() * 0.299 + ब्रश.greenF() * 0.587 + brush.blueF() * 0.114; चित्रकार.सेटपेन ((चमक> 0.6)? क्यूटी :: काला: क्यूटी :: सफेद); // पाठ – roberto

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