3.6.5 Bitmaps ausgeben

Bitmaps kann man nicht einfach so in ein Programm laden, sie müssen erst konvertiert werden. Das Konvertieren wird z.B. beim Compilieren mit den Icons automatisch gemacht, wenn Sie aber eine andere Grafik, wie z.B. eine selbst gestaltete Tastatur auf dem Bildschirm anzeigen wollen, müssen Sie diese erst mit dem beim SDK mitgelieferten Tool „BmpTxt.exe“ in eine Text-Datei konvertieren. Hierbei müssen Sie darauf achten, dass auch diese Bitmaps nur schwarz-weiß (das kann man in Paint unter Bild | Attribute | Farben einstellen) sein dürfen, sonst funktioniert das ganze nicht. Natürlich darf das Bitmap auch nicht größer als 160 x 160 Pixel sein, da man es sonst ja nicht mehr komplett anzeigen kann. Wenn Sie nun Ihr Bitmap fertig haben, öffnen Sie BmpTxt.exe und geben Ihre Datei als Input BmpFile an. Output TxtFile wird automatisch ergänzt, also können Sie einfach auf Conv Start klicken und es entsteht eine neue Textdatei IhrBitmap.txt. Diese öffnen Sie, kopieren den Inhalt einfach in Ihren Quelltext und füllen damit eine byte-Variable, z.B. so:

static byte far MeinIcon [] =
{
        GSIZE(45, 28),
        0x00, 0x08, 0x01, 0x00, 0x00, 0x07,
        0x00, 0x08, 0x01, 0x00, 0x00, 0x07,
        [...]
        0x00, 0x00, 0x0E, 0x00, 0x00, 0x07,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x07,
};

Nun können Sie ihr Bitmap mit dem Befehl

  LibPutGraph (50, 50, MeinIcon);
an der Position (50|50) auf dem Bildschirm anzeigen. Genau so verfahren Sie auch bei Icons, die Sie anklicken wollen. Sie können dann später noch genau definieren, an welcher Position man Ihr Icon mit dem Touch-Stift getroffen hat, aber das wird an anderer Stelle in diesem Dokument noch genauer beschrieben. Außerdem gibt es bereits viele interne Grafiken im PV, die Sie mit dem Befehl
  LibPutFarData(50, 50, BildNr);
auf dem Bildschirm anzeigen können. Hierbei ersetzen Sie BildNr mit der Nummer des gewählten Bitmaps. Eine Liste aller vorhanden Grafiken mit Nummer und Größe finden Sie hier

Für Ergänzungen wenden Sie sich bitte an: Jürgen Wagner