অ্যান্ড্রয়েডে রঙ বোঝা (ছয়টি অক্ষর)


212

আমি কীভাবে অ্যান্ড্রয়েডে রঙগুলি কাজ করে তা বোঝার চেষ্টা করছি। আমার এই রঙটি আমার পটভূমি হিসাবে সেট হয়েছে LinearLayoutএবং আমি কিছু স্বচ্ছতার সাথে একটি পটভূমি ধূসর পেয়েছি:

<gradient android:startColor="#b4555555" android:endColor="#b4555555"
 android:angle="270.0" />

আমি যদি শেষ দুটি অক্ষর অপসারণ করি (55) আমি স্বচ্ছতা হারাতে একটি শক্ত রঙ পাই get আমি একটি পৃষ্ঠা সন্ধান করার চেষ্টা করছিলাম যেখানে আমি এই সম্পর্কে কিছু ব্যাখ্যা দেখতে পাব, কিন্তু আমি এটি খুঁজে পাইনি।

উত্তর:


170

আপনি যদি 6 টি হেক্স সংখ্যা সরবরাহ করেন তবে এর অর্থ আরজিবি (লাল, সবুজ এবং নীল প্রতিটি মানের জন্য 2 হেক্স সংখ্যা)।

আপনি যদি 8 টি হেক্স ডিজিট সরবরাহ করেন তবে এটি একটি এআরজিবি (যথাক্রমে আলফা, লাল, সবুজ এবং নীল প্রতিটি মানের জন্য 2 হেক্স ডিজিট)।

সুতরাং আপনি চূড়ান্ত 55 কে এ = বি 4, আর = 55, জি = 55, বি = 55 (বেশিরভাগ স্বচ্ছ ধূসর) থেকে আর = বি 4, জি = 55, বি = 55 (সম্পূর্ণ-অ স্বচ্ছ দুষ্টু গোলাপী))

সমর্থিত ফর্ম্যাটগুলির জন্য "রঙ" ডকুমেন্টেশন দেখুন ।


এবং কিভাবে কোডের মাধ্যমে পাঠ্য দেখার স্বচ্ছতা সেট করবেন? আমি এআরজিবি মানটি ইন্টিতে রূপান্তর করতে চাই, তাই আমি পরে এটি পাঠ্য ভিউ.সেটব্যাকগ্রাউন্ড কালার (ইনট কালার) পদ্ধতিতে ব্যবহার করতে পারি। এটা কি সম্ভব? এটি অর্জনের অন্য কোনও উপায়?
মেরেক

@Marek: একটি ARGB মান হয় কোন int, কার্যকরভাবে। বিকাশকারী.অ্যান্ড্রয়েড / রেফারেন্স / অ্যান্ড্রয়েড / অনুগ্রহ / কলর এইচটিএমএল ( <<পৃষ্ঠায় সন্ধান করুন) এ ডকগুলি দেখুন ।
জন স্কিটে

তবে এটি #AARRGGBB হিসাবে গঠন করা হয়নি। এরপরে এটি 0xAARRGGBB হিসাবে গঠন করা হয়। আমি সেটব্যাকগ্রাউন্ড কালার পদ্ধতিতে কেন এটি ব্যবহার করতে পারছি না ts আমি Color.parseColor ( "# AARRGGBB) ব্যবহার করতে পারে
Marek

@ মারেক: এটি "ফর্ম্যাট করা" নয় - এটি কেবল একটি পূর্ণসংখ্যা। ডকুমেন্টেশনে তালিকাবদ্ধ হিসাবে আপনি বিভিন্ন বিট একত্রিত করতে পারেন।
জন স্কিটে

1
@ টিস্টার: না, স্বচ্ছতা।
জন স্কিটি

1184

