Monochrome GIF-Bilder laden

(Diese Anleitung ist veraltet, es gibt inzwischen mod.DecodeGIFhir.


Aus Hires Bild 1 (c) Hugh McMenamin Bild 2wird normalerweise Multi.

Um ein solches monochromes GIF-Bild (von Hugh McMenamin, dem Coder von The Write Stuff's Illustrator) ohne Qualitätsverlust in GoDot einzulesen, muß man ein bißchen tricksen, da der GIF-Lader eigentlich nur dafür vorgesehen war, Multicolor- bzw. IFLI-Bilder zu produzieren. Trotzdem haben wir alle Möglichkeiten offengelassen, auch Hires-Ergebnisse zuzulassen!

Der Trick versteckt sich hinter dem Button "X-Skip" im GIF-Lader, steht dieser Wert auf Null, wird aus der Vorlage jedes einzelne Pixel ausgelesen, allerdings nur maximal 160. Also? Wir teilen das Bild in zwei Hälften, verarbeiten beide nacheinander und setzen am Ende alles zusammen!

Für farbige Bilder benutzt man statt der Funktion "Shrink" in ClipWorks das Modul Squeeze2Clip.

Bild 3 Bild 3 Bild 4 Bild 4 Bild 5 Bild 5 Bearbeitung:

Load: GIF
Inst: DecodeGIF
Load
(Select Filename, Doubleclick)
X-Skip: 0
Load GIF
(Screenmode:) Hires
Display

In Bild 3 das Ergebnis (es würde in Multi genauso aussehen). Nun der Trick, 2. Teil:

Inst: ClipWorks
Execute
Hor: 20
Shrink

Das quetscht uns das Bild wieder auf seine normale Ausdehnung zusammen, aber ohne Pixelverlust! Und sieht aus wie in Bild 4. Weil beim Einlesen der zweiten Hälfte das Display zerstört wird, müssen wir dies Zwischenergebnis sichern (wer eine REU hat, führt ein Undo 4Bit aus, wer nicht, speichert es mit svr.4BitGoDot).

Nun die rechte Hälfte.

Inst: DecodeGIF
Load
(Select Filename, Doubleclick)
X-Skip: 0
SetClip: Left 160
Load GIF
Inst: ClipWorks
Col: 20
Hor: 20
Shrink
Accept
Display

Ergibt Bild 5! Jetzt holen wir unser obiges Zwischenergebnis wieder zurück (mit Load/Undo 4Bit oder von Diskette), stellen den Clip auf die linke Hälfte, rendern und freuen uns! Das Bild ist als Hires im Display. In den 4Bit-Speicher (zur Weiterbearbeitung) transportieren wir es zum Schluß mit dem Modul RendrdTo4Bit.

Execute
Col: 0
Hor: 20
Accept
Display
Inst: RendrdTo4Bit
Execute

[ zurück ]


Arndt Dettke
support@godot64.de

Copyright © 1998, A. Dettke, letzte Änderung - 6.4.98