CreateEnhMetaFileA-Funktion (wingdi.h)
Die CreateEnhMetaFile--Funktion erstellt einen Gerätekontext für eine Metadatei im erweiterten Format. Dieser Gerätekontext kann zum Speichern eines geräteunabhängigen Bilds verwendet werden.
Syntax
HDC CreateEnhMetaFileA(
[in] HDC hdc,
[in] LPCSTR lpFilename,
[in] const RECT *lprc,
[in] LPCSTR lpDesc
);
Parameter
[in] hdc
Ein Handle zu einem Referenzgerät für die erweiterte Metadatei. Dieser Parameter kann NULL-sein; weitere Informationen finden Sie in den Hinweisen.
[in] lpFilename
Ein Zeiger auf den Dateinamen für die zu erstellende erweiterte Metadatei. Wenn dieser Parameter NULL-ist, ist die erweiterte Metadatei speicherbasiert, und der Inhalt geht verloren, wenn er mithilfe der DeleteEnhMetaFile--Funktion gelöscht wird.
[in] lprc
Ein Zeiger auf eine RECT- Struktur, die die Abmessungen (in 01-Millimeter-Einheiten) des Bilds angibt, die in der erweiterten Metadatei gespeichert werden sollen.
[in] lpDesc
Ein Zeiger auf eine Zeichenfolge, die den Namen der Anwendung angibt, die das Bild erstellt hat, sowie den Titel des Bilds. Dieser Parameter kann NULL-sein; weitere Informationen finden Sie in den Hinweisen.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Handle für den Gerätekontext für die erweiterte Metadatei.
Wenn die Funktion fehlschlägt, ist der Rückgabewert NULL-.
Bemerkungen
Wenn Textargumente Unicode-Zeichen verwenden müssen, verwenden Sie die CreateEnhMetaFile- als Breitzeichenfunktion. Wenn Textargumente Zeichen aus dem Windows-Zeichensatz verwenden müssen, verwenden Sie diese Funktion als ANSI-Funktion.
Das System verwendet das vom hdcRef Parameter identifizierte Referenzgerät, um die Auflösung und Einheiten des Geräts aufzuzeichnen, auf dem ein Bild ursprünglich erschien. Wenn der parameter hdcRefNULList, wird das aktuelle Anzeigegerät zur Referenz verwendet.
Die linken und oberen Member der RECT- Struktur, auf die der lpRect-Parameter verweist, muss kleiner sein als die rechten bzw. unteren Member. Punkte entlang der Ränder des Rechtecks sind im Bild enthalten. Wenn lpRect-NULL-ist, berechnet die Grafikgeräteschnittstelle (GDI) die Abmessungen des kleinsten Rechtecks, das das von der Anwendung gezeichnete Bild umgibt. Der parameter lpRect sollte nach Möglichkeit bereitgestellt werden.
Die Zeichenfolge, auf die der lpDescription Parameter verweist, muss ein NULL-Zeichen zwischen dem Anwendungsnamen und dem Bildnamen enthalten und mit zwei NULL-Zeichen enden, z. B. "XYZ Graphics Editor\0Bald Eagle\0\0", wobei \0 das Nullzeichen darstellt. Wenn lpDescription-NULL-ist, gibt es keinen entsprechenden Eintrag im Enhanced-Metafile-Header.
Anwendungen verwenden den von dieser Funktion erstellten Gerätekontext, um ein Grafikbild in einer erweiterten Metadatei zu speichern. Der Handle zur Identifizierung dieses Gerätekontexts kann an eine beliebige GDI-Funktion übergeben werden.
Nachdem eine Anwendung ein Bild in einer erweiterten Metadatei gespeichert hat, kann es das Bild auf jedem Ausgabegerät anzeigen, indem die PlayEnhMetaFile--Funktion aufgerufen wird. Beim Anzeigen des Bilds verwendet das System das Rechteck, auf das durch den lpRect Parameter und die Auflösungsdaten des Referenzgeräts verweist, um das Bild zu positionieren und zu skalieren.
Der von dieser Funktion zurückgegebene Gerätekontext enthält dieselben Standardattribute, die jedem neuen Gerätekontext zugeordnet sind.
Anwendungen müssen die GetWinMetaFileBits--Funktion verwenden, um eine erweiterte Metadatei in das ältere Windows-Metadateiformat zu konvertieren.
Der Dateiname für die erweiterte Metadatei sollte die .emf Erweiterung verwenden.
Beispiele
Ein Beispiel finden Sie unter Erstellen einer erweiterten Metadatei.
Anmerkung
Der wingdi.h-Header definiert CreateEnhMetaFile als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 2000 Professional [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform- | Fenster |
Header- | wingdi.h (enthalten Windows.h) |
Library | Gdi32.lib |
DLL- | Gdi32.dll |
Siehe auch
übersicht über Metadateien