অ্যান্ড্রয়েড হেক্সাডেসিমাল এআরজিবি মান ব্যবহার করে, যা #AARRGGBB হিসাবে ফর্ম্যাট করা হয়েছে। চিঠিগুলির প্রথম জুটি, এএ, আলফা চ্যানেলের প্রতিনিধিত্ব করে। আপনাকে অবশ্যই আপনার দশমিক অস্বচ্ছ মানকে হেক্সাডেসিমাল মানতে রূপান্তর করতে হবে। পদক্ষেপগুলি এখানে:

আলফা হেক্স মান প্রক্রিয়া

  1. আপনার অস্বচ্ছটিকে দশমিক মান হিসাবে ধরুন এবং এটি 255 দিয়ে গুণ করুন So সুতরাং, আপনার যদি 50% অস্বচ্ছ একটি ব্লক থাকে তবে দশমিক মান value হবে be উদাহরণস্বরূপ: .5 x 255 = 127.5
  2. ভগ্নাংশটি হেক্সাডেসিমালে রূপান্তরিত হবে না, সুতরাং আপনাকে অবশ্যই আপনার সংখ্যাটি উপরে বা নীচে কাছের পুরো সংখ্যায় গোল করতে হবে। উদাহরণস্বরূপ: 127.5 পর্যন্ত 128 টি রাউন্ড; 55.25 রাউন্ড 55 এ নেমে গেছে।
  3. দশমিক-থেকে-হেক্সাডেসিমাল রূপান্তরকারী হিসাবে আপনার দশমিক মানটি লিখুন, যেমন http://www.binaryhexconverter.com/decimal-to-hex-converter , এবং আপনার মান রূপান্তর করুন।
  4. আপনি যদি কেবল কোনও একক মান ফিরে পান তবে এটি শূন্যের সাথে উপসর্গ করুন। উদাহরণস্বরূপ, যদি আপনি 5% অস্বচ্ছতা অর্জন করার চেষ্টা করছেন এবং আপনি এই প্রক্রিয়াটি দিয়ে যাচ্ছেন, আপনি ডি এর হেক্সাডেসিমাল মান দিয়ে শেষ করবেন এর সামনে একটি শূন্য যুক্ত করুন যাতে এটি 0 ডি হিসাবে উপস্থিত হয়।

এইভাবে আপনি আলফা চ্যানেলটির মান খুঁজে পাবেন। আমি আপনার জন্য মানগুলির একটি তালিকা একসাথে রাখার জন্য স্বাধীনতা নিয়েছি। উপভোগ করুন!

হেক্স অস্বচ্ছতার মান

  • 100% - এফএফ
  • 95% - এফ 2
  • 90% - E6
  • 85% - ডি 9
  • 80% - সিসি
  • 75% - বিএফ
  • 70% - বি 3
  • 65% - এ 6
  • 60% - 99
  • 55% - 8 সি
  • 50% - 80
  • 45% - 73
  • 40% - 66
  • 35% - 59
  • 30% - 4 ডি
  • 25% - 40
  • 20% - 33
  • 15% - 26
  • 10% - 1 এ
  • 5% - 0 ডি
  • 0% - 00

37
অ্যান্ড্রয়েড ম্যাটারিয়াল রঙ ডিজাইন গাইডের ভিত্তিতে: google.com/design/spec/style/… আরও কী হেক্স অপরিচ্ছন্নতার মান: 100%: এফএফ 87%: ডি 70%: বি 3 54%: 8 এ 30%: 4 ডি 26%: 42 12 %: 1 এফ
সিএন 123 ঘন্টা 9'15

এখানে আপনি সমস্ত মান খুঁজে পাবেন: dtp-aus.com/hexadeci.htm এবং আপনি আলফা 0-100 নম্বরটি 255 দ্বারা ভাগ করে 100 টি দিয়ে একাধিক পেতে পারেন hope আশা করি এটি আপনাকে সহায়তা করবে
Niib Fouda

12% আলফা জন্য: echo "obase=16; ibase=10; (255*12+50)/100" | bc। (+50 - নিকটতম মানের গোলাকার জন্য এটি আসলে 100/2)
ভিজিল্যান্সার

