Editing an Enhanced Metafile
To edit a picture stored in an enhanced metafile, an application must perform the tasks described in the following procedure.
To edit a picture stored in an enhanced metafile
- Use hit-testing to capture the cursor coordinates and retrieve the position of the object (line, arc, rectangle, ellipse, polygon, or irregular shape) that the user wants to alter.
- Convert these coordinates to logical (or world) units.
- Call the EnumEnhMetaFile function and examine each metafile record.
- Determine whether a given record corresponds to a GDI drawing function.
- If it does, determine whether the coordinates stored in the record correspond to the line, arc, ellipse, or other graphics element that intersects the coordinates specified by the user.
- Upon finding the record that corresponds to the output that the user wants to alter, erase the object on the screen that corresponds to the original record.
- Delete the corresponding record from the metafile, saving a pointer to its location.
- Permit the user to redraw or replace the object.
- Convert the GDI functions used to draw the new object into one or more enhanced-metafile records.
- Store these records in the enhanced metafile.