Share via

unit for coordinates of points in wrapPolygon

Regina Henschel 346 Reputation points
2021-05-22T18:51:08.997+00:00

Hi,

the OOXML standard specifies for the wrapPolygon element (§20.4.2.16) the type CT_WrapPath. It is a sequence of one element "start" and at least two elements "lineTo". These have the type CT_Point2D. That has the attributes "x" and "y" with values of type ST_Coordinate. Such can be a ST_CoordinateUnqualified or a ST_UniversalMeasure.

Word does not write units but pure numbers, so uses ST_CoordinateUnqualified. The standard specifies in §20.1.10.19, that this numbers have to be in unit EMU.

But Word does not interpret this values as having unit EMU. From what I see in the file, I guess, that Word uses the numbers unitless, so as if the shape rectangle has a CoordSize "21600 21600".

Is this observation correct? If yes, this needs to be documented.

Kind regards
Regina

Microsoft 365 and Office | Open Specifications
Microsoft 365 and Office | Open Specifications

Technical documents for protocols, computer languages, standards support, and data portability. The goal with Open Specifications is to help developers open new opportunities to interoperate with Windows, SQL, Office, and SharePoint.


Answer accepted by question author

Tom Jebo 2,446 Reputation points Microsoft Employee Moderator
2021-05-25T16:43:17.52+00:00

Hey Regina,

In MS-OI29500, 2.1.1349 it says:

2.1.1349 Part 1 Section 20.4.2.9, lineTo (Wrapping Polygon Line End Position)
For additional notes that apply to this portion of the standard, please see the notes for chOff,
§20.1.7.2(b).
a. The standard states that the x and y attributes are represented in EMUs.
Office interprets the x and y attributes in a fixed coordinate space of 21600x21600.

Did you see this already?

Tom

Was this answer helpful?


1 additional answer

Sort by: Most helpful
  1. Regina Henschel 346 Reputation points
    2021-08-18T22:18:38.92+00:00

    I have seen the note
    "Note that Office treats these differently in some circumstances. See §20.4.2.9(a), lineTo and §20.4.2.14(a), start."
    in [MS-OI29500] - v20210817

    I think, that solves the problem.

    Was this answer helpful?

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.