Bezeichnung
SetPaletteMode -- setzt den Palettenzeichnungsmodus (V9.0)
Übersicht
SetPaletteMode(mode)
Beschreibung
Dieser Befehl setzt den Palettenzeichnungsmodus auf den im Argument mode angegebenen. Dieser Modus wird immer dann verwendet, wenn die Ausgabe palettenbasiert ist, z.B. ein Palettenmodus-Display oder ein Palettenpinsel.

Die folgenden Modi werden derzeit unterstützt:

#PALETTEMODE_REMAP:
Alle gezeichneten Grafiken werden der Palette des Ausgabeziels (z.B. Display, Pinsel usw.) neu zugeordnet. Dies ist der Standard-Palettenmodus. Aber seien Sie gewarnt, dass dies sehr langsam werden kann, da Hollywood für jedes einzelne gezeichnete Pixel die nächstgelegene Stiftübereinstimmung finden muss. Um die beste Zeichenleistung im Palettenmodus zu erzielen, sollten Sie stattdessen #PALETTEMODE_PEN verwenden (siehe unten). Die Art und Weise, wie Grafikdaten bei einer Palette des Ausgabeziels neu zugeordnet werden, kann durch den Befehl SetDitherMode() konfiguriert werden. Auf diese Weise können Sie das Dithering aktivieren oder deaktivieren und den zu verwendenden Dithering-Algorithmus angeben. Beachten Sie, dass bei Verwendung von #PALETTEMODE_REMAP einfarbige Zeichenfunktionen wie Box(), Circle() oder TextOut() nicht mit dem Zeichnungsstift über SetDrawPen() gezeichnet werden, sondern mit der RGB-Farbe, die an diese Befehle übergeben wird.

#PALETTEMODE_PEN:
Bei Verwendung von #PALETTEMODE_PEN werden alle Palettengrafiken ohne Pixel-Neuzuordnung auf das Ausgabeziel kopiert. Dies ist sehr schnell, erfordert jedoch, dass die Palette des zu zeichnenden Grafikobjekts und die Palette des Ausgabeziels identisch sind, da das Ergebnis sonst Farbverfälschungen aufweist. Wenn Sie also #PALETTEMODE_PEN verwenden, sollten Sie sicherstellen, dass alle Ihre Grafikobjekte dieselbe Palette verwenden. Wenn #PALETTEMODE_PEN aktiv ist, werden alle einfarbigen Zeichenfunktionen wie Box(), Circle() und TextOut() nicht in der RGB-Farbe zeichnen, die Sie an diese Befehle übergeben haben, sondern alle verwenden den Zeichnungsstift, der mit SetDrawPen() festgelegt wurde.

Gleiches gilt für die Schatten- und Rahmenfarbe: Wenn der Palettenmodus auf #PALETTEMODE_PEN gesetzt ist, verwenden alle Grafikfunktionen, die Schatten und Rahmen unterstützen, nicht die in SetFormStyle(), SetFontStyle() oder im Standard-Zeichen-Tag wie ShadowColor angegebene Farbe. Sondern sie verwenden die Stifte, die mit Befehlen wie SetShadowPen(), SetBorderPen() oder Zeichen-Tags wie ShadowPen und BorderPen angegeben wurden.

Außerdem wird das Antialiasing von Text- und Grafikgrundelemente deaktiviert, wenn #PALETTEMODE_PEN aktiv ist, da Paletten in den meisten Fällen nicht genügend Farben für ein zufriedenstellendes Antialiasing von Kanten haben.

Beachten Sie jedoch, dass RGB-Grafiken auch dann noch neu zugeordnet werden müssen, wenn #PALETTEMODE_PEN aktiv ist, da es offensichtlich unmöglich ist, RGB-Grafiken auf ein Palettenausgabeziel zu zeichnen, ohne die RGB-Farben den Palettenstiften neu zuzuordnen. Daher sollte das Zeichnen von 32-Bit-Echtfarbgrafiken auf Palettenausgabeziele vermieden werden, da dies immer langsam ist, weil für diese Grafiken eine Neuzuordnung vorgenommen werden muss und es keine Möglichkeit gibt, dies zu umgehen.

Der Standardzeichnungsmodus ist #PALETTEMODE_REMAP. Aus Leistungsgründen wird jedoch empfohlen, #PALETTEMODE_PEN zu verwenden. Siehe Palettenmodus-Displays für Details.

Eingaben
mode
gewünschter Palettenzeichnungsmodus (siehe oben)

Navigation zeigen