Bezeichnung
LoadBrush -- lädt einen Pinsel
Übersicht
[id] = LoadBrush(id, filename$[, table])
Beschreibung
Dieser Befehl lädt den durch filename$ angegebenen Pinsel in den Speicher und weist ihm die id zu. Wenn Sie beim Argument id Nil angeben, wird LoadBrush() für den kopierten Pinsel automatisch eine Zahl auswählen und Ihnen übergeben.

Bildformate, die auf allen Plattformen unterstützt werden, sind PNG, JPEG, BMP, IFF ILBM, GIF und Plugins für Bilder. Je nach Plattform, worauf Hollywood ausgeführt wird, können mehr Bildformate unterstützt werden. Zum Beispiel auf den Amigakompatiblen Systemen wird Hollywood in der Lage sein, alle Formate über Bilddatatypes zu öffnen. Unter Windows kann LoadBrush() auch Bildformate laden, die von der Windows-Imaging-Komponente unterstützt werden.

Ab Hollywood 5.0 kann dieser Befehl auch Vektorformate wie SVG laden, wenn Sie ein entsprechendes Plugin installieren. Beachten Sie aber, dass wenn Sie Vektorbilder mit diesen Befehl laden, der Pinsel ein spezieller Vektorpinsel sein wird, der nicht alle Merkmale der normalen Pinsel unterstützt. Sie können jedoch Vektorpinsel mit dem Befehl RasterizeBrush() in Rasterpinsel umwandeln. Siehe Vektorpinsel für weitere Informationen über Vektorpinsel.

Das dritte Argument table ist optional. Es ist eine Tabelle, die weitere Möglichkeiten für den Ladevorgang zur Verfügung stellt. Die folgenden Tags können verwendet werden:

Transparency:
Dieser Tag kann benutzt werden, um eine Farbe in RGB-Notation anzugeben, die im Pinsel transparent erscheinen soll.

LoadAlpha:
Setzen Sie diesen Tag auf True, wenn der Alpha-Kanal des Bildes auch geladen werden soll. Bitte beachten Sie, dass nicht alle Bilder einen Alpha-Kanal haben und dass nicht alle Bildformate in der Lage sind, Alphakanaldaten zu speichern. Es wird vorgeschlagen, dass Sie das PNG-Format verwenden, wenn Sie Alphakanaldaten benötigen. Dieser Tag ist standardmäßig False. (4.5)

X, Y, Width, Height:
Diese Tags können verwendet werden, um nur einen Teil des Bildes in den Pinsel zu laden. Dies ist nützlich, wenn Sie ein großes Bild mit vielen verschiedenen kleinen Bildern haben und nun die kleinen Bilder in einzelne Pinsel laden wollen. Somit können Sie ein Rechteck innerhalb des Bildes angeben, aus dem Hollywood die Grafikdaten für den Pinsel nimmt.

Hardware:
Wenn Sie diesen Tag auf True setzen, wird Hollywood diesen Pinsel vollständig im Videospeicher für Hardwarezeichnen erstellen und in Verbindung mit einem Hardwaredoppelpuffer das Zeichnen beschleunigt. Hardware-Pinsel unterliegen verschiedenen Einschränkungen. Siehe Hardware-Pinsel für Details. (V5.0)

ScaleWidth, ScaleHeight:
Diese Tags können verwendet werden, um eine skalierte Version des Bildes zu laden. Wenn der Bildtreiber skaliertes Laden unterstützt, kann das die Geschwindigkeit erheblich steigern, wenn Sie zum Beispiel nur eine Version in Thumbnailgröße eines großen Bildes laden möchten. Wenn der Bildtreiber skaliertes Laden nicht unterstützt, wird zuerst das volle Bild geladen, bevor es skaliert wird. Dies ist nicht wesentlich schneller als das Bild nach dem Laden von Hand zu skalieren. Sie können die Größe entweder als direkter Wert übergeben oder Sie benutzen einen Prozentsatz als Zeichenfolge (z.B. Scalewidth = "200%"). (V5.3)

SmoothScale:
Wenn ScaleWidth oder ScaleHeight eingestellt ist, können Sie mit diesem Tag festlegen, ob Hollywood bei der Skalierung Antialiasing verwenden soll oder nicht. Der Standardwert ist False und bedeutet kein Antialiasing. Beachten Sie, dass Skalierung mit Antialiasing viel langsamer ist als die normale Skalierung. (V5.3)

