JPEG- und PNG-Erweiterungen für bestimmte Bitmapfunktionen und -strukturen
In bestimmten Versionen von Microsoft Windows ermöglichen die Funktionen StretchDIBits und SetDIBitsToDevice die Übergeben von JPEG- und PNG-Bildern als Quellbild an Druckergeräte. Diese Erweiterung ist nicht als Mittel zur Bereitstellung der allgemeinen JPEG- und PNG-Dekomprimierung für Anwendungen gedacht, sondern soll Es Anwendungen ermöglichen, JPEG- und PNG-komprimierte Bilder direkt an Drucker mit Hardwareunterstützung für JPEG- und PNG-Bilder zu senden.
Die Strukturen BITMAPINFOHEADER, BITMAPV4HEADER und BITMAPV5HEADER wurden erweitert, um die Angabe von biCompression-Werten zu ermöglichen, die angeben, dass es sich bei den Bitmapdaten um ein JPEG- oder PNG-Bild handelt. Diese Komprimierungswerte sind nur für SetDIBitsToDevice und StretchDIBits gültig, wenn der hdc-Parameter ein Druckergerät angibt. Um das Metafilespooling des Druckers zu unterstützen, sollte die Anwendung nicht auf den Rückgabewert angewiesen sein, um zu bestimmen, ob das Gerät die JPEG- oder PNG-Datei unterstützt. Die Anwendung muss QUERYESCSUPPORT mit dem entsprechenden Escape-Zeichen aus geben, bevor SetDIBitsToDevice und StretchDIBits aufrufen. Wenn bei der Überprüfung ein Escapefehler auftritt, muss die Anwendung auf ihre eigene JPEG- oder PNG-Unterstützung zurückfallen, um das Bild in eine Bitmap zu dekomprimieren.