Directory Contents Search >>


DaVinci 4: Struktur DAVPARAMS

Die Struktur DAVPARAMS wird zum Austausch von Daten zwischen dem Anwendungsprogramm und DaVinci während des Imports oder Exports von Grafiken verwendet.

typedef struct {

// Von der Applikation bereitgestellte Eingabewerte

DWORD

dwStructSize;

LPARAM

lParam;

IPCALLBACKPROC

fnCallbackProc;

DWORD

dwFlags;

IStream *

stream;

UINT

uPageNumber;

LPTSTR

lpszFileName;

DWORD

dwFileType;

LPTSTR

lpszFltFileName;

int

iDxfRotAngle;

int

iDxfScale;

HWND

hwOwner;

POINT

ptMetaDIBResolution;

// Ausgabewerte von Import-Funktionen, Eingabewerte von Export-Funktionen

HDIB

hDIB;

HMETAFILE

hMetaFile;

HENHMETAFILE

hEnhMetaFile;

METARESOLUTION

MetaResolution;

// Zusatzinformationen

DWORD

dwDxfFlags;

DWORD

dwDIBFlags;

DWORD

dwTransparentColorIndex;

// Zusätzliche Informationen zur Datei

LPTSTR

lpszImageDescription;

LPTSTR

lpszImageName;

LPTSTR

lpszImageArtist;

DXFRESOLUTION

dxfResolution;

IPMESSAGEPROC

fnMessageProc;

// Reserviert

BYTE

abReserved[12];

} 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 Ganzzahl-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,

stream

IStream *

Zeiger auf ein Objekt mit Istream Interface über das die Datei Ein/Ausgaben erfolgen sollen.

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

LPTSTR

Dateiname einer zu importierenden Datei,

dwFileType

DWORD

IPT_xxxx Dateityp, meist IPT_SELECT,

lpszFltFileName

LPTSTR

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

HENHMETAFILE

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, dass das PNG-Format Transparenz sowohl als RGBA-Transparenz als auch als indizierte Transparenz wie beim GIF-Format ermöglicht.

lpszImageDescription

LPTSTR

Klartext-Bildbeschreibung für den Endbenutzer. Entspricht bei TIFF-Dateien dem Tag 269. Um dieses Feld beim Aufruf von ipImportInd mit dem Dateiinhalt zu füllen, muss die Anwendung dieses Feld mit einem Speicherbereicht von 30000 Bytes vorbelegen.

lpszImageName

LPTSTR

Klartext-Bildname für den Endbenutzer. Entspricht bei TIFF-Dateien dem Tag 270. Um dieses Feld beim Aufruf von ipImportInd mit dem Dateiinhalt zu füllen, muss die Anwendung dieses Feld mit einem Speicherbereicht von 30000 Bytes vorbelegen.

lpszImageArtist

LPTSTR

Klartext-Name des Künstlers für den Endbenutzer. Entspricht bei TIFF-Dateien dem Tag 315. Um dieses Feld beim Aufruf von ipImportInd mit dem Dateiinhalt zu füllen, muss die Anwendung dieses Feld mit einem Speicherbereicht von 30000 Bytes vorbelegen.

dxfResolution

DXFRESOLUTION

Enthält nach dem Import von DXF-Dateien Informationen zur Koordinatentransformation, die eine Umrechnung aus den Metafile-Koordinaten in das Weltkoordinatensystem der DXF-Datei erlauben.

fnMessageProc

IPMESSAGEPROC

Zeiger auf eine von der Anwendung bereitgestellte Callback-Funktion zur Anzeige von Warnungsnachrichten und Fehlermeldungen.

abReserved

BYTE [12]

12 Bytes reserviert für zukünftige Erweiterungen

Anmerkungen

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.

Beispiele

C-Beispiel

DAVPARAMS

par;

memset(&par, 0, sizeof(par));

par.dwStructSize = sizeof(par);

Pascal-Beispiel

var par

: DAVPARAMS;

begin

FillChar(par, sizeof(par), 0);

par.dwStructSize := sizeof(par);

-


Valid HTML 4.01!