Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Farben umkehren

Empfohlene Antworten

Hallo,

ich gebe einem Objekt als Hintergrundfarbe einen long wert.

da das ganze eher zufällig abläuft, weiß ich nicht welche fordergrundfarbe ich brauche, damit man noch was lesen kann.

Und nun die Frage:

Kann man irgendwie die Invertierte Farbe ermitteln???

Also z.B. aus Schwarz wird weiß, aus rot wird mint, aus gelb blau und jeweils umgekehrt.

Ich weiß zwar nicht, welche Sprache du meinst, aber idR. ist es doch so, daß du drei Zahlen für die Farbe hast: eie für Rot, eine für Grün und eine für Blau. Das sind idR. je 8 bit - als0 von 0 bis 255! Diese Werte mußt da dann nur umkehren...

Bsp:

Du hast folgende Farbe:

R 255

G 120

B 0

da errechnest du also jeweils die Differenz zu 255 und schon haste die negative Farbe:

R 0

G 135

B255

Du mußt nur bei Grauwerten aufpassen - da kann die negative Farbe mit Pech dieselbe sein, wie die Farbe selbst...

Eine Möglichkeit wäre zur Zahl einfach 0x00808080 (hex) oder 8421504 (dezimal) zu addieren. Somit bekommst du zwar nicht die Komplementärfarbe, aber zumeindest sollte in den meisten Fällen lesbar sein. (grau auf weiß bzw. schwarz, usw.)

Eine andere Möglichkeit wäre, dass du dich auf weiß oder schwarz als Vorderrgrundfarbe festlegst. Dann ermittelst du den Durchschnitt der Farbanteile. Wenn dieser größer 128 ist, dann nimmst du schwarz und sonst weiß.

Pseudocode:


iHelligkeit = (GetRValue(cColor)

              +GetGValue(cColor)

              +GetBValue(cColor)) / 3;


if ( iHelligkeit >= 128)

  cColorNeu = 0;

else

  cColorNeu = 0xFFFFFF;


Ich hoffe das hilft...

Die Sprache ist VB, mir gings aber erst mal nur ums wie überhaupt.

Die beiden Vorschläge sind gut, muss ma testen.

Danke

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.