2.3.11.8 EMR_SCALEWINDOWEXTEX Record
The EMR_SCALEWINDOWEXTEX record specifies the current window in the playback device context by using ratios formed by the specified multiplicands and divisors.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Type |
|||||||||||||||||||||||||||||||
Size |
|||||||||||||||||||||||||||||||
xNum |
|||||||||||||||||||||||||||||||
xDenom |
|||||||||||||||||||||||||||||||
yNum |
|||||||||||||||||||||||||||||||
yDenom |
Type (4 bytes): An unsigned integer that identifies this record type as EMR_SCALEWINDOWEXTEX. This value is 0x00000020.
Size (4 bytes): An unsigned integer that specifies the size of this record in bytes.
xNum (4 bytes): A signed integer that specifies the horizontal multiplicand. MUST NOT be zero.
xDenom (4 bytes): A signed integer that specifies the horizontal divisor. MUST NOT be zero.
yNum (4 bytes): A signed integer that specifies the vertical multiplicand. MUST NOT be zero.
yDenom (4 bytes): A signed integer that specifies the vertical divisor. MUST NOT be zero.
The extent MUST NOT be changed if the current mapping mode (section 2.1.21) is fixed scale. Only MM_ISOTROPIC and MM_ANISOTROPIC are not fixed scale.
The new window extent is computed as follows.
-
xNewWE = (xOldWE * xNum) / xDenom yNewWE = (yOldWE * yNum) / yDenom
See section 2.3.11 for more state record types.