195

@ ব্লন্ডফিউরিয়াসের উত্তরটি বন্ধ করে দেওয়া , প্রতিটি হেক্সাডেসিমাল মান 100% থেকে 0% আলফা পেতে এখানে কিছু জাভা কোড রয়েছে:

for (double i = 1; i >= 0; i -= 0.01) {
    i = Math.round(i * 100) / 100.0d;
    int alpha = (int) Math.round(i * 255);
    String hex = Integer.toHexString(alpha).toUpperCase();
    if (hex.length() == 1)
        hex = "0" + hex;
    int percent = (int) (i * 100);
    System.out.println(String.format("%d%% — %s", percent, hex));
}

আউটপুট:

100%  FF
99%  FC
98%  FA
97%  F7
96%  F5
95%  F2
94%  F0
93%  ED
92%  EB
91%  E8
90%  E6
89%  E3
88%  E0
87%  DE
86%  DB
85%  D9
84%  D6
83%  D4
82%  D1
81%  CF
80%  CC
79%  C9
78%  C7
77%  C4
76%  C2
75%  BF
74%  BD
73%  BA
72%  B8
71%  B5
70%  B3
69%  B0
68%  AD
67%  AB
66%  A8
65%  A6
64%  A3
63%  A1
62%  9E
61%  9C
60%  99
59%  96
58%  94
57%  91
56%  8F
55%  8C
54%  8A
53%  87
52%  85
51%  82
50%  80
49%  7D
48%  7A
47%  78
46%  75
45%  73
44%  70
43%  6E
42%  6B
41%  69
40%  66
39%  63
38%  61
37%  5E
36%  5C
35%  59
34%  57
33%  54
32%  52
31%  4F
30%  4D
29%  4A
28%  47
27%  45
26%  42
25%  40
24%  3D
23%  3B
22%  38
21%  36
20%  33
19%  30
18%  2E
17%  2B
16%  29
15%  26
14%  24
13%  21
12%  1F
11%  1C
10%  1A
9%  17
8%  14
7%  12
6%  0F
5%  0D
4%  0A
3%  08
2%  05
1%  03
0%  00

একটি জাভাস্ক্রিপ্ট সংস্করণ নীচে:


আপনি কেবল গুগলকে "সংখ্যা থেকে হেক্স" করতে পারেন যেখানে 'নম্বর' 0 এবং 255 এর মধ্যে কোনও মান।


36

অ্যান্ড্রয়েড মেটেরিয়াল ডিজাইন

এটি পাঠ্যের রঙের ধাপে ধাপে ধাপ নির্ধারণের জন্য রূপান্তর।

  • 100%: এফএফ
  • 87%: DE
  • 70%: বি 3
  • 54%: 8 এ
  • 50%: 80
  • 38%: 61
  • 12%: 1F

হালকা ব্যাকগ্রাউন্ডে গা text় পাঠ্য

এখানে চিত্র বর্ণনা লিখুন

  • প্রাথমিক পাঠ্য: DE000000
  • দ্বিতীয় পাঠ্য: 8A000000
  • অক্ষম পাঠ্য, ইঙ্গিত পাঠ্য এবং আইকন: 61000000
  • বিভিন্ন মতে বিভক্ত: 1F000000

গা dark় পটভূমিতে সাদা পাঠ্য

এখানে চিত্র বর্ণনা লিখুন

  • প্রাথমিক পাঠ্য: FFFFFFFF
  • দ্বিতীয় পাঠ্য: B3FFFFFF
  • অক্ষম পাঠ্য, ইঙ্গিত পাঠ্য এবং আইকন: 80FFFFFF
  • বিভিন্ন মতে বিভক্ত: 1FFFFFFF

আরো দেখুন


