AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

256 Farben

Ein Thema von juniorA · begonnen am 11. Jan 2022 · letzter Beitrag vom 13. Jan 2022
Antwort Antwort
Seite 2 von 3     12 3      
juniorA

Registriert seit: 14. Sep 2011
112 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#11

AW: 256 Farben

  Alt 11. Jan 2022, 13:20
Das Ergebnis sollen die Farben der Farbtabelle im Anhang werden.
Der Wert 1 steht für weis und 255 für schwarz.
Miniaturansicht angehängter Grafiken
farbtabelle.png  
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.685 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: 256 Farben

  Alt 11. Jan 2022, 13:34
hallo, schau mal dein bild an, dort steht alles was benötigt ist. (farbwert in hex = 3 byte)
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
juniorA

Registriert seit: 14. Sep 2011
112 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#13

AW: 256 Farben

  Alt 11. Jan 2022, 13:49
Mit den HEX-Werte habe ich gesehen. Heist es jetzt alle 256 HEX wert als Konstante ablegen oder gibt es bei den Werte einen festes System?
  Mit Zitat antworten Zitat
freimatz

Registriert seit: 20. Mai 2010
1.380 Beiträge
 
Delphi 11 Alexandria
 
#14

AW: 256 Farben

  Alt 11. Jan 2022, 14:30
Wie kommst Du auf die 256 - oder 0 oder 255?
In der farbigen Grafik sehe ich da nichts davon. Soll die Anordnung auch so sein wie in der Grafik? Willst Du die Grafik mit einem Programm erzeugen?
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.685 Beiträge
 
Delphi 11 Alexandria
 
#15

AW: 256 Farben

  Alt 11. Jan 2022, 14:50
Mit den HEX-Werte habe ich gesehen. Heist es jetzt alle 256 HEX wert als Konstante ablegen oder gibt es bei den Werte einen festes System?
Das "feste System" bist Du

In Delphi würde man es eventuell so machen:

Delphi-Quellcode:
const
  Farben : array [0..255] of TColor = (
    $EEEEEE,
    $0D0D0D,
    // usw usw usw usw bis du insgesamt alles hast was du brauchst
    );
Dann kannst du über dieses Array bequem wählen.

Delphi-Quellcode:
var
  Farbe : TColor;
begin
  Farbe := Farben[123];
Gruß vom KodeZwerg

Geändert von KodeZwerg (11. Jan 2022 um 15:08 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.142 Beiträge
 
Delphi 12 Athens
 
#16

AW: 256 Farben

  Alt 11. Jan 2022, 15:13
Und da es hier ein paar Muster in den Zahlenfolgen gibt, kann man mit einer Hand voll Schleifen auch die 256 Farbwerte füllen/generieren lassen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.429 Beiträge
 
Delphi 10.4 Sydney
 
#17

AW: 256 Farben

  Alt 12. Jan 2022, 10:37
Die Grafik "Farbtabelle" hat übriegens 276 Einträge, wenn ich mich mal nicht verzählt hab ...
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#18

AW: 256 Farben

  Alt 12. Jan 2022, 10:48
Die Grafik "Farbtabelle" hat übriegens 276 Einträge, wenn ich mich mal nicht verzählt hab ...
Sehr aufmerksam

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.429 Beiträge
 
Delphi 10.4 Sydney
 
#19

AW: 256 Farben

  Alt 12. Jan 2022, 15:27
Mal so zur Entspannung:
Delphi-Quellcode:
unit Main;

interface

uses
  Vcl.Graphics, Vcl.GraphUtil, Vcl.Forms, System.Classes, Vcl.Controls, Vcl.ExtCtrls;

type
  TForm1 = class(TForm)
    PaintBox1: TPaintBox;
    procedure FormCreate(Sender: TObject);
    procedure PaintBox1Paint(Sender: TObject);
  private
    { Private-Deklarationen }
    FColorArr: array of TColor;
    procedure DrawColorItem(ACanvas: TCanvas; x, y: Integer; AColor: TColor);
    procedure DrawColorTabelle(ACanvas: TCanvas; x0, y0: Integer);
    procedure InitColorArr;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  InitColorArr;
end;

procedure TForm1.DrawColorItem(ACanvas: TCanvas; x, y: Integer; AColor: TColor);
const
  {Größe des Quadrat}
  Cdx1 = 20;
  Cdy1 = 20;
  {relative Position der Schrift}
  Cdx2 = 24;
  Cdy2 = 02;
begin
  {Umrandung}
  ACanvas.Pen.Style := psSolid;
  ACanvas.Pen.Mode := pmCopy;
  ACanvas.Pen.Color := clBlack;
  ACanvas.Pen.Width := 1;
  {Füllung}
  ACanvas.Brush.Style := bsSolid;
  ACanvas.Brush.Color := AColor;
  {Quadrat}
  ACanvas.Rectangle(x, y, x + Cdx1, y + Cdy1);

  {Hintergrund transparent}
  ACanvas.Brush.Style := bsClear;
  {Schrift}
  ACanvas.Font.Color := clBlack;
  ACanvas.Font.Size := 9;
  ACanvas.Font.Name := 'Courier New';
  ACanvas.TextOut(x + Cdx2, y + Cdy2, Copy(ColorToWebColorStr(ColorToRGB(AColor)), 2));
end;

procedure TForm1.DrawColorTabelle(ACanvas: TCanvas; x0, y0: Integer);
const
  {Breite der Spalten und Höhe der Zeilen}
  Cdx = 80;
  Cdy = 24;
var
  x, y, n: Integer;
begin
  n := 0;
  for x := 0 to 7 do
  begin
    if (x = 0) or (x = 7) then
    begin
      for y := 3 to 32 do
      begin
        DrawColorItem(PaintBox1.Canvas, x0 + x * Cdx, y0 + y * Cdy, FColorArr[n]);
        Inc(n);
      end;
    end
    else
    begin
      for y := 0 to 35 do
      begin
        DrawColorItem(PaintBox1.Canvas, x0 + x * Cdx, y0 + y * Cdy, FColorArr[n]);
        Inc(n);
      end;
    end;
  end;
end;

procedure TForm1.InitColorArr;
var
  i: Integer;
begin
  SetLength(FColorArr, 276);

  for i := Low(FColorArr) to High(FColorArr) do
    FColorArr[i] := TColor(Random(256*256*256));
end;

procedure TForm1.PaintBox1Paint(Sender: TObject);
begin
  DrawColorTabelle(PaintBox1.Canvas, 30, 10);
end;

end.

Geändert von Blup (12. Jan 2022 um 15:37 Uhr)
  Mit Zitat antworten Zitat
freimatz

Registriert seit: 20. Mai 2010
1.380 Beiträge
 
Delphi 11 Alexandria
 
#20

AW: 256 Farben

  Alt 13. Jan 2022, 12:02
Du sollst doch nicht seine Hausaufgaben lösen.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:05 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz