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


DaVinci Funktion ipExportInd: Exportieren von Grafiken

Die ipExportInd-Funktion exportiert eine Grafik aus einem Windows DIB, MetaFile oder Enhanced MetaFile Handle in eines der unterstützen DaVinci Grafikformate.

IPERROR FAR PASCAL 	ipExportInd(
LPDAVPARAMS lpDavParams);

lpDavParams LPDAVPARAMS Zeiger auf eine DAVPARAMS-Struktur mit Angaben zu der zu exportierenden Grafik.

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 und ipExportInd aufruft.

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 Export unverzichtbar sind:

Die Anwendung ist selbst dafür verantwortlich, die Handles der exportierten Grafik durch Aufruf der entsprechenden Funktion GlobalFree, DeleteMetaFile und DeleteEnhMetaFile freizugeben.

Beispiel: Export einer Datei mit Anfrage des Dateinamens vom Anwender.
/* FrameCMFileSave
 *
 * Save a graphic file in another format
 */
void static FrameCMFileSave(HWND hWnd)
{
  METARESOLUTION        mr;
  HDIB                  hDIB        = (HDIB)        SendMessage(hwClient, IMM_GETDIB     , 0, 0L);
  HMETAFILE             hMetaFile   = (HMETAFILE)   SendMessage(hwClient, IMM_GETMETAFILE, 0, (LPARAM)(LPSTR)&mr);
# ifdef __WIN32__
  HENHMETAFILE          hEnhMetaFile= (HENHMETAFILE)SendMessage(hwClient, IMM_GETENHMETAFILE, 0, 0);
# endif
  DAVPARAMS             DavParams;

# ifdef __WIN32__
  if (hDIB || hMetaFile || hEnhMetaFile)
# else
  if (hDIB || hMetaFile)
# endif
  {
     memset(&DavParams, 0, sizeof(DavParams));
     DavParams.dwStructSize  = sizeof(DAVPARAMS);
     DavParams.dwFlags       = IPF_DIB | IPF_META | IPF_MSGBOX | IPF_COMPRESS | IPF_FILEDIALOG;  // Dateiname erfragen, Fehler selbst melden, beide Datenformate wenn mögl. komprimieren
     DavParams.lpszFileName  = NULL;                    // Dateiname vom User erfragen
     DavParams.dwFileType    = IPT_SELECT;              // Dateiart vom User wählen lassen
     DavParams.hDIB          = hDIB;							// Metafile-Handle
     DavParams.hMetaFile     = hMetaFile;               // Metafile-Handle
     DavParams.MetaResolution= mr;                      // Metrische Größenangaben
#    ifdef __WIN32__
     DavParams.hEnhMetaFile	 = hEnhMetaFile;					// Enhanced Metafile-Handle
#    endif
     ipExportInd(&DavParams);
  }

} // FrameCMFileSave

Þ ipImportExt

Þ ipInportInd

Þ SaveDIBToFile