mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Free Graphics library für Anti-Aliasing


Autor: Maxi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich soll ein LCD-Display mit Anti-Aliasing (z.B. durch 
Subpixel-Rendering) und anderen Schatteneffekten programmieren.
Gibt es hierzu vllt bereits freien oder erschwinglichen Code für die 
Umsetzung? Ich bin bei der Recherche nur auf kommerzielle Produkte 
(1000€+) gestoßen, die aber das Projektbudget sprengen würden.
Wird so etwas evt auch von graphic Controllern direkt übernommen? Das 
Display habe ich noch nicht rausgesucht.

Danke

Die Maxi

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für Textausgaben gibt es FreeType, das kann skalierbare Schriften im 
TrueType- und PostScript-Format verdauen.

Autor: Maxi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

danke, aber es dreht sich hautpsächlich um allgemeine Symbole sowie 
geometrische Formen

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast du bereits eine Graphik Library?

Wenn ja: Was spricht dagegen, da Subpixel Rendering einzubauen?

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Notfalls renderst Du in eine doppelt so große (in jeder Achse) Bitmap 
und berechnest den Mittelwert von je vier Pixeln, den Du dann auf Dein 
Display ausgibst.

Damit erhältst Du Antialiasing, wenn auch kein Subpixel-Rendering.

Autor: Maxi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

zunächst: Nein, ich habe noch keine Graphic Library.
Seither habe ich immer binäre Bitmaps erstellen lassen und dann je 
nachdem ob das derzeitige bit 0 oder 1 war das zugehörige Pixel in der 
entsprechenden Farbe (mit hilfe eines Farbregisters) rausgeschrieben.
Was ich nun bräuchte wäre ja nun entweder eine nicht binäre methode oder 
ich schreib das Bitmap doppelt, leicht versetzt hintereinander pixel für 
pixel raus.

Ich habe noch nicht viel Erfahrung mit LCDs (falls man das aus dem 
Beitrag nicht rauslesen konnte

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Maxi schrieb:
> Hallo,
>
> zunächst: Nein, ich habe noch keine Graphic Library.
> Seither habe ich immer binäre Bitmaps erstellen lassen und dann je
> nachdem ob das derzeitige bit 0 oder 1 war das zugehörige Pixel in der
> entsprechenden Farbe (mit hilfe eines Farbregisters) rausgeschrieben.
> Was ich nun bräuchte wäre ja nun entweder eine nicht binäre methode oder
> ich schreib das Bitmap doppelt, leicht versetzt hintereinander pixel für
> pixel raus.

Das bringt dir nich viel.
Die Methode die Rufus vorschlägt, ist softwaremässig die einfachste 
Variante. Nachteil ist natürlich, dass man 4 mal soviel Speicher 
benötigt.

> Ich habe noch nicht viel Erfahrung mit LCDs (falls man das aus dem
> Beitrag nicht rauslesen konnte

Das hat eher wenig mit LCD an sich zu tun.
Auch mit einfachen Malprogrammen kann man diese Technik benutzen: Ist 
die Größe der Zielbitmap 300*300 Pixel, dann malt man das Bild zunächst 
mit der doppelten Größe, also 600*600 Pixel (oder noch höheren 
Vielfachen) und lässt erst ganz zum Schluss, wenn das Bild fertig ist, 
das Malprogramm von dieser höheren Auflösung auf die Zielauflösung 
runterrechnen (zb durch MIttelwertbildung von jeweils 2*2 Pixel). Man 
erhält dann automatisch ein Anti-Aliasing (und kleiner unvermeidliche 
Fehler beim malen verschwinden auch ganz automatisch).

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.