দুর্দান্ত কাজ, ধন্যবাদ! জানুয়ারী 7, 2019 পর্যন্ত, এই লিঙ্কগুলি আপনার লিঙ্কযুক্ত Android মেটাল ডিজাইন পৃষ্ঠায় আর দৃশ্যমান নয় in এগুলি কি এখনও সরকারী প্রস্তাবিত মানগুলি এবং সেগুলির বিবরণ দেওয়া আছে এমন কোনও অন্য সরকারী উত্স আছে? ধন্যবাদ!
দ্যউনউকনফুল

@ উনউকনফুল, এই উত্তরটি এখন পুরানো হতে পারে। আমি পাঠ্যের জন্য অস্বচ্ছতা স্তর নির্ধারণ সম্পর্কে কিছুই দেখতে পাচ্ছি না। যদি মনে হয় যে কোনও দ্বন্দ্ব বর্তমান নির্দেশিকাগুলির সাথে চলে।
সুরগাচ

17

অ্যান্ড্রয়েডে, রঙগুলি আরজিবি বা এআরজিবি হিসাবে নির্দিষ্ট করা যায়।

http://en.wikipedia.org/wiki/ARGB

আরজিবিতে আপনার প্রতিটি বর্ণের জন্য দুটি বর্ণ রয়েছে (লাল, সবুজ, নীল) এবং এআরজিবিতে আপনার আলফা চ্যানেলের জন্য দুটি অতিরিক্ত অক্ষর রয়েছে।

সুতরাং, আপনার যদি 8 টি অক্ষর থাকে তবে এটি এআরজিবি, প্রথম দুটি অক্ষর আলফা চ্যানেল নির্দিষ্ট করে। আপনি যদি শীর্ষস্থানীয় দুটি অক্ষর সরিয়ে ফেলেন তবে এটি কেবল আরজিবি (কঠিন রঙ, কোনও আলফা / স্বচ্ছতা নয়)। আপনি যদি আপনার জাভা উত্স কোডে কোনও রঙ নির্দিষ্ট করতে চান তবে আপনাকে ব্যবহার করতে হবে:

int Color.argb (int alpha, int red, int green, int blue)

alpha  Alpha component [0..255] of the color
red    Red component [0..255] of the color
green  Green component [0..255] of the color
blue   Blue component [0..255] of the color

তথ্যসূত্র: আরজিবি


7

একটি 8-অঙ্কের হেক্স রঙের মানটি এআরজিবি (আলফা, লাল, সবুজ, নীল) এর উপস্থাপনা, যেখানে 6-সংখ্যার মানটি 100% অস্বচ্ছতা (সম্পূর্ণ অস্বচ্ছ) ধরে নেয় এবং কেবল আরজিবি মানগুলি সংজ্ঞায়িত করে। সুতরাং এটি সম্পূর্ণরূপে অস্বচ্ছ হতে পারে আপনি # FF555555, অথবা কেবল # 555555 ব্যবহার করতে পারেন। প্রতিটি 2-অঙ্কের হেক্স মান 0-2-25 এর মান উপস্থাপন করে একটি বাইট হয়।


-1

নতুন ক্রোম সংস্করণে (সম্ভবত 67.0.3396.62), সিএসএস হেক্স রঙ এই মডেল প্রদর্শনটি ব্যবহার করতে পারে,

উদাহরণ:

div{
  background-color:#FF00FFcc;
}

সিসি অস্বচ্ছ, তবে পুরাতন ক্রোম সেই মোডটিকে সমর্থন করে না


স্ট্যাকওভারফ্লোতে স্বাগতম, দয়া করে ভ্রমণ করুন । ক্রোম বা এইচটিএমএল নয়, অ্যান্ড্রয়েডের রঙ সম্পর্কে তিনি যেমন জিজ্ঞাসা করেছিলেন সেভাবে আপনার উত্তর ওপিকে সহায়তা করে না।
পিএস

@ পিএস গতকাল, হ্যাঁ, তবে তাদের একই প্রতিনিধিত্ব রয়েছে।
হিকস 3:38 এ 8'30 এ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.