Display:
Wenn Sie hier die ID eines Displays angeben, wird Hollywood einen Displayabhängigen-Hardware-Pinsel für Sie erstellen. Displayabhängige Hardware-Pinsel können nur auf das Display zeichnen, dem sie zugewiesen wurden. Dieser Tag wird nur berücksichtigt, wenn der Tag Hardware auf True gesetzt wurde. Beachten Sie auch, dass Hollywoods eingebautes Display-Adaptermodul keine Displayabhängigen-Hardware-Pinsel unterstützt, aber Plugins können individuelle Display-Adaptermodule installieren, die displayabhängige Hardware-Pinsel unterstützen. Dieser Tag enthält standardmäßig die ID des aktuell aktiven Displays. Siehe Hardware-Pinsel für Details. (V6.0)

Loader:
Mit diesem Tag können Sie einen oder mehrere Formatlademodule angeben, die diesen Pinsel laden sollen. Dies muss als eine Zeichenfolge festgelegt werden, die den/die Namen eines oder mehreren Lademodulen enthält. Standardmäßig wird der mit SetDefaultLoader() eingestellte Lader verwendet. Siehe Lade- und Adaptermodule für Details. (V6.0)

Adapter:
Mit diesem Tag können Sie ein oder mehrere Dateiadapter angeben, die die angegebene Datei öffnen sollen. Dies muss als eine Zeichenfolge festgelegt werden, die den/die Namen eines oder mehreren Adaptermodulen enthält. Standardmäßig wird der mit SetDefaultAdapter() eingestellte Adapter verwendet. Siehe Lade- und Adaptermodule für Details. (V6.0)

LoadTransparency:
Ist dieser Tag auf True gesetzt, wird die monochrome Transparenz des Bildes geladen. Bitte beachten Sie, dass dieser Tag speziell für monochrome Transparenzkanäle ist, das heißt der transparente Stift ist für ein Palettenbasiertes Bild ausgelegt. Wenn Sie den Alpha-Kanal eines Bildes laden möchten, stellen Sie den Tag LoadAlpha auf True. Dieser Tag ist auf False voreingestellt. (V6.0)

LoadPalette:
Wenn dieser Tag auf True gesetzt ist, lädt Hollywood den Pinsel als Palettenpinsel. Dies bedeutet, dass Sie die Palette des Pinsels abrufen und verändern können, was für bestimmte Effekte wie Farbwechsel nützlich ist. Sie können Stifte auch mit dem Tag TransparentPen (siehe unten) oder dem Tag LoadTransparency (siehe oben) transparent machen. Palettenpinsel haben auch den Vorteil, dass sie weniger Speicherplatz benötigen, da 1 Pixel nur 1 Byte Speicher anstelle von 4 Byte für 32-Bit-Bilder benötigt. Dieser Tag ist standardmäßig auf False gesetzt. (V9.0)

TransparentPen:
Wenn der Tag LoadPalette auf True gesetzt wurde (siehe oben), kann mit dem Tag TransparentPen ein Stift definiert werden, der transparent gemacht werden soll. Stifte werden ab 0 gezählt. Alternativ können Sie auch den Tag LoadTransparency auf True setzen, um Hollywood zu zwingen, den transparenten Stift zu verwenden, der in der Bilddatei gespeichert ist (sofern das Bildformat die Speicherung von transparenten Stiften unterstützt). Dieser Tag ist standardmäßig auf #NOPEN gesetzt. (V9.0)

UserTags:
Dieser Tag kann verwendet werden, um zusätzliche Daten anzugeben, die an Lader und Adapter übergeben werden sollen. Wenn Sie diesen Tag verwenden, müssen Sie ihn auf eine Tabelle mit Schlüssel-Wert-Paaren setzen, die die zusätzlichen Daten enthalten, die an Plugins übergeben werden sollen. Siehe Benutzer-Tags für Details. (V10.0)

Bitte beachten Sie, dass sich die Tags Transparency, LoadTransparency und LoadAlpha gegenseitig ausschließen. Ein Pinsel kann nur eine Transparenzeinstellung haben!

Dieser Befehl ist auch als Präprozessor vorhanden: Verwenden Sie @BRUSH um Pinsel vorzuladen!

Siehe auch CopyBrush(), FreeBrush(), IsPicture(), SaveBrush(), LoadBGPic() und MoveBrush().

Eingaben
id
ID des neuen Pinsels oder Nil für die automatische ID-Zuweisung
filename$
das Bild, welches Sie laden möchten
table
optional: optionales Argument für weiterer Optionen (siehe oben) (V2.0)
Rückgabewerte
id
optional: Identifikator des Pinsels; Wird nur zurückgegeben werden, wenn Sie Nil als Argument 1 angegeben haben (siehe oben)
Beispiel
LoadBrush(2, "MyBrush.png", {Transparency = #RED})
Dies lädt "MyBrush.png" als Pinsel 2 und die Farbe Rot ist transparent.

Navigation zeigen