Herd Software Entwicklung
DaVinci Grafikbibliothek
DaVinci Dokumentation
typedef struct {
// Von der Applikation bereitgestellte Eingabewerte
DWORD dwStructSize;
LPARAM lParam;
IPCALLBACKPROC fnCallbackProc;
DWORD dwFlags;
HMMIO hmmio;
UINT uPageNumber;
LPSTR lpszFileName;
DWORD dwFileType;
LPSTR lpszFltFileName;
int iDxfRotAngle;
int iDxfScale;
HWND hwOwner;
POINT ptMetaDIBResolution;
// Ausgabewerte von Import-Funktionen, Eingabewerte von Export-Funktionen
HDIB hDIB;
HMETAFILE hMetaFile;
#ifdef __WIN32__
HENHMETAFILE hEnhMetaFile;
#endif
METARESOLUTION MetaResolution;
// Zusatzinformationen
DWORD dwDxfFlags;
DWORD dwDIBFlags;
DWORD dwTransparentColorIndex;
BYTE abReserved[52];
} DAVPARAMS, FAR *LPDAVPARAMS, NEAR *NPDAVPARAMS;
Die DAVPARAMS-Struktur hat folgende Felder:
| Feld | Typ | Beschreibung |
| dwStructSize | DWORD | Größe der Struktur DAVPARAMS in Bytes. Die Anwendung sollte die Größe dieser Struktur immer mit sizeof(DAVPARAMS) setzen, bevor sie eine DaVinci-Funktion aufruft, |
| lParam | LPARAM | anwendungsdefinierter 32-Bit-Wert zur Verwendung im Callback fnCallBackProc |
| fnCallBackProc | IPCALLBACKPROC | anwendungsdefinierte Callbackfunktion, die von DaVinci ab und zu während des Import/Exports aufgerufen wird und Benutzereingaben verarbeiten oder einen Fortschrittsbalken pflegen kann, |
| dwFlags | DWORD | IPF_xxxx Schalterwerte mit Logischem oder kombiniert, |
| hmmio | HMMIO | Handle einer mit dem Microsoft Windows Multimedia File API (MMSYSTEM) eröffneten Datei, |
| uPageNumber | int |
Seitennummer (1...Seitenanzahl) beim Import einer Multi-Page-TIFF-Datei. Falls uPageNumber 0 ist und die zu importierende TIFF-Datei mehrere Seiten enthält, fragt DaVinci den Anwender im Dialog welche Seite zu importieren ist. Die Anwendung kann die Anzahl der Seiten in einer TIFF-Datei mit der Funktion ipTifPageCount erfragen.Die Standard-Version importiert immer die erste Seite. |
| lpszFileName | LPSTR | Dateiname einer zu importierenden Datei, |
| dwFileType | DWORD | IPT_xxxx Dateityp, meist IPT_SELECT, |
| lpszFltFileName | LPSTR | Dateiname eines .FLT Importfilters wenn dwFileType = IPT_FLT. |
| iDxfRotAngle | int | Drehwinkel beim Import von DXF-Dateien, |
| iDxfScale | int | Skalierungsfaktor beim Import von DXF-Dateien, |
| hwOwner | HWND | Fensterhandle der aufrufenden Anwendung zur Zuordnung des Dateidialogs und des automatisch dargestellten Fortschrittsbalkens, |
| ptMetaDIBResolution | POINT | Größenangabe die beim Konvertieren von MetaFile-Daten in Bitmap-Daten benutzt wird um die Anzahl der Pixel der zu erstellenden Bitmap festzulegen. Die Angabe erfolgt in Pixel / Inch, |
| hDIB | HDIB | Handle der zu exportierenden DIB bzw. Handle der importierten DIB, |
| hMetaFile | HMETAFILE | Handle des zu exportierenden MetaFiles bzw. Handle des importierten MetaFiles, |
| hEnhMetaFile | HENMETAFILE | nur 32-Bit Version: Handle des zu exportierenden Enhanced MetaFiles bzw. Handle des importierten Enhanced MetaFiles, |
| MetaResolution | METARESOLUTION | Struktur mit metrischen Größenangaben als Zusatzangaben zu hMetaFile, |
| dwDxfFlags | DWORD | zusätzliche IPDXF_xxxx Flags für den DXF-Import, |
| dwDIBFlags | DWORD | zusätzliche IPDIBF_xxxx - Flags geben den typ der zu erstellenden DIB beim Import von Bitmap-Daten an (32-Bit, CMYK, RGBA etc.) |
| dwTransparentColorIndex | DWORD | Gibt bei GIF und PNG-Dateien den Index der transparenten Farbe in der Farbtabelle an. 0 bedeutet: Keine Transparenz. Ansonsten wird das Bit 31 gesetzt und die unteren 8 Bit geben die Nummer des Farbpaletteneintrags an. Beachten Sie, daß das PNG-Format Transparenz sowohl als RGBA-Transparenz als auch als indizierte Transparenz wie beim GIF-Format ermöglicht. |
| abReserved | BYTE [52] | 52 Bytes reserviert für zukünftige Erweiterungen |
Die Funktionen ipImportInd und ipExportInderlauben die Angabe einer DAVPARAMS-Struktur als einfache Übergabeparameter zur Steuerung des Import/Exportvorgangs. Nur bei diesen Funktionen kann die Anwendung selbst einen Zeiger auf eine DAVPARAMS-Struktur vorgeben.
Andere DaVinci – Funktionen erfordern die Zuordnung eines Zeigers auf eine DAVPARAMS-Struktur mit der Funktion ipDavParamsAlloc, um Versionssicherheit mit zukünftigen DaVinci-Updates zu gewährleisten.
Von der Anwendung nicht benötigte Strukturelemente sollten mit 0 initialisiert werden. Das Feld dwStructSize ist grundsätzlich immer auszufüllen.
DAVPARAMS par; memset(&par, 0, sizeof(par)); par.dwStructSize = sizeof(par);
var par : DAVPARAMS; begin FillChar(par, sizeof(par), 0); par.dwStructSize := sizeof(par);