Delen via


Verbeterde metabestandbewerkingen

U kunt de ingang gebruiken voor een uitgebreid metabestand om de volgende taken uit te voeren:

  • De afbeelding weergeven die is opgeslagen in een uitgebreid metabestand.
  • Kopieën van een uitgebreid metabestand maken.
  • Bewerk een uitgebreid metabestand.
  • Haal de optionele beschrijving op die is opgeslagen in een uitgebreid metabestand.
  • Haal een kopie van een enhanced-metafile-header op.
  • Haal een binaire versie van een uitgebreid metabestand op.
  • De kleuren in het optionele palet opsommen.

Deze taken worden besproken in de secties in de rest van dit onderwerp.

De afbeelding weergeven die is opgeslagen in een uitgebreid metabestand

U kunt de afbeelding weergeven die is opgeslagen in een uitgebreid metabestand met behulp van de functie PlayEnhMetaFile. Geef de functie een ingang door aan het verbeterde metabestand, zonder dat u zich zorgen hoeft te maken over de indeling van de verbeterde metabestandrecords. Het is echter soms wenselijk om de records in het verbeterde metabestand op te sommen om te zoeken naar een bepaalde GDI-functie en de parameters van de functie op een bepaalde manier te wijzigen. Hiervoor kunt u EnumEnhMetaFile- gebruiken en een callback-functie opgeven, EnhMetaFileProc-, om de verbeterde metabestandrecords te verwerken. Als u de parameters voor een verbeterde metabestandrecord wilt wijzigen, moet u de indeling van de parameters in de record kennen.

Kopieën van een uitgebreid metabestand maken

Sommige toepassingen maken tijdelijke back-upkopieën (of duplicaat) van een bestand voordat de gebruiker het origineel kan wijzigen. Een toepassing kan een back-up maken van een uitgebreid metabestand door de functie CopyEnhMetaFile aan te roepen, een ingang op te geven die het verbeterde metabestand identificeert en een aanwijzer opgeeft aan de naam van het nieuwe bestand.

Roep de setEnhMetaFileBits--functie aan om een op geheugen gebaseerd metabestand met verbeterde indeling te maken.

Een uitgebreid metabestand bewerken

Voor de meeste toepassingen voor tekenen, illustraties en computer-aided design (CAD) is een middel nodig om een afbeelding te bewerken die is opgeslagen in een uitgebreid metabestand. Hoewel het bewerken van een uitgebreid metabestand een complexe taak is, kunt u de functie EnumEnhMetaFile in combinatie met andere functies gebruiken om deze mogelijkheid in uw toepassing te bieden. De EnumEnhMetaFile functie en de bijbehorende callback-functie, EnhMetaFileProc, stelt de toepassing in staat om afzonderlijke records te verwerken in een uitgebreid metabestand.

De optionele beschrijving ophalen die is opgeslagen in een uitgebreid metabestand

In sommige toepassingen wordt de tekstbeschrijving van een uitgebreid metabestand met de bijbehorende bestandsnaam weergegeven in het dialoogvenster Openen. U kunt bepalen of deze tekenreeks bestaat in een uitgebreid metabestand door de header van het metabestand op te halen met de GetEnhMetaFileHeader functie en een van de leden ervan te onderzoeken. Als de tekenreeks bestaat, wordt deze door de toepassing opgehaald door de GetEnhMetaFileDescription functie aan te roepen.

Een binaire versie van een uitgebreid metabestand ophalen

U kunt de inhoud van een metabestand ophalen door de functie GetEnhMetaFileBits aan te roepen; Voordat u de inhoud opgeeft, moet u echter de grootte van het bestand opgeven. Als u de grootte wilt ophalen, kunt u de functie GetEnhMetaFileHeader gebruiken en het juiste lid onderzoeken.

De kleuren in het optionele palet opsommen

Als u consistente kleuren wilt bereiken wanneer een afbeelding wordt weergegeven op verschillende uitvoerapparaten, kunt u de functie CreatePalette aanroepen en een logisch palet opslaan in een uitgebreid metabestand. Een toepassing die de afbeelding weergeeft die is opgeslagen in het verbeterde metabestand, haalt dit palet op en roept de functie RealizePalette aan voordat de afbeelding wordt weergegeven. Als u wilt bepalen of een palet is opgeslagen in een uitgebreid metabestand, haalt u de metafile-header op en onderzoekt u het juiste lid. Als er een palet bestaat, kunt u de GetEnhMetaFilePaletteEntries functie aanroepen om het logische palet op te halen.