Továbbfejlesztett metafájlműveletek
A leíróval továbbfejlesztett metafájlt használhat a következő feladatok végrehajtásához:
- Továbbfejlesztett metafájlban tárolt kép megjelenítése.
- Továbbfejlesztett metafájl másolatainak létrehozása.
- Bővített metafájl szerkesztése.
- Kérje le a bővített metafájlban tárolt opcionális leírást.
- Egy továbbfejlesztett metafájl fejlécének másolatának lekérése.
- Továbbfejlesztett metafájl bináris verziójának lekérése.
- A választható palettán szereplő színek számbavétele.
Ezeket a feladatokat a témakör hátralévő részében található szakaszok ismertetik.
Bővített metafájlban tárolt kép megjelenítése
A továbbfejlesztett metafájlban tárolt képet a PlayEnhMetaFile függvénnyel jelenítheti meg. Adjon át egy leírót a bővített metafájlnak anélkül, hogy a továbbfejlesztett metafájlrekordok formátumával foglalkozik. Néha azonban célszerű számba adni a továbbfejlesztett metafájl rekordjait egy adott GDI-függvény kereséséhez és a függvény paramétereinek valamilyen módon történő módosításához. Ehhez használhatja EnumEnhMetaFile és egy visszahívási függvényt, EnhMetaFileProc, a továbbfejlesztett metafájlrekordok feldolgozásához. A bővített metafájlrekord paramétereinek módosításához ismernie kell a rekordon belüli paraméterek formátumát.
Bővített metafájl másolatainak létrehozása
Egyes alkalmazások ideiglenes biztonsági másolatokat hoznak létre (vagy duplikálnak) egy fájlról, mielőtt lehetővé teszik a felhasználó számára az eredeti módosítást. Az alkalmazások a CopyEnhMetaFile függvény meghívásával, a továbbfejlesztett metafájlt azonosító leíróval és az új fájl nevére mutató mutatóval hozhatnak létre biztonsági másolatot egy továbbfejlesztett metafájlról.
Memóriaalapú bővített formátumú metafájl létrehozásához hívja meg a SetEnhMetaFileBits függvényt.
Bővített metafájl szerkesztése
A legtöbb rajz-, illusztráció- és számítógéppel támogatott tervezőalkalmazáshoz továbbfejlesztett metafájlban tárolt kép szerkesztésére van szükség. Bár a továbbfejlesztett metafájlok szerkesztése összetett feladat, az EnumEnhMetaFile függvényt más függvényekkel kombinálva is használhatja, hogy ezt a képességet biztosítsa az alkalmazásban. Az EnumEnhMetaFile függvény és a hozzá tartozó visszahívási függvény, EnhMetaFileProclehetővé teszi, hogy az alkalmazás egy továbbfejlesztett metafájlban dolgozza fel az egyes rekordokat.
A bővített metafájlban tárolt opcionális leírás lekérése
Egyes alkalmazások egy továbbfejlesztett metafájl szöveges leírását jelenítik meg a megfelelő fájlnévvel a Megnyitás párbeszédpanelen. A GetEnhMetaFileHeader függvénnyel a metafájl fejlécének beolvasásával és az egyik tag vizsgálatával megállapíthatja, hogy létezik-e ez a sztring egy továbbfejlesztett metafájlban. Ha a sztring létezik, az alkalmazás a GetEnhMetaFileDescription függvény meghívásával kéri le.
Bővített metafájl bináris verziójának lekérése
Egy metafájl tartalmát a GetEnhMetaFileBits függvény meghívásával kérdezheti le; A tartalom beolvasása előtt azonban meg kell adnia a fájl méretét. A méret lekéréséhez használhatja a GetEnhMetaFileHeader függvényt, és megvizsgálhatja a megfelelő tagot.
A választható palettán szereplő színek számbavétele
Ha egységes színeket szeretne elérni, amikor egy kép különböző kimeneti eszközökön jelenik meg, meghívhatja a CreatePalette függvényt, és egy bővített metafájlban tárolhat logikai palettát. A továbbfejlesztett metafájlban tárolt képet megjelenítő alkalmazás lekéri ezt a palettát, és meghívja a RealizePalette függvényt a kép megjelenítése előtt. Annak megállapításához, hogy egy paletta továbbfejlesztett metafájlban van-e tárolva, kérje le a metafájl fejlécét, és vizsgálja meg a megfelelő tagot. Ha létezik paletta, meghívhatja a GetEnhMetaFilePaletteEntries függvényt a logikai paletta lekéréséhez.