Thema: Delphi Kreuzstich - Software

Einzelnen Beitrag anzeigen

OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#12

Re: Kreuzstich - Software

  Alt 19. Dez 2007, 17:02
Vermutlich willst du, ungefähr:
  1. Verschiedene Bildformate als Quelle verwenden. z.B. GDI+ oder Graphics32 eignen sich zum Laden.
  2. Die Auflösung verringern. Ich weiß nicht, was gängige Größen für Stickmuster sind, aber das kriegst du selbst sicherlich raus. Graphics32 und GDI+ können mit hoher Qualität die Größe verringern.
  3. Die Farben reduzieren. Einerseits sind vermutlich eine begrenzte Anzahl von Farben vorgegeben, die du vielleicht als Liste vorhalten könntest. Andererseits musst du einen Weg finden, die Farben zu reduzieren. Ich kenne auf Anhieb keinen Algorithmus, aber es gibt den einen oder anderen, der dafür sorgt, dass nahe beieinander liegende Farben zusammen auf eine Farbe abgebildet werden, und weiter entfernte Farben auf eine andere. Da hilft es vielleicht schon, etwas an Kontrast oder Sättigung zu drehen. Solche Dinge kannst du auch prima im Vorfeld in einer Bildbearbeitung ausprobieren. Wenn diese Farben dann auch noch aus der vorgegebenen Liste kommen, hast du ja schon den Großteil der Arbeit hinter dir. Interessant in diesem Zusammenhang könnte auch das Konzept einer Farbpalette sein (Suchen der Farbe aus der Palette, die einer gegebenen Farbe am nächsten liegt). Eventuell kann hier der Benutzer auch eingreifen, indem er die zu verwendenden Farben vorgibt oder direkt im Bild anklickt.
  4. Das Bild zeichnen - jeder Pixel wird nun als Kreuz gezeichnet. Ich weiß nicht, inwieweit hier vielleicht auch Hilfslinien oder Raster gängig sind. Dazu müsstest du nur das Bild Pixel für Pixel durchgehen und jeweils das Kreuz zeichnen. Du kannst ein Bild auch (mehr oder weniger) direkt in den Drucker zeichnen.
Das mal als meine Gedanken dazu.

Blöder roter Kasten. Ich guck mir das Bild dann auch gleich an
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat