| Herd Software Entwicklung
|=
DaVinci Grafikbibliothek
|==
DaVinci Dokumentation Home Search Order


DaVinci Funktion ipImportInd: Importieren von Grafiken

Die ipImportInd-Funktion importiert eine Grafik aus den unterstützen DaVinci Grafikformaten in ein Windows DIB, MetaFile oder Enhanced MetaFile Handle.

IPERROR FAR PASCAL 	ipImportInd(
LPDAVPARAMS lpDavParams);

lpDavParams LPDAVPARAMS Zeiger auf eine DAVPARAMS-Struktur mit Angaben zu der zu importierenden Datei.

Rückgabewert

Der Rückgabewert ist 0, wenn kein Fehler auftrat, oder er enthält einen der IPE_xxxx Fehlercodes.

Anmerkungen

Die Anwendung benutzt diese Funktion, indem Sie die DAVPARAMS-Struktur ausfüllt, ipImportInd aufruft und die Ergebnisdaten aus der DAVPARAMS-Struktur entnimmt.

Die Anwendung muß nur die tatsächlich benötigten Felder der DAVPARAMS-Struktur ausfüllen, die anderen Felder werden auf 0 gesetzt.

Für den Import unverzichtbar sind:

Nach erfolgreichem Ausführen der Funktion ipImportInd ist der Rückgabewert 0 und die Anwendung kann die die Importierten Daten aus den Felder hDIB, hMetaFile und hEnhMetaFile der DAVPARAMS-Struktur entnehmen.

Die Anwendung ist dafür verantwortlich, nach einem erfolgreichen Importvorgang die in der DAVPARAMS-Struktur zurückgelieferten Handles durch Aufruf der entsprechenden Funktion GlobalFree, DeleteMetaFile und DeleteEnhMetaFile freizugeben.

Beispiel: Import einer Datei mit Anfrage des Dateinamens vom Anwender.
/* FrameCMFileOpen
 *
 * Use DaVinci to import a Graphics file.
 */
void FrameCMFileOpen(HWND hWnd)
{
  char                  FileName[256];
  DAVPARAMS             DavParams;

  FileName[0]=0;

  memset(&DavParams, 0, sizeof(DavParams));
  DavParams.dwStructSize  = sizeof(DAVPARAMS);
  DavParams.dwFlags       = IPF_META | IPF_DIB | IPF_ENH | IPF_MSGBOX | IPF_FILEDIALOG; // Dateiname erfragen, Fehler selbst melden, alle Datenformate
  DavParams.lpszFileName  = FileName;                       // Dateiname vom User erfragen, aber in Variable zurückliefern
  DavParams.dwFileType    = IPT_SELECT;                     // Dateiart vom User wählen lassen
  if (IPE_OK == ipImportInd(&DavParams))                    // Import-Vorgang ausführen
  {
    /* Import was successfull... Display new Data */
    if (DavParams.hDIB)         SendMessage(hwClient, IMM_SETDIB        , (WPARAM) DavParams.hDIB     , 0);
    if (DavParams.hMetaFile)    SendMessage(hwClient, IMM_SETMETAFILE   , (WPARAM) DavParams.hMetaFile, (LPARAM)(LPSTR)&DavParams.MetaResolution);
#	ifdef __WIN32__
    if (DavParams.hEnhMetaFile) SendMessage(hwClient, IMM_SETENHMETAFILE, (WPARAM) DavParams.hEnhMetaFile, 0L);
#	endif

    /* Display new Filename in title bar */
    SetWindowText(hWnd, FileName);
  }
} // FrameCMFileOpen

Þ ipImportExt

Þ ipExportInd

Þ LoadDIBFromFile