<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[rgb color auf 16 farben runterrechnen]]></title><description><![CDATA[<p>Ich suche einen algorithmus um in meinem Programm Zahlenwerte die RGB Color darstellen (html format rgb color) auf 16 Farben zu reduzieren, ich benutze Visual Studio, kann jemand helfen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/146685/rgb-color-auf-16-farben-runterrechnen</link><generator>RSS for Node</generator><lastBuildDate>Thu, 16 Jul 2026 13:20:27 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/146685.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 10 May 2006 05:04:41 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to rgb color auf 16 farben runterrechnen on Wed, 10 May 2006 05:04:41 GMT]]></title><description><![CDATA[<p>Ich suche einen algorithmus um in meinem Programm Zahlenwerte die RGB Color darstellen (html format rgb color) auf 16 Farben zu reduzieren, ich benutze Visual Studio, kann jemand helfen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1054548</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1054548</guid><dc:creator><![CDATA[html user]]></dc:creator><pubDate>Wed, 10 May 2006 05:04:41 GMT</pubDate></item><item><title><![CDATA[Reply to rgb color auf 16 farben runterrechnen on Wed, 10 May 2006 07:55:03 GMT]]></title><description><![CDATA[<p>Also, hier hast du eine liste der Farben inklusive Hex-RGB-Werte: <a href="http://de.selfhtml.org/diverses/anzeige/farbnamen_16.htm" rel="nofollow">http://de.selfhtml.org/diverses/anzeige/farbnamen_16.htm</a><br />
Wie du siehst, musst du nur überprüfen, welchem Wert deine R G B Werte am nächsten sind...<br />
(wobei ich erstmal Silber aussen vorlassen würde, denn das ist irgendwie ein Sonderfall... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> )</p>
<p>Das heisst, du benötigst jetzt eine Funktion, die RGB Werte überprüft und die auf 16 Farben 'runtergebrochenen' zurückliefert...<br />
Brauchst du noch hilfe, wie so eine Funktion aussehen könnte?!? Wenn ja, dann sag bescheid <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>ndT Lupo</p>
<p><em>Was nützt es dem Menschen, wenn er Lesen und Schreiben gelernt hat,<br />
aber das Denken anderen überläßt?</em><br />
^Ernst R. Hauschka^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1054616</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1054616</guid><dc:creator><![CDATA[Lupo4u2]]></dc:creator><pubDate>Wed, 10 May 2006 07:55:03 GMT</pubDate></item><item><title><![CDATA[Reply to rgb color auf 16 farben runterrechnen on Wed, 10 May 2006 17:11:59 GMT]]></title><description><![CDATA[<p>Ah danke erstmal für den Hinweis. So und dann würde ich gerne noch dein Angebot bezüglich der Hilfe zur Farbumrechnung in Anspruch nehmen. Nicht jetzt den Programmiercode, der ist nicht das Problem, ich muß erst mal verstehen, wie man da am besten ansetzt. Es ist ja offen sichtlich daß es da 7 Kombinationen mit 00+80 und 7 Kombinationen mit 00+FF sowie die beiden Sonderfälle #000000 und #C0C0C0 gibt. Hmm jetzt hörts aber auch schon auf mit dem Verstehen.</p>
<p>cu Bob</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1055022</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1055022</guid><dc:creator><![CDATA[html user]]></dc:creator><pubDate>Wed, 10 May 2006 17:11:59 GMT</pubDate></item><item><title><![CDATA[Reply to rgb color auf 16 farben runterrechnen on Wed, 10 May 2006 17:18:36 GMT]]></title><description><![CDATA[<p>Hmm ich würde am ehesten einfach den gegebenen Wert nehmen. Diesen dann schritt für schritt mit den anderen überprüfen und gucken welcher am nähesten dran ist <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /> Evt. dafür einfach einen fertigen Algo nehmen.. gibt es genug <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> <a href="http://google.de" rel="nofollow">google.de</a> hilft <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1055030</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1055030</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Wed, 10 May 2006 17:18:36 GMT</pubDate></item><item><title><![CDATA[Reply to rgb color auf 16 farben runterrechnen on Thu, 11 May 2006 10:14:08 GMT]]></title><description><![CDATA[<p>Genau. Wie Devil schon gesagt hat. Du nimmst deinen RGB Wert. (beispielsweise #0A4510 )<br />
Jetzt teilst du den in die einzelnen Farben Rot/Grün/Blau. Dann hast du:</p>
<p>R= 0A;<br />
G= 45;<br />
B= H3;</p>
<p>So, wir wissen das unsere runterskalierten Werte entweder #00, #80 oder #FF haben müssen. (den sonderfall mit #C0 lassen wir aussen vor)<br />
Das heisst, wir müssen für jeden einzelnen Wert herausfinden, welchem dieser Endwerte (#00, #80,#FF) er am nächsten ist.</p>
<p>Das könnte man mittels Subtraktion machen... z.b. so (R = 0A):<br />
#00 - R = -0A; // *(-1) weil wir den positiven Wert haben wollen!<br />
#80 - R = 76;<br />
#FF - R = F5</p>
<p>Das Ergebnis, welches davon das kleinste ist (am nächsten bei 0 liegt), führt uns zu dem Enderwert, den wir benutzen müüsen. In diesem Fall #00, weil #0A der kleinste Wert ist.<br />
Für den G wert wäre es #80 und für den B Wert #FF (wenn du das nachrechnest <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> )</p>
<p>Am ende hast du dann irgendeine Kombination aus #00, #80 &amp; #FF... und jede dieser Kombinationen führt zu einem der 16 Farbwerte... (bis auf das Silber... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> )</p>
<p>Sonst noch fragen? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>ndT Lupo</p>
<p><em>Um manche Delikte zu begreifen, genügt es, die Opfer zu kennen.</em><br />
^Oscar Wilde^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1055443</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1055443</guid><dc:creator><![CDATA[Lupo4u2]]></dc:creator><pubDate>Thu, 11 May 2006 10:14:08 GMT</pubDate></item><item><title><![CDATA[Reply to rgb color auf 16 farben runterrechnen on Thu, 11 May 2006 10:53:57 GMT]]></title><description><![CDATA[<p>Jeder der drei Farberreiche für 16bit<br />
R 00, R 80, R FF<br />
ist 85 Einheiten weit.</p>
<p>Also könnte man es so machen:<br />
int r16 = r32/85==0 ? 0 : r32/85==1 ? 0x80 : 0xFF;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1055482</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1055482</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Thu, 11 May 2006 10:53:57 GMT</pubDate></item><item><title><![CDATA[Reply to rgb color auf 16 farben runterrechnen on Thu, 11 May 2006 16:09:27 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/1527">@Lupo4u2</a><br />
ich glaube das was du vorschlägst trifft nicht so ganz zu, genau deine Beispielfarbe funktioniert so nicht weil als Ergebniss eine Kombination aus x00, x80 und xFF herauskommt, es gibt jedoch im 4Bit Bereich nur Kombinationen aus (x00 und x80) oder (x00 und xFF), aber nicht (x00, x80 und xFF). Aber um ehrlich zu sein genau auf diesm Weg habe ich es auch erst versucht. Ich denk man müsste irgendwie eine Gewichtung der Zahlen vornehmen. Aber auch hier stecke ich fest.</p>
<p>cu Bob</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1055789</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1055789</guid><dc:creator><![CDATA[html user]]></dc:creator><pubDate>Thu, 11 May 2006 16:09:27 GMT</pubDate></item><item><title><![CDATA[Reply to rgb color auf 16 farben runterrechnen on Thu, 11 May 2006 16:11:03 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/35992">@Martin</a> Richter<br />
sorry auch bei längerem Überlegen steig ich da hinter wie das gemeint ist.</p>
<p>cu Bob</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1055793</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1055793</guid><dc:creator><![CDATA[html user]]></dc:creator><pubDate>Thu, 11 May 2006 16:11:03 GMT</pubDate></item><item><title><![CDATA[Reply to rgb color auf 16 farben runterrechnen on Thu, 11 May 2006 16:19:12 GMT]]></title><description><![CDATA[<p>nicht dahinter, mein ich natürlich</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1055803</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1055803</guid><dc:creator><![CDATA[html user]]></dc:creator><pubDate>Thu, 11 May 2006 16:19:12 GMT</pubDate></item><item><title><![CDATA[Reply to rgb color auf 16 farben runterrechnen on Thu, 11 May 2006 18:32:41 GMT]]></title><description><![CDATA[<p>Ganz real für das angesprochene Beispiel:<br />
R= 0x0A;<br />
G= 0x45;<br />
B= 0xF3;</p>
<p>Würde nach meiner Umrechnung<br />
R = 0x00; // &lt;0x55<br />
G = 0x00; // &lt;0x55<br />
B = 0xFF; // &gt;0xAA</p>
<p>herauskommen.<br />
Ich habe es verinfacht nur für einen Farbwert dargestellt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1055926</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1055926</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Thu, 11 May 2006 18:32:41 GMT</pubDate></item><item><title><![CDATA[Reply to rgb color auf 16 farben runterrechnen on Fri, 12 May 2006 06:29:11 GMT]]></title><description><![CDATA[<p>oh mann, du hast natürlich recht, html user... hab ich nicht bedacht, das es keine konstellation aus #00, #80 und #FF gleichzeitig gibt... sorry.</p>
<p>Also dann, ein neuer Denkansatz:</p>
<p>einfach die Hex-Werte (den kompletten RGB Wert) in Dezimal umrechnen und dann überprüfen, welchem der Endwerte es am nächsten liegt...</p>
<p>Beispiel:</p>
<p>Weiss = 0xFFFFFF = 16777215;<br />
Gelb = 0xFFFF00 = 16776960;<br />
lila = 0x800080 = 8388736;<br />
usw..</p>
<p>Wenn du jetzt irgendeinen wert hast, sagen wir :<br />
Wert = 0xE600E6 = 15073510;</p>
<p>müsstest du jetzt nur noch vergleichen, welchem deiner Endwerte er am nächsten ist... Damit sollte auch der Sonderfall Silber keine Probleme mehr darstellen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>P.S. vielleicht sollte ich es erstmal ausprobieren, bevor ich es poste, aber hab hier auf'er Arbeit gerade keine vernünftige Umgebung laufen... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>P.P.S. <a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/35992">@Martin</a>: so ganz versteh ich deine Rechnung auch noch nicht...</p>
<p>ndT Lupo</p>
<p><em>Ausnahmen sind nicht immer Bestätigung der alten Regel.<br />
Sie können auch Vorboten einer neuen Regel sein.</em><br />
^Marie von Ebner-Eschenbach^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1056093</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1056093</guid><dc:creator><![CDATA[Lupo4u2]]></dc:creator><pubDate>Fri, 12 May 2006 06:29:11 GMT</pubDate></item><item><title><![CDATA[Reply to rgb color auf 16 farben runterrechnen on Fri, 12 May 2006 06:43:11 GMT]]></title><description><![CDATA[<p>Vergesst meinen Ansatz. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /><br />
Er würde nur funktionieren wenn die 16 Farben alle Permutationen aus 0x0 0x80 0xff für R, G und B wären. Das würde aber 27 Ausprägungen bedeuten, die haben wir aber nicht. Wir haben eben spezielle 16...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1056099</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1056099</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Fri, 12 May 2006 06:43:11 GMT</pubDate></item><item><title><![CDATA[Reply to rgb color auf 16 farben runterrechnen on Sat, 13 May 2006 05:22:20 GMT]]></title><description><![CDATA[<p>Ah klar Lupo4u2 liegt ja eigentlich auf der Hand, da hab ich den Wald vor lauter Bäumen nicht gesehn.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1056858</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1056858</guid><dc:creator><![CDATA[html user]]></dc:creator><pubDate>Sat, 13 May 2006 05:22:20 GMT</pubDate></item></channel></rss>