Blame NOTES

rpm-build 324937
=== GLOBAL ATTRIBUTES ===
rpm-build 324937
rpm-build 324937
* Height (in tenths of a point) at 0x3C in the first record of the entire file.
rpm-build 324937
* Width (same units) at 0x8 in the record of the first page only.
rpm-build 324937
rpm-build 324937
* Pagemaker doesn't appear to remember which number was entered first. (5.pmd, 5_input_flpped.pmd)
rpm-build 324937
* This stuff doesn't care about portrait vs. landscape. (5.pmd, 5_wide.pmd) 
rpm-build 324937
* Margins don't have an effect either. (2_2_halfinch_margins.pmd)
rpm-build 324937
* For double-sided docs, the bounding box (in shape points, left,top,right,bot) of the left page starts at 0x36
rpm-build 324937
in the global attributes record. The right page follows immediately. For single-sided docs, the bounding box 
rpm-build 324937
is just repeated twice.
rpm-build 324937
rpm-build 324937
Since these are stated with respect to the origin, an easy way to check if the doc is double-sided is to check if
rpm-build 324937
the word at 0x3A (left page right) or 0x3E (right page left) is zero.
rpm-build 324937
rpm-build 324937
=== SHAPE ATTRIBUTES ===
rpm-build 324937
* Origin is the center of the page, or double-sided page combo. Positive y is down.
rpm-build 324937
* Note that the first page is considered a right page, so
rpm-build 324937
  if the doc is double-sided, the origin is the left edge.
rpm-build 324937
* Units are 1/20 of a point (1/1440 of an inch)
rpm-build 324937
* Offset is 0x06 for left position, then goes top, right, bottom. Each are words.
rpm-build 324937
* Offset 0x00 determines type of shape (0x04: rectangle; 0x0c: polygon)
rpm-build 324937
==== POLYGONS ====
rpm-build 324937
* Offset 0x2E is the seqNum of a line set (=record type 0x11)
rpm-build 324937
* Offset 0x38 is 0x3 if the polygon is closed, 0x1 if it is left open. (I think... haven't tested this thoroughly yet)
rpm-build 324937
rpm-build 324937
=== LINE SETS (0x11) ===
rpm-build 324937
* Points are x, y, x, y, ...
rpm-build 324937
* Each value in the above is a word (So 4 bytes total per point)
rpm-build 324937
* Origin and units from "Shape Attributes" above still apply.