Eine Reihe von Leonardo und DaVinci-Funktionen in der Pro-Version enthalten Optimierungen die zur Anwendung kommen, wenn ein Funktionsaufruf bestimmte Voraussetzungen erfüllt. Die Funktion ist in diesen Fällen mehrfach implementiert. Die Hauptimplementierung stellt die maximale Flexibilität zur Verfügung (z.B. Drehen in 1/1000°-Schritten bei DIBRotate) während unter bestimmten Voraussetzungen eine geschwindigkeitsoptimierte Variante der Funktion zur Anwendung kommt (z.B. Drehung um 90° bei DIBRotate). Sie müssen daher in Ihrem Anwendungsprogramm keine andere Routine aufrufen um in den Genuß der optimierten Programmfassung zu kommen. Da in der Pro-Version viele Funktionen zwei, drei oder gar viermal für verschiedene Sonderfälle implementiert wurden, ist die Pro-Version der DLL wesentlich umfangreicher als die Standard-Version.
Für welche Bedingungen jeweils optimierter Programmcode zur Verfügung steht, können Sie der Dokumentation zur jeweiligen Routine entnehmen. Die optimierten Routinen/Parameterkombinationen sind, wenn sie zur Anwendung kommen, um ein Vielfaches schneller als die langsamere Standardimplementierung.
• |
DIBRotate drehen um 90,-90,180° |
• |
ScaleToGray verkleinern monochromer DIBs |
• |
StretchDIB vergrößern/verkleinern mit biBitCount >=8 |
• |
StretchDIB2DIBBlt vergrößern/verkleinern mit biBitCount >=8 |
• |
ConvertDIB beim Konvertieren in 32-Bit DIB |