Prev: What MS library should be use to manipulate Excel spreadsheets programmatically?
Next: c++ win32 GUI PROGRAMMING HELP NEEDED VERY URGENT
From: Chris Shearer Cooper on 19 Mar 2010 09:02 When I am playing back an enhanced metafile using EnumEnhMetaFile(), it appears that the coordinate system functions (GetWindowOrg, GetViewportExt, etc.) all return invalid values. For example, if the metafile says SetMapMode(MM_ISOTROPIC) SetViewportOrg(50, 50) and inside my EnhMetaFileProc (which is simply calling PlayEnhMetaFileRecord() for every ENHMETARECORD it receives) I call GetViewportOrg(), it returns (0,0) instead of (50,50). In fact, GetViewportOrg() always returns (0,0), no matter what mapping mode or window/viewport mapping I set up. I can certainly understand this behavior, during playback of an enhanced metafile you can scale the output, shift it around in its destination DC, all kinds of good stuff. So I'm not surprised that GetViewportOrg() would not be very useful during metafile playback. But what I desperately need, is some documentation (preferably straight from Microsoft) that talks about this. What would be wonderful, is a list of functions that one should not call during metafile playback. BTW, I have seen lists of functions that one should not call on a metafile DC during metafile _creation_, I assume that's going to be a different list. Thanks! Chris |