idml 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (917) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/rake.yml +18 -0
  3. data/.github/workflows/release.yml +27 -0
  4. data/.gitignore +27 -0
  5. data/.rspec +3 -0
  6. data/.rubocop.yml +21 -0
  7. data/.rubocop_todo.yml +113 -0
  8. data/.yardopts +4 -0
  9. data/CLAUDE.md +305 -0
  10. data/Gemfile +17 -0
  11. data/Gemfile.lock +253 -0
  12. data/README.adoc +4 -0
  13. data/Rakefile +22 -0
  14. data/TODO.complete/01-bootstrap.md +52 -0
  15. data/TODO.complete/02-package-layer.md +48 -0
  16. data/TODO.complete/03-parts-registry-and-designmap.md +64 -0
  17. data/TODO.complete/04-spread-and-master-spread.md +57 -0
  18. data/TODO.complete/05-story-and-backing-story.md +56 -0
  19. data/TODO.complete/06-resources.md +53 -0
  20. data/TODO.complete/07-xml-structure.md +32 -0
  21. data/TODO.complete/08-round-trip-suite.md +44 -0
  22. data/TODO.complete/09-validation.md +51 -0
  23. data/TODO.complete/10-composition.md +62 -0
  24. data/TODO.complete/11-package-accessors.md +41 -0
  25. data/TODO.complete/12-document-layer.md +44 -0
  26. data/TODO.complete/13-insert-idml.md +31 -0
  27. data/TODO.complete/14-geometry.md +33 -0
  28. data/TODO.complete/15-cli.md +44 -0
  29. data/TODO.complete/16-cross-version-tolerance.md +40 -0
  30. data/TODO.complete/17-yard-documentation.md +38 -0
  31. data/TODO.complete/18-remove-nokogiri.md +38 -0
  32. data/TODO.complete/19-vendor-fixtures.md +44 -0
  33. data/TODO.complete/20-round-trip-all-fixtures.md +39 -0
  34. data/TODO.complete/21-anti-pattern-forbid-nokogiri.md +31 -0
  35. data/TODO.complete/22-claude-md-no-nokogiri.md +29 -0
  36. data/TODO.complete/23-lutaml-only-no-rexml.md +60 -0
  37. data/TODO.complete/24-anti-pattern-forbid-rexml.md +29 -0
  38. data/TODO.complete/25-claude-md-lutaml-only.md +29 -0
  39. data/TODO.complete/26-rnc-faithful-models.md +66 -0
  40. data/TODO.complete/27-geometry-scale-rotate.md +28 -0
  41. data/TODO.complete/28-designmap-migration.md +33 -0
  42. data/TODO.complete/29-add-page-from-idml.md +35 -0
  43. data/TODO.complete/30-import-xml.md +37 -0
  44. data/TODO.complete/31-export-xml.md +32 -0
  45. data/TODO.complete/33-element-spec-coverage.md +30 -0
  46. data/TODO.pdf/01-font-metrics.md +43 -0
  47. data/TODO.pdf/02-font-resolver.md +42 -0
  48. data/TODO.pdf/03-text-shaper.md +40 -0
  49. data/TODO.pdf/04-line-breaker-justifier.md +51 -0
  50. data/TODO.pdf/05-vertical-layout.md +42 -0
  51. data/TODO.pdf/06-pdf-color-operators.md +25 -0
  52. data/TODO.pdf/07-pdf-path-operators.md +29 -0
  53. data/TODO.pdf/08-pdf-text-operators.md +29 -0
  54. data/TODO.pdf/09-image-embedding.md +34 -0
  55. data/TODO.pdf/10-spread-renderer.md +33 -0
  56. data/TODO.pdf/11-font-embedding.md +38 -0
  57. data/TODO.pdf/12-idml-to-pdf-pipeline.md +41 -0
  58. data/TODO.pdf/13-cjk-text-layout.md +40 -0
  59. data/TODO.pdf/14-page-item-element-models.md +61 -0
  60. data/TODO.pdf/15-wire-spread-children.md +46 -0
  61. data/TODO.pdf/16-typed-model-pipeline.md +48 -0
  62. data/TODO.pdf/17-shape-rendering.md +46 -0
  63. data/TODO.pdf/18-text-rendering.md +48 -0
  64. data/TODO.pdf/19-page-dimensions.md +40 -0
  65. data/TODO.pdf/20-png-image-support.md +43 -0
  66. data/TODO.pdf/21-coordinate-transform.md +41 -0
  67. data/TODO.pdf/22-color-resolution.md +41 -0
  68. data/TODO.pdf/23-fontmetrics-ps-name-fix.md +43 -0
  69. data/TODO.pdf/24-antipattern-coverage.md +35 -0
  70. data/TODO.pdf/25-cli-render.md +38 -0
  71. data/TODO.pdf/26-renderer-registry.md +45 -0
  72. data/TODO.pdf/27-text-engine-integration.md +41 -0
  73. data/TODO.pdf/28-path-geometry-models.md +47 -0
  74. data/TODO.pdf/29-character-style-extraction.md +36 -0
  75. data/TODO.pdf/30-shape-geometry-rendering.md +40 -0
  76. data/TODO.pdf/31-stroke-rendering.md +35 -0
  77. data/TODO.pdf/32-master-spread-rendering.md +36 -0
  78. data/TODO.pdf/33-font-resolution-from-idml.md +38 -0
  79. data/TODO.pdf/34-story-threading.md +32 -0
  80. data/TODO.pdf/35-pdf-metadata.md +34 -0
  81. data/TODO.pdf/36-performance-caching.md +33 -0
  82. data/TODO.pdf/37-round-trip-specs.md +33 -0
  83. data/TODO.pdf/38-pdf-output-validation.md +34 -0
  84. data/TODO.pdf/39-geometry-coordinate-helpers.md +26 -0
  85. data/TODO.pdf/40-font-ps-name-resolution.md +30 -0
  86. data/TODO.pdf/41-graphic-line-rendering.md +20 -0
  87. data/TODO.pdf/42-group-transform-application.md +17 -0
  88. data/TODO.pdf/43-text-frame-insets.md +17 -0
  89. data/TODO.pdf/44-layer-support.md +20 -0
  90. data/TODO.pdf/45-image-clipping.md +17 -0
  91. data/TODO.pdf/46-spread-to-page-separation.md +19 -0
  92. data/TODO.pdf/47-pdf-bookmarks.md +17 -0
  93. data/TODO.pdf/48-table-rendering.md +20 -0
  94. data/TODO.pdf/49-gradient-fill-rendering.md +20 -0
  95. data/TODO.pdf/50-pdf-a-compliance.md +21 -0
  96. data/TODO.pdf/51-remove-dead-code.md +41 -0
  97. data/TODO.pdf/52-font-subsetting.md +22 -0
  98. data/TODO.pdf/53-tagged-pdf-accessibility.md +24 -0
  99. data/TODO.pdf/54-pdfrb-pipeline-specs.md +27 -0
  100. data/TODO.pdf/55-dead-code-deprecation.md +30 -0
  101. data/TODO.pdf/56-text-engine-pdfrb-integration.md +33 -0
  102. data/TODO.pdf/57-image-clipping-pdfrb.md +26 -0
  103. data/TODO.pdf/58-bookmarks-pdfrb.md +23 -0
  104. data/TODO.pdf/59-dry-placement-rect.md +15 -0
  105. data/TODO.pdf/60-cli-pdf-a-flag.md +16 -0
  106. data/TODO.pdf/README.md +21 -0
  107. data/exe/idml +5 -0
  108. data/idml.gemspec +39 -0
  109. data/lib/idml/cli.rb +105 -0
  110. data/lib/idml/composition/add_page_from_idml.rb +67 -0
  111. data/lib/idml/composition/export_xml.rb +70 -0
  112. data/lib/idml/composition/import_xml.rb +73 -0
  113. data/lib/idml/composition/insert_idml.rb +93 -0
  114. data/lib/idml/composition/prefix.rb +78 -0
  115. data/lib/idml/composition.rb +16 -0
  116. data/lib/idml/document.rb +87 -0
  117. data/lib/idml/elements/anchored_object_setting.rb +40 -0
  118. data/lib/idml/elements/baseline_frame_grid_option.rb +24 -0
  119. data/lib/idml/elements/bevel_and_emboss_setting.rb +48 -0
  120. data/lib/idml/elements/blending_setting.rb +24 -0
  121. data/lib/idml/elements/cell_style.rb +166 -0
  122. data/lib/idml/elements/cell_style_group.rb +18 -0
  123. data/lib/idml/elements/character_style.rb +302 -0
  124. data/lib/idml/elements/character_style_group.rb +18 -0
  125. data/lib/idml/elements/character_style_range.rb +670 -0
  126. data/lib/idml/elements/color.rb +48 -0
  127. data/lib/idml/elements/content.rb +16 -0
  128. data/lib/idml/elements/content_transparency_setting.rb +15 -0
  129. data/lib/idml/elements/contour_option.rb +30 -0
  130. data/lib/idml/elements/dashed_stroke_style.rb +26 -0
  131. data/lib/idml/elements/directional_feather_setting.rb +34 -0
  132. data/lib/idml/elements/document_object.rb +82 -0
  133. data/lib/idml/elements/dotted_stroke_style.rb +24 -0
  134. data/lib/idml/elements/drop_shadow_setting.rb +44 -0
  135. data/lib/idml/elements/feather_setting.rb +26 -0
  136. data/lib/idml/elements/fill_transparency_setting.rb +15 -0
  137. data/lib/idml/elements/flex_layout_attribute_option.rb +42 -0
  138. data/lib/idml/elements/font.rb +50 -0
  139. data/lib/idml/elements/font_family.rb +23 -0
  140. data/lib/idml/elements/frame_fitting_option.rb +30 -0
  141. data/lib/idml/elements/geometry_path_type.rb +24 -0
  142. data/lib/idml/elements/gradient.rb +34 -0
  143. data/lib/idml/elements/gradient_feather_setting.rb +30 -0
  144. data/lib/idml/elements/gradient_stop.rb +24 -0
  145. data/lib/idml/elements/graphic_line.rb +34 -0
  146. data/lib/idml/elements/group.rb +41 -0
  147. data/lib/idml/elements/image.rb +33 -0
  148. data/lib/idml/elements/ink.rb +36 -0
  149. data/lib/idml/elements/inner_glow_setting.rb +34 -0
  150. data/lib/idml/elements/inner_shadow_setting.rb +40 -0
  151. data/lib/idml/elements/layer.rb +35 -0
  152. data/lib/idml/elements/link.rb +25 -0
  153. data/lib/idml/elements/master_spread_object.rb +55 -0
  154. data/lib/idml/elements/mixed_ink.rb +46 -0
  155. data/lib/idml/elements/mixed_ink_group.rb +40 -0
  156. data/lib/idml/elements/object_export_option.rb +100 -0
  157. data/lib/idml/elements/object_style.rb +148 -0
  158. data/lib/idml/elements/object_style_content_effects_category_settings.rb +36 -0
  159. data/lib/idml/elements/object_style_export_tag_map.rb +28 -0
  160. data/lib/idml/elements/object_style_fill_effects_category_settings.rb +36 -0
  161. data/lib/idml/elements/object_style_group.rb +18 -0
  162. data/lib/idml/elements/object_style_object_effects_category_settings.rb +36 -0
  163. data/lib/idml/elements/object_style_stroke_effects_category_settings.rb +36 -0
  164. data/lib/idml/elements/opacity_gradient_stop.rb +24 -0
  165. data/lib/idml/elements/outer_glow_setting.rb +32 -0
  166. data/lib/idml/elements/page.rb +43 -0
  167. data/lib/idml/elements/paragraph_style.rb +600 -0
  168. data/lib/idml/elements/paragraph_style_group.rb +18 -0
  169. data/lib/idml/elements/paragraph_style_range.rb +673 -0
  170. data/lib/idml/elements/pasted_smooth_shade.rb +40 -0
  171. data/lib/idml/elements/path_geometry.rb +36 -0
  172. data/lib/idml/elements/path_point_array.rb +21 -0
  173. data/lib/idml/elements/path_point_type.rb +38 -0
  174. data/lib/idml/elements/polygon.rb +40 -0
  175. data/lib/idml/elements/pref_anchored_object_default.rb +26 -0
  176. data/lib/idml/elements/pref_button_preference.rb +18 -0
  177. data/lib/idml/elements/pref_chapter_number_preference.rb +20 -0
  178. data/lib/idml/elements/pref_cjk_grid_preference.rb +34 -0
  179. data/lib/idml/elements/pref_data_merge.rb +20 -0
  180. data/lib/idml/elements/pref_data_merge_field.rb +20 -0
  181. data/lib/idml/elements/pref_data_merge_option.rb +28 -0
  182. data/lib/idml/elements/pref_dictionary_preference.rb +22 -0
  183. data/lib/idml/elements/pref_document_preference.rb +66 -0
  184. data/lib/idml/elements/pref_e_pub_export_preference.rb +152 -0
  185. data/lib/idml/elements/pref_e_pub_fixed_layout_export_preference.rb +82 -0
  186. data/lib/idml/elements/pref_export_for_web_preference.rb +32 -0
  187. data/lib/idml/elements/pref_footnote_option.rb +78 -0
  188. data/lib/idml/elements/pref_grid_preference.rb +40 -0
  189. data/lib/idml/elements/pref_guide_preference.rb +26 -0
  190. data/lib/idml/elements/pref_html_export_preference.rb +94 -0
  191. data/lib/idml/elements/pref_index_header_setting.rb +26 -0
  192. data/lib/idml/elements/pref_index_options.rb +60 -0
  193. data/lib/idml/elements/pref_layout_adjustment_preference.rb +28 -0
  194. data/lib/idml/elements/pref_layout_grid_data_information.rb +28 -0
  195. data/lib/idml/elements/pref_margin_preference.rb +32 -0
  196. data/lib/idml/elements/pref_mojikumi_ui_preference.rb +18 -0
  197. data/lib/idml/elements/pref_page_item_default.rb +88 -0
  198. data/lib/idml/elements/pref_pasteboard_preference.rb +22 -0
  199. data/lib/idml/elements/pref_print_booklet_option.rb +40 -0
  200. data/lib/idml/elements/pref_print_booklet_print_preference.rb +188 -0
  201. data/lib/idml/elements/pref_print_preference.rb +198 -0
  202. data/lib/idml/elements/pref_story_grid_data_information.rb +40 -0
  203. data/lib/idml/elements/pref_text_default.rb +578 -0
  204. data/lib/idml/elements/pref_text_preference.rb +84 -0
  205. data/lib/idml/elements/pref_tin_document_data_object.rb +15 -0
  206. data/lib/idml/elements/pref_transparency_default_container_object.rb +15 -0
  207. data/lib/idml/elements/pref_transparency_preference.rb +22 -0
  208. data/lib/idml/elements/pref_view_preference.rb +50 -0
  209. data/lib/idml/elements/pref_xml_export_preference.rb +48 -0
  210. data/lib/idml/elements/pref_xml_import_preference.rb +36 -0
  211. data/lib/idml/elements/pref_xml_preference.rb +26 -0
  212. data/lib/idml/elements/properties.rb +24 -0
  213. data/lib/idml/elements/rectangle.rb +56 -0
  214. data/lib/idml/elements/root_cell_style_group.rb +21 -0
  215. data/lib/idml/elements/root_character_style_group.rb +21 -0
  216. data/lib/idml/elements/root_object_style_group.rb +21 -0
  217. data/lib/idml/elements/root_paragraph_style_group.rb +21 -0
  218. data/lib/idml/elements/root_table_style_group.rb +21 -0
  219. data/lib/idml/elements/satin_setting.rb +32 -0
  220. data/lib/idml/elements/spread_object.rb +64 -0
  221. data/lib/idml/elements/story_inner.rb +697 -0
  222. data/lib/idml/elements/story_preference.rb +26 -0
  223. data/lib/idml/elements/striped_stroke_style.rb +22 -0
  224. data/lib/idml/elements/stroke_style.rb +20 -0
  225. data/lib/idml/elements/stroke_transparency_setting.rb +15 -0
  226. data/lib/idml/elements/style_export_tag_map.rb +30 -0
  227. data/lib/idml/elements/swatch.rb +30 -0
  228. data/lib/idml/elements/table.rb +40 -0
  229. data/lib/idml/elements/table_cell.rb +24 -0
  230. data/lib/idml/elements/table_row.rb +28 -0
  231. data/lib/idml/elements/table_style.rb +260 -0
  232. data/lib/idml/elements/table_style_group.rb +18 -0
  233. data/lib/idml/elements/text_frame.rb +54 -0
  234. data/lib/idml/elements/text_frame_footnote_options_object.rb +24 -0
  235. data/lib/idml/elements/text_frame_preference.rb +90 -0
  236. data/lib/idml/elements/text_wrap_preference.rb +24 -0
  237. data/lib/idml/elements/tint.rb +44 -0
  238. data/lib/idml/elements/toc_style.rb +40 -0
  239. data/lib/idml/elements/toc_style_entry.rb +28 -0
  240. data/lib/idml/elements/transform_attribute_option.rb +30 -0
  241. data/lib/idml/elements/transparency_setting.rb +15 -0
  242. data/lib/idml/elements/trap_preset.rb +48 -0
  243. data/lib/idml/elements/xml_element.rb +41 -0
  244. data/lib/idml/elements/xml_export_map.rb +28 -0
  245. data/lib/idml/elements/xml_import_map.rb +22 -0
  246. data/lib/idml/elements/xml_story.rb +609 -0
  247. data/lib/idml/elements/xml_tag.rb +20 -0
  248. data/lib/idml/elements.rb +167 -0
  249. data/lib/idml/errors.rb +10 -0
  250. data/lib/idml/geometry.rb +110 -0
  251. data/lib/idml/namespace.rb +13 -0
  252. data/lib/idml/package.rb +213 -0
  253. data/lib/idml/part.rb +20 -0
  254. data/lib/idml/parts/backing_story.rb +27 -0
  255. data/lib/idml/parts/designmap.rb +91 -0
  256. data/lib/idml/parts/fonts.rb +26 -0
  257. data/lib/idml/parts/graphic.rb +48 -0
  258. data/lib/idml/parts/mapping.rb +25 -0
  259. data/lib/idml/parts/master_spread.rb +27 -0
  260. data/lib/idml/parts/preferences.rb +201 -0
  261. data/lib/idml/parts/raw.rb +27 -0
  262. data/lib/idml/parts/spread.rb +38 -0
  263. data/lib/idml/parts/story.rb +39 -0
  264. data/lib/idml/parts/style.rb +122 -0
  265. data/lib/idml/parts/style_mapping.rb +21 -0
  266. data/lib/idml/parts/tags.rb +25 -0
  267. data/lib/idml/parts.rb +47 -0
  268. data/lib/idml/render/color.rb +69 -0
  269. data/lib/idml/render/color_helper.rb +23 -0
  270. data/lib/idml/render/color_resolver.rb +72 -0
  271. data/lib/idml/render/font_embedder.rb +79 -0
  272. data/lib/idml/render/font_reference_resolver.rb +51 -0
  273. data/lib/idml/render/gradient_resolver.rb +111 -0
  274. data/lib/idml/render/image.rb +302 -0
  275. data/lib/idml/render/layer_filter.rb +60 -0
  276. data/lib/idml/render/page_item_renderer.rb +34 -0
  277. data/lib/idml/render/path.rb +80 -0
  278. data/lib/idml/render/pdf_writer.rb +426 -0
  279. data/lib/idml/render/pdfrb_ext/clip.rb +31 -0
  280. data/lib/idml/render/pdfrb_ext/invoke_xobject.rb +24 -0
  281. data/lib/idml/render/pdfrb_ext.rb +13 -0
  282. data/lib/idml/render/pdfrb_writer.rb +97 -0
  283. data/lib/idml/render/pipeline.rb +196 -0
  284. data/lib/idml/render/render_context.rb +22 -0
  285. data/lib/idml/render/renderers/graphic_line_renderer.rb +28 -0
  286. data/lib/idml/render/renderers/group_renderer.rb +42 -0
  287. data/lib/idml/render/renderers/polygon_renderer.rb +47 -0
  288. data/lib/idml/render/renderers/rectangle_renderer.rb +62 -0
  289. data/lib/idml/render/renderers/table_renderer.rb +41 -0
  290. data/lib/idml/render/renderers/text_frame_renderer.rb +113 -0
  291. data/lib/idml/render/renderers.rb +11 -0
  292. data/lib/idml/render/spread_renderer.rb +111 -0
  293. data/lib/idml/render/story_threader.rb +56 -0
  294. data/lib/idml/render/style_resolver.rb +48 -0
  295. data/lib/idml/render/text.rb +91 -0
  296. data/lib/idml/render.rb +63 -0
  297. data/lib/idml/text_engine/cjk_layout.rb +114 -0
  298. data/lib/idml/text_engine/font_metrics.rb +226 -0
  299. data/lib/idml/text_engine/font_resolver.rb +105 -0
  300. data/lib/idml/text_engine/justifier.rb +46 -0
  301. data/lib/idml/text_engine/line_breaker.rb +55 -0
  302. data/lib/idml/text_engine/shaper.rb +35 -0
  303. data/lib/idml/text_engine/vertical_layout.rb +64 -0
  304. data/lib/idml/text_engine.rb +19 -0
  305. data/lib/idml/validation/result.rb +14 -0
  306. data/lib/idml/validation/validator.rb +121 -0
  307. data/lib/idml/validation.rb +14 -0
  308. data/lib/idml/version.rb +5 -0
  309. data/lib/idml.rb +33 -0
  310. data/reference-docs/idml-specification.pdf +0 -0
  311. data/reference-docs/schemas/README.md +79 -0
  312. data/reference-docs/schemas/fix-adobe-schema-bug.rb +69 -0
  313. data/reference-docs/schemas/package/MasterSpreads/MasterSpread.rnc +4415 -0
  314. data/reference-docs/schemas/package/Resources/Fonts.rnc +93 -0
  315. data/reference-docs/schemas/package/Resources/Graphic.rnc +226 -0
  316. data/reference-docs/schemas/package/Resources/Preferences.rnc +1827 -0
  317. data/reference-docs/schemas/package/Resources/Styles.rnc +1770 -0
  318. data/reference-docs/schemas/package/Spreads/Spread.rnc +4431 -0
  319. data/reference-docs/schemas/package/Stories/Story.rnc +6547 -0
  320. data/reference-docs/schemas/package/XML/BackingStory.rnc +6527 -0
  321. data/reference-docs/schemas/package/XML/Mapping.rnc +35 -0
  322. data/reference-docs/schemas/package/XML/Tags.rnc +30 -0
  323. data/reference-docs/schemas/package/datatype.rnc +563 -0
  324. data/reference-docs/schemas/package/designmap.rnc +974 -0
  325. data/reference-docs/schemas/single/IDMarkupLanguage.rnc +11486 -0
  326. data/reference-docs/schemas/single/datatype.rnc +563 -0
  327. data/reference-docs/spec/00_index.md +16 -0
  328. data/reference-docs/spec/00_title/00_index.md +480 -0
  329. data/reference-docs/spec/01_abstract/00_index.md +3 -0
  330. data/reference-docs/spec/02_introduction/00_index.md +11 -0
  331. data/reference-docs/spec/03_terminology/00_index.md +7 -0
  332. data/reference-docs/spec/04_inx_idml_and_in_design_scripting/00_index.md +48 -0
  333. data/reference-docs/spec/05_uses_for_idml/00_index.md +13 -0
  334. data/reference-docs/spec/06_idml_design_goals/00_index.md +18 -0
  335. data/reference-docs/spec/07_idml_design_approaches/00_index.md +59 -0
  336. data/reference-docs/spec/08_idml_document_structure/00_index.md +120 -0
  337. data/reference-docs/spec/09_idml_syntax/00_index.md +367 -0
  338. data/reference-docs/spec/09_idml_syntax/examples/01_example_properties_expressed_as_attributes_or_elements_depending_on_their_value.md +6 -0
  339. data/reference-docs/spec/09_idml_syntax/examples/02_example_object_serialization.md +10 -0
  340. data/reference-docs/spec/09_idml_syntax/examples/03_example_record_type_serialization.md +6 -0
  341. data/reference-docs/spec/09_idml_syntax/examples/04_example_geometry_serialization.md +6 -0
  342. data/reference-docs/spec/09_idml_syntax/examples/index.md +10 -0
  343. data/reference-docs/spec/09_idml_syntax/images/image_01.md +1 -0
  344. data/reference-docs/spec/09_idml_syntax/images/image_01.png +0 -0
  345. data/reference-docs/spec/09_idml_syntax/images/image_02.md +1 -0
  346. data/reference-docs/spec/09_idml_syntax/images/image_02.png +0 -0
  347. data/reference-docs/spec/09_idml_syntax/images/image_03.md +1 -0
  348. data/reference-docs/spec/09_idml_syntax/images/image_03.png +0 -0
  349. data/reference-docs/spec/09_idml_syntax/images/image_04.md +1 -0
  350. data/reference-docs/spec/09_idml_syntax/images/image_04.png +0 -0
  351. data/reference-docs/spec/09_idml_syntax/images/image_05.md +1 -0
  352. data/reference-docs/spec/09_idml_syntax/images/image_05.png +0 -0
  353. data/reference-docs/spec/09_idml_syntax/images/image_06.md +1 -0
  354. data/reference-docs/spec/09_idml_syntax/images/image_06.png +0 -0
  355. data/reference-docs/spec/09_idml_syntax/images/index.md +12 -0
  356. data/reference-docs/spec/09_idml_syntax/schemas/00_schema_example_1_column_guide_color_and_margin_guide_color_elements.rnc +3 -0
  357. data/reference-docs/spec/09_idml_syntax/schemas/01_datatype.rnc +4 -0
  358. data/reference-docs/spec/09_idml_syntax/schemas/02_designmap.rnc +4 -0
  359. data/reference-docs/spec/09_idml_syntax/schemas/03_Master_Spreads.rnc +4 -0
  360. data/reference-docs/spec/09_idml_syntax/schemas/04_Fonts.rnc +4 -0
  361. data/reference-docs/spec/09_idml_syntax/schemas/05_Graphic.rnc +4 -0
  362. data/reference-docs/spec/09_idml_syntax/schemas/06_Preferences.rnc +4 -0
  363. data/reference-docs/spec/09_idml_syntax/schemas/07_Styles.rnc +4 -0
  364. data/reference-docs/spec/09_idml_syntax/schemas/08_Spread.rnc +4 -0
  365. data/reference-docs/spec/09_idml_syntax/schemas/09_Story.rnc +4 -0
  366. data/reference-docs/spec/09_idml_syntax/schemas/10_BackingStory.rnc +4 -0
  367. data/reference-docs/spec/09_idml_syntax/schemas/11_Mapping.rnc +4 -0
  368. data/reference-docs/spec/09_idml_syntax/schemas/12_Tags.rnc +4 -0
  369. data/reference-docs/spec/09_idml_syntax/schemas/index.md +19 -0
  370. data/reference-docs/spec/09_idml_syntax/tables/01_idml_basic_data_types.md +20 -0
  371. data/reference-docs/spec/09_idml_syntax/tables/02_property_elements.md +6 -0
  372. data/reference-docs/spec/09_idml_syntax/tables/index.md +8 -0
  373. data/reference-docs/spec/10_idml_file_reference/00_index.md +16 -0
  374. data/reference-docs/spec/10_idml_file_reference/10_10_mapping/examples/98_xml_export_map.md +1 -0
  375. data/reference-docs/spec/10_idml_file_reference/10_10_mapping/examples/99_xml_import_map.md +1 -0
  376. data/reference-docs/spec/10_idml_file_reference/10_10_mapping/index.md +44 -0
  377. data/reference-docs/spec/10_idml_file_reference/10_10_mapping/schemas/175_xml_export_map.rnc +1 -0
  378. data/reference-docs/spec/10_idml_file_reference/10_10_mapping/schemas/176_xml_import_map.rnc +1 -0
  379. data/reference-docs/spec/10_idml_file_reference/10_10_mapping/tables/191_xml_export_map_properties.md +7 -0
  380. data/reference-docs/spec/10_idml_file_reference/10_10_mapping/tables/192_xml_import_map_properties.md +4 -0
  381. data/reference-docs/spec/10_idml_file_reference/10_11_xmltags/examples/100_example_xmltag.md +7 -0
  382. data/reference-docs/spec/10_idml_file_reference/10_11_xmltags/imdex.md +42 -0
  383. data/reference-docs/spec/10_idml_file_reference/10_11_xmltags/schemas/177_xmltag.rnc +10 -0
  384. data/reference-docs/spec/10_idml_file_reference/10_11_xmltags/tables/193_xmltag_properties_attributes.md +3 -0
  385. data/reference-docs/spec/10_idml_file_reference/10_11_xmltags/tables/194_xmltag_properties_elements.md +3 -0
  386. data/reference-docs/spec/10_idml_file_reference/10_1_common_attributes_and_elements/examples/05_example_self.md +1 -0
  387. data/reference-docs/spec/10_idml_file_reference/10_1_common_attributes_and_elements/examples/06_example_label.md +6 -0
  388. data/reference-docs/spec/10_idml_file_reference/10_1_common_attributes_and_elements/index.md +96 -0
  389. data/reference-docs/spec/10_idml_file_reference/10_1_common_attributes_and_elements/schemas/02_self.rnc +3 -0
  390. data/reference-docs/spec/10_idml_file_reference/10_1_common_attributes_and_elements/schemas/03_label.rnc +7 -0
  391. data/reference-docs/spec/10_idml_file_reference/10_1_common_attributes_and_elements/tables/label_attributes.md +8 -0
  392. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/07_example_document_element_references.md +26 -0
  393. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/08_example_document_element_designmap.md +25 -0
  394. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/09_example_color_management_attributes.md +10 -0
  395. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/10_example_tagged_pdf_preference_structure_order.md +1 -0
  396. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/11_example_text_variable.md +3 -0
  397. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/12_example_layer.md +5 -0
  398. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/13_example_building_block.md +1 -0
  399. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/14_example_hyperlink.md +7 -0
  400. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/15_example_article.md +4 -0
  401. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/index.md +1349 -0
  402. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/004_document.rnc +108 -0
  403. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/005_language.rnc +16 -0
  404. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/006_kinsokutable.rnc +13 -0
  405. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/007_numberinglist.rnc +11 -0
  406. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/007b_mojikumitable.rnc +14 -0
  407. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/008_namedgrid.rnc +10 -0
  408. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/009_griddatainformation.rnc +22 -0
  409. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/010_motionpreset.rnc +14 -0
  410. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/011_condition.rnc +14 -0
  411. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/012_conditionset.rnc +13 -0
  412. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/013_linkedstoryoption.rnc +5 -0
  413. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/014_taggedpdfpreference.rnc +1 -0
  414. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/015_metadatapacketpreference.rnc +1 -0
  415. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/016_watermarkpreference.rnc +18 -0
  416. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/016b_conditionaltextpreference.rnc +4 -0
  417. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/017_textvariable.rnc +22 -0
  418. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/018_customtextvariablepreference.rnc +14 -0
  419. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/019_filenamevariablepreference.rnc +6 -0
  420. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/020_pagenumbervariablepreference.rnc +6 -0
  421. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/021_chapternumbervariablepreference.rnc +5 -0
  422. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/022_datevariablepreference.rnc +5 -0
  423. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/023_matchcharacterstylepreference.rnc +8 -0
  424. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/024_matchparagraphstylepreference.rnc +8 -0
  425. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/025_captionmetadatavariablepreference.rnc +5 -0
  426. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/026_layer.rnc +19 -0
  427. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/027_section.rnc +25 -0
  428. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/028_documentuser.rnc +7 -0
  429. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/029_crossreferenceformat.rnc +11 -0
  430. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/030_buildingblock.rnc +8 -0
  431. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/031_index.rnc +9 -0
  432. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/032_topic.rnc +7 -0
  433. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/033_crossreference.rnc +11 -0
  434. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/034_hyperlink.rnc +34 -0
  435. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/035_hyperlinkpagedestination.rnc +17 -0
  436. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/036_hyperlinkurldestination.rnc +12 -0
  437. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/037_hyperlinkexternalpagedestination.rnc +17 -0
  438. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/038_hyperlinkpageitemsource.rnc +11 -0
  439. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/039_bookmark.rnc +11 -0
  440. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/040_preflightprofile.rnc +12 -0
  441. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/041_preflightprofilerule.rnc +13 -0
  442. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/042_ruledataobject.rnc +51 -0
  443. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/043_preflightruleinstance.rnc +13 -0
  444. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/044_datamergeimageplaceholder.rnc +5 -0
  445. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/045_hyphenationexception.rnc +6 -0
  446. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/046_indexingsortoption.rnc +8 -0
  447. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/047_abullet.rnc +28 -0
  448. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/048_assignment.rnc +21 -0
  449. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/049_assignedstory.rnc +11 -0
  450. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/051_article.rnc +11 -0
  451. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/052_articlemember.rnc +4 -0
  452. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/03_document_properties_attributes.md +28 -0
  453. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/04_document_properties_elements.md +2 -0
  454. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/05_language_properties_attributes.md +10 -0
  455. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/06_kinsokutable_properties_attributes.md +6 -0
  456. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/07_mojikumitable_properties_attributes.md +3 -0
  457. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/08_mojikumitable_properties_elements.md +4 -0
  458. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/09_numberinglist_properties_attributes.md +4 -0
  459. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/10_namedgrid_properties_attributes.md +3 -0
  460. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/11_griddatainformation_properties_attributes.md +14 -0
  461. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/12_griddatainformation_properties_elements.md +3 -0
  462. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/13_motionpreset_properties_attributes.md +6 -0
  463. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/14_motionpreset_properties_elements.md +3 -0
  464. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/15_condition_properties_attributes.md +6 -0
  465. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/16_condition_properties_elements.md +3 -0
  466. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/17_conditionset_properties_elements.md +3 -0
  467. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/18_linkedstoryoption_properties_attributes.md +5 -0
  468. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/19_taggedpdfpreference_structureorder_elements.md +3 -0
  469. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/20_metadatapacketpreference_properties_elements.md +3 -0
  470. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/21_watermarkpreference_properties_attributes.md +15 -0
  471. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/22_watermarkpreference_properties_elements.md +3 -0
  472. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/23_conditionaltextpreference_properties_attributes.md +4 -0
  473. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/24_textvariable_properties_attributes.md +4 -0
  474. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/25_common_text_variable_properties_attributes.md +4 -0
  475. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/26_custom_textvariable_preference_properties_elements.md +3 -0
  476. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/27_filename_variable_preference_properties_attributes.md +4 -0
  477. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/28_pagenumber_variable_preference_properties_attributes.md +4 -0
  478. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/29_chapternumber_variable_preference_properties_attributes.md +3 -0
  479. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/30_date_variable_preference_properties_attributes.md +3 -0
  480. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/31_matchcharacterstylepreference_properties_attributes.md +6 -0
  481. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/32_matchparagraphstylepreference_properties_attributes.md +6 -0
  482. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/33_captionmetadatavariablepreference_properties_attributes.md +3 -0
  483. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/34_metadata_provider_names.md +63 -0
  484. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/35_layer_properties_attributes.md +10 -0
  485. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/36_layer_properties_elements.md +3 -0
  486. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/37_section_properties_attributes.md +15 -0
  487. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/38_documentuser_properties_attributes.md +3 -0
  488. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/39_documentuser_properties_elements.md +3 -0
  489. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/40_crossreferenceformat_properties_attributes.md +4 -0
  490. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/41_buildingblock_properties_attributes.md +10 -0
  491. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/42_topic_properties_attributes.md +4 -0
  492. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/43_crossreference_properties_attributes.md +5 -0
  493. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/44_hyperlink_properties_attributes.md +10 -0
  494. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/45_hyperlinkpagedestination_properties_attributes.md +9 -0
  495. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/46_hyperlinkpagedestination_properties_elements.md +3 -0
  496. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/47_hyperlinkurldestination_properties_attributes.md +6 -0
  497. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/48_hyperlinkexternalpagedestination_properties_attributes.md +8 -0
  498. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/49_hyperlinkexternalpagedestination_properties_elements.md +3 -0
  499. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/50_hyperlinkpageitemsource_properties_attributes.md +8 -0
  500. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/51_bookmark_properties_attributes.md +4 -0
  501. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/52_preflightprofile_properties_attributes.md +3 -0
  502. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/53_preflightprofilerule_properties_attributes.md +5 -0
  503. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/54_ruledataobject_properties_attributes.md +4 -0
  504. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/55_ruledataobject_properties_elements.md +3 -0
  505. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/56_preflightruleinstance_properties_attributes.md +5 -0
  506. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/57_datamergeplaceholder_properties_attributes.md +4 -0
  507. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/58_hyphenationexception_properties_attributes.md +4 -0
  508. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/59_indexingsortoption_properties_attributes.md +5 -0
  509. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/60_abullet_properties_attributes.md +4 -0
  510. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/61_abullet_properties_elements.md +4 -0
  511. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/62_assignment_properties_attributes.md +9 -0
  512. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/62_assignment_properties_elements.md +3 -0
  513. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/63_article_properties_attributes.md +3 -0
  514. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/64_article_properties_elements.md +2 -0
  515. data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/65_articlemember_properties_attributes.md +3 -0
  516. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/16_example_minimal_spread.md +4 -0
  517. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/17_example_untransformed_rectangle.md +14 -0
  518. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/18_example_rotation_changes_the_itemtransform_attribute_in_idml.md +1 -0
  519. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/19_the_rectangle_transformed_by_itemtransform_attribute_of_both_the_rectangle_and_the_group.md +1 -0
  520. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/20_example_animation_setting.md +33 -0
  521. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/21_example_timing_setting.md +10 -0
  522. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/22_example_rectangle.md +14 -0
  523. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/23_example_nested_page_item.md +28 -0
  524. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/24_example_rotated_page_item.md +14 -0
  525. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/25_example_page_item_imported_graphic.md +28 -0
  526. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/26_example_movie.md +1 -0
  527. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/27_example_navigation_point.md +1 -0
  528. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/28_example_sound.md +1 -0
  529. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/29_example_text_frame.md +29 -0
  530. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/30_example_threaded_linked_textframes.md +1 -0
  531. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/31_example_text_frame_preference_single_inset.md +5 -0
  532. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/32_example_text_frame_preference_multiple_inset.md +10 -0
  533. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/33_example_multi_column_text_frame.md +24 -0
  534. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/34_example_baseline_frame_grid.md +5 -0
  535. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/35_example_transparency.md +5 -0
  536. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/36_example_group.md +1 -0
  537. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/37_example_button.md +43 -0
  538. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/38_example_multi_state_object.md +26 -0
  539. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/39_example_associating_frame_xml_element.md +5 -0
  540. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/40_example_associating_text_frame_xml_element.md +6 -0
  541. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/41_example_pages_within_spread.md +19 -0
  542. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/42_example_margin_preferences.md +1 -0
  543. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/43_example_guide.md +5 -0
  544. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/44_example_flattener_preference.md +7 -0
  545. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img001.png +0 -0
  546. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img002.png +0 -0
  547. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img003.png +0 -0
  548. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img004.png +0 -0
  549. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img005.png +0 -0
  550. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img006.png +0 -0
  551. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img007.png +0 -0
  552. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img008.png +0 -0
  553. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img009.png +0 -0
  554. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img010.png +0 -0
  555. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img011.png +0 -0
  556. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img012.png +0 -0
  557. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img013.png +0 -0
  558. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img014.png +0 -0
  559. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img015.png +0 -0
  560. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img016.png +0 -0
  561. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img017.png +0 -0
  562. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img018.png +0 -0
  563. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img019.png +0 -0
  564. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img020.png +0 -0
  565. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img021.png +0 -0
  566. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/images/10_3_spreads_and_master_spreads_img022.png +0 -0
  567. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/index.md +1421 -0
  568. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/53_spread.rnc +30 -0
  569. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/54_master_spread.rnc +24 -0
  570. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/55_page_item.rnc +104 -0
  571. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/56_animation_setting.rnc +22 -0
  572. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/57_timing_setting.rnc +1 -0
  573. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/58_timing_list.rnc +2 -0
  574. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/60_timing_group.rnc +4 -0
  575. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/61_timing_target.rnc +7 -0
  576. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/62_graphic.rnc +41 -0
  577. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/63_pdf_attribute.rnc +3 -0
  578. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/64_navigation_point.rnc +4 -0
  579. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/65_text_frame.rnc +43 -0
  580. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/66_text_frame_preference.rnc +30 -0
  581. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/67_baseline_frame_grid.rnc +5 -0
  582. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/68_transparency_setting.rnc +1 -0
  583. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/69_blending_setting.rnc +3 -0
  584. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/70_button.rnc +96 -0
  585. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/71_state.rnc +20 -0
  586. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/72_behavior.rnc +5 -0
  587. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/73_multi_state_object.rnc +72 -0
  588. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/74_page.rnc +34 -0
  589. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/75_margin_preference.rnc +7 -0
  590. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/76_guide.rnc +12 -0
  591. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/77_flattener_preference.rnc +9 -0
  592. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/066_spread_masterspread_properties_as_attributes.md +15 -0
  593. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/067_masterspread_properties_as_elements.md +3 -0
  594. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/068_common_pageitem_properties_as_attributes.md +46 -0
  595. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/069_common_pageitem_properties_as_elements.md +3 -0
  596. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/070_animationsetting_properties_as_attributes.md +11 -0
  597. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/071_animationsetting_properties_as_elements.md +9 -0
  598. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/072_timinglist_properties_as_attributes.md +3 -0
  599. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/073_timinggroup_properties_as_attributes.md +4 -0
  600. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/074_timingtarget_properties_as_attributes.md +8 -0
  601. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/075_graphic_properties_as_attributes.md +3 -0
  602. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/076_graphic_properties_as_elements.md +6 -0
  603. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/077_image_properties_as_attributes.md +6 -0
  604. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/078_image_properties_as_elements.md +3 -0
  605. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/079_pdf_eps_properties_as_attributes.md +7 -0
  606. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/080_pdfattribute_properties_as_attributes.md +5 -0
  607. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/081_importedpage_properties_as_attributes.md +4 -0
  608. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/082_movie_properties_as_attributes.md +19 -0
  609. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/083_sound_properties_as_attributes.md +8 -0
  610. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/084_textframe_properties_as_attributes.md +5 -0
  611. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/085_textframe_preference_properties_as_attributes.md +22 -0
  612. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/086_textframe_preference_properties_as_elements.md +3 -0
  613. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/087_baselineframegrid_properties_expressed_as_attributes.md +6 -0
  614. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/088_baselineframegrid_properties_as_elements.md +3 -0
  615. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/089_button_properties_expressed_as_attributes.md +5 -0
  616. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/090_button_properties_expressed_as_properties.md +3 -0
  617. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/091_state_properties_as_attributes.md +6 -0
  618. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/092_common_behavior_properties_as_attributes.md +9 -0
  619. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/093_gotonextstatebehavior_properties_as_attributes.md +4 -0
  620. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/094_gotopreviousstatebehavior_properties_as_elements.md +3 -0
  621. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/095_gotostatebehavior_properties_as_attributes.md +4 -0
  622. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/096_gotostatebehavior_properties_as_attributes_2.md +4 -0
  623. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/097_animationbehavior_properties_as_attributes.md +8 -0
  624. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/097a_sound_showhide_openfile_viewzoom_gotopage_behavior_properties.md +9 -0
  625. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/098_multistateobject_properties_as_attributes.md +5 -0
  626. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/099_multistateobject_properties_as_elements.md +3 -0
  627. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/100_page_properties_as_attributes.md +17 -0
  628. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/101_page_properties_as_elements.md +3 -0
  629. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/102_guide_properties_as_attributes.md +11 -0
  630. data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/103_guide_properties_as_elements.md +3 -0
  631. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/45_example_story_file_in_idml_package.md +10 -0
  632. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/46_example_local_formatting_vs_styles.md +11 -0
  633. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/47_example_paragraph_style_range_character_style_range.md +14 -0
  634. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/48_example_paragraph_breaks_in_character_style_range.md +9 -0
  635. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/49_example_paragraph_style_range_elements_column_breaks.md +15 -0
  636. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/50_example_multiple_paragraph_style_range_elements.md +14 -0
  637. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/51_example_multi_column_straddle_paragraphs.md +25 -0
  638. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/52_example_xml_element.md +141 -0
  639. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/53_example_table.md +31 -0
  640. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/54_example_footnote.md +14 -0
  641. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/55_example_note.md +14 -0
  642. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/56_example_anchored_text_frame.md +31 -0
  643. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/57_example_anchored_graphic.md +39 -0
  644. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/58_example_hyperlink_text_source.md +11 -0
  645. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/59_example_hyperlink_text_destination.md +13 -0
  646. data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/60_example_cross_reference_source.md +11 -0
  647. data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img001.png +0 -0
  648. data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img002.png +0 -0
  649. data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img003.png +0 -0
  650. data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img004.png +0 -0
  651. data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img005.png +0 -0
  652. data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img006.png +0 -0
  653. data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img007.png +0 -0
  654. data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img008.png +0 -0
  655. data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img009.png +0 -0
  656. data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img010.png +0 -0
  657. data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img011.png +0 -0
  658. data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img012.png +0 -0
  659. data/reference-docs/spec/10_idml_file_reference/10_4_stories/index.md +1299 -0
  660. data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/78_story.rnc +92 -0
  661. data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/79_paragraph_style_range.rnc +381 -0
  662. data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/80_character_style_range.rnc +431 -0
  663. data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/81_table.rnc +53 -0
  664. data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/82_cell.rnc +66 -0
  665. data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/83_column.rnc +28 -0
  666. data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/84_row.rnc +33 -0
  667. data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/85_footnote.rnc +7 -0
  668. data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/86_note.rnc +13 -0
  669. data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/87_anchored_object_settings.rnc +12 -0
  670. data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/88_hyperlink_text_source.rnc +20 -0
  671. data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/89_hyperlink_text_destination.rnc +5 -0
  672. data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/90_cross_reference_source.rnc +16 -0
  673. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/104_common_text_properties_attributes.md +230 -0
  674. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/105_common_text_properties_elements.md +41 -0
  675. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/106_story_properties_attributes.md +6 -0
  676. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/107_story_properties_elements.md +6 -0
  677. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/108_character_style_range_elements.md +3 -0
  678. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/109_table_properties_attributes.md +133 -0
  679. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/110_cell_properties_attributes.md +83 -0
  680. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/111_cell_properties_elements.md +3 -0
  681. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/112_column_properties_attributes.md +29 -0
  682. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/113_row_properties_attributes.md +34 -0
  683. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/114_anchored_object_setting_properties_attributes.md +14 -0
  684. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/115_hyperlink_text_source_properties_attributes.md +5 -0
  685. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/116_hyperlink_text_destination_properties_attributes.md +5 -0
  686. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/117_cross_reference_source_properties_attributes.md +6 -0
  687. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/118_applied_format_tags.md +11 -0
  688. data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/119_metacharacters.md +15 -0
  689. data/reference-docs/spec/10_idml_file_reference/10_5_fonts/examples/61_example_font.md +3 -0
  690. data/reference-docs/spec/10_idml_file_reference/10_5_fonts/examples/62_example_referring_to_font.md +6 -0
  691. data/reference-docs/spec/10_idml_file_reference/10_5_fonts/index.md +86 -0
  692. data/reference-docs/spec/10_idml_file_reference/10_5_fonts/schemas/091_font_family.rnc +1 -0
  693. data/reference-docs/spec/10_idml_file_reference/10_5_fonts/schemas/092_font.rnc +1 -0
  694. data/reference-docs/spec/10_idml_file_reference/10_5_fonts/schemas/093_composite_font.rnc +1 -0
  695. data/reference-docs/spec/10_idml_file_reference/10_5_fonts/schemas/094_composite_font_entry.rnc +2 -0
  696. data/reference-docs/spec/10_idml_file_reference/10_5_fonts/tables/120_font_properties_represented_as_attributes.md +14 -0
  697. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/63_example_none_swatch.md +1 -0
  698. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/64_example_process_color.md +1 -0
  699. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/65_example_spot_color.md +1 -0
  700. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/66_example_lab_color.md +1 -0
  701. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/67_example_gradient.md +4 -0
  702. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/68_example_tint.md +1 -0
  703. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/69_example_mixed_ink.md +1 -0
  704. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/70_example_mixed_ink_group.md +1 -0
  705. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/71_example_process_magenta_ink.md +1 -0
  706. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/72_example_pantone_274_c_spot_ink.md +1 -0
  707. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/73_example_default_stroke_styles.md +18 -0
  708. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/74_example_dashed_stroke_style.md +1 -0
  709. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/75_example_dotted_stroke_style.md +1 -0
  710. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/76_example_striped_stroke_style.md +1 -0
  711. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img001.png +0 -0
  712. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img002.png +0 -0
  713. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img003.png +0 -0
  714. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img004.png +0 -0
  715. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img005.png +0 -0
  716. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img006.png +0 -0
  717. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img007.png +0 -0
  718. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img008.png +0 -0
  719. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img009.png +0 -0
  720. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img010.png +0 -0
  721. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img011.png +0 -0
  722. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img012.png +0 -0
  723. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/index.md +406 -0
  724. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/095_swatch.rnc +1 -0
  725. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/096_color.rnc +1 -0
  726. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/097_gradient.rnc +1 -0
  727. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/098_gradient_stop.rnc +1 -0
  728. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/099_tint.rnc +1 -0
  729. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/100_mixed_ink.rnc +1 -0
  730. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/101_mixed_ink_group.rnc +1 -0
  731. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/102_ink.rnc +1 -0
  732. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/103_stroke_style.rnc +1 -0
  733. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/104_dashed_stroke_style.rnc +1 -0
  734. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/105_dotted_stroke_style.rnc +1 -0
  735. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/106_striped_stroke_style.rnc +1 -0
  736. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/121_swatch_properties.md +7 -0
  737. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/122_color_properties.md +10 -0
  738. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/123_gradient_properties.md +3 -0
  739. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/124_gradient_stop_properties.md +5 -0
  740. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/125_tint_properties.md +6 -0
  741. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/126_mixed_ink_properties.md +10 -0
  742. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/127_mixed_ink_group_properties.md +7 -0
  743. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/128_ink_properties.md +11 -0
  744. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/129_stroke_style_properties.md +3 -0
  745. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/130_dashed_stroke_style_properties.md +6 -0
  746. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/131_dotted_stroke_style_properties.md +5 -0
  747. data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/132_striped_stroke_style_properties.md +4 -0
  748. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/77_epub_export_preference.md +1 -0
  749. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/78_html_export_preference.md +1 -0
  750. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/79_transparency_preference.md +1 -0
  751. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/80_story_preference.md +1 -0
  752. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/81_anchored_object_default.md +1 -0
  753. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/82_anchored_object_setting.md +1 -0
  754. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/83_baseline_frame_grid_option.md +5 -0
  755. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/84_footnote_options.md +1 -0
  756. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/85_text_wrap_preference.md +1 -0
  757. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/86_document_preference.md +1 -0
  758. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/87_grid_preference.md +2 -0
  759. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/88_guide_preference.md +5 -0
  760. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/index.md +1153 -0
  761. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/107_Preferences_File.rnc +2 -0
  762. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/108_DataMerge.rnc +1 -0
  763. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/109_DataMergeField.rnc +1 -0
  764. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/110_DataMergeOption.rnc +1 -0
  765. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/111_LayoutAdjustmentPreference.rnc +1 -0
  766. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/112_EPubExportPreference.rnc +1 -0
  767. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/113_HTMLExportPreference.rnc +1 -0
  768. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/114_XMLImportPreference.rnc +1 -0
  769. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/115_XMLExport_Preference.rnc +1 -0
  770. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/116_XMLPreference.rnc +1 -0
  771. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/117_Export_For_Web_Preference.rnc +1 -0
  772. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/118_Transparency_Preference.rnc +1 -0
  773. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/119_Transparency_Default_Container_Object.rnc +1 -0
  774. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/120_StoryPreference.rnc +8 -0
  775. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/121_Text_Preference.rnc +1 -0
  776. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/122_Text_Default.rnc +1 -0
  777. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/123_DictionaryPreference.rnc +1 -0
  778. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/124_AnchoredObjectDefault.rnc +1 -0
  779. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/125_AnchoredObjectSetting.rnc +1 -0
  780. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/126_BaselineFrameGridOption.rnc +1 -0
  781. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/127_FootnoteOption.rnc +1 -0
  782. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/128_TextWrapPreference.rnc +3 -0
  783. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/129_Contour_Option.rnc +1 -0
  784. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/130_Document_Preference.rnc +1 -0
  785. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/131_Grid_Preference.rnc +1 -0
  786. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/132_GuidePreference.rnc +1 -0
  787. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/133_MarginPreference.rnc +1 -0
  788. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/134_Pasteboard_Preference.rnc +1 -0
  789. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/135_View_Preference.rnc +1 -0
  790. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/136_Print_Preference.rnc +1 -0
  791. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/137_Print_Booklet_Option.rnc +1 -0
  792. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/138_Print_Booklet_Print_Preference.rnc +1 -0
  793. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/139_Index_Options.rnc +1 -0
  794. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/140_Index_Header_Setting.rnc +1 -0
  795. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/141_Page_Item_Default.rnc +1 -0
  796. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/142_Frame_Fitting_Option.rnc +1 -0
  797. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/143_Button_Preference.rnc +1 -0
  798. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/144_Tin_Document_Data_Object.rnc +1 -0
  799. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/145_Layout_Grid_Data_Information.rnc +1 -0
  800. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/146_Story_Grid_Data_Information.rnc +1 -0
  801. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/147_Cjk_Grid_Preference.rnc +1 -0
  802. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/148_Mojikumi_Ui_Preference.rnc +1 -0
  803. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/149_Chapter_Number_Preference.rnc +1 -0
  804. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/133_DataMerge_Properties_Represented_as_Attributes.md +4 -0
  805. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/134_DataMergeField_Properties_Represented_as_Attributes.md +3 -0
  806. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/135_DataMergeOption_Properties_Represented_as_Attributes.md +8 -0
  807. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/136_LayoutAdjustmentPreference_Properties_Represented_as_Attributes.md +8 -0
  808. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/137_EPubExportPreference_Properties_Represented_as_Attributes.md +44 -0
  809. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/138_HTMLExportPreference_Properties_Represented_as_Attributes.md +39 -0
  810. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/139_XMLImportPreference_Properties_Represented_as_Attributes.md +12 -0
  811. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/140_XMLImportPreference_Properties_Represented_as_Elements.md +4 -0
  812. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/141_XMLExportPreference_Properties_Represented_as_Attributes.md +21 -0
  813. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/142_XMLExport_Preference_Properties_Represented_as_Elements.md +4 -0
  814. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/143_XMLPreference_Properties_Represented_as_Attributes.md +9 -0
  815. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/144_XMLPreference_Properties_Represented_as_Elements.md +6 -0
  816. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/145_ExportForWebPreference_Properties_Represented_as_Attributes.md +10 -0
  817. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/146_TransparencyPreference_Properties_Represented_as_Attributes.md +5 -0
  818. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/147_StoryPreference_Properties_Represented_as_Attributes.md +7 -0
  819. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/148_TextPreference_Properties_Represented_as_Attributes.md +33 -0
  820. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/149_AnchoredObjectDefault_Properties_Represented_as_Attributes.md +7 -0
  821. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/150_AnchoredObjectSetting_Properties_Represented_as_Attributes.md +14 -0
  822. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/151_BaselineFrameGridOption_Properties_Represented_as_Attributes.md +6 -0
  823. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/152_BaselineFrameGridOption_Properties_Represented_as_Elements.md +3 -0
  824. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/153_FootnoteOption_Properties_Represented_as_Attributes.md +33 -0
  825. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/154_FootnoteOption_Properties_Represented_as_Elements.md +12 -0
  826. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/155_Contour_Option_Properties_Represented_as_Attributes.md +5 -0
  827. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/156_DocumentPreference_Properties_Represented_as_Attributes.md +26 -0
  828. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/157_DocumentPreference_Properties_Represented_as_Elements.md +4 -0
  829. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/158_Grid_Preference_Properties_Represented_as_Attributes.md +14 -0
  830. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/159_GridPreference_Properties_Represented_as_Elements.md +4 -0
  831. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/160_GuidePreference_Properties_Represented_as_Attributes.md +7 -0
  832. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/161_GuidePreference_Properties_Represented_as_Elements.md +3 -0
  833. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/162_PasteboardPreference_Properties_Represented_as_Attributes.md +3 -0
  834. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/163_PasteboardPreference_Properties_Represented_as_Elements.md +5 -0
  835. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/164_ViewPreference_Properties_Represented_as_Attributes.md +20 -0
  836. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/165_Print_Preference_Properties_Represented_as_Attributes.md +104 -0
  837. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/166_Print_Preference_Properties_Represented_as_Elements.md +15 -0
  838. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/167_Cjk_Grid_Preference_Properties_Represented_as_Attributes.md +11 -0
  839. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/168_Cjk_Grid_Preference_Properties_Represented_as_Elements.md +3 -0
  840. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/169_Mojikumi_Ui_Preference_Properties_Represented_as_Attributes.md +3 -0
  841. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/170_Chapter_Number_Preference_Properties_Represented_as_Attributes.md +4 -0
  842. data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/171_Chapter_Number_Preference_Properties_Represented_as_Elements.md +3 -0
  843. data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/001_paragraph_style_self_attribute.md +3 -0
  844. data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/002_paragraph_style_group_nested.md +3 -0
  845. data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/089_paragraph_style_group.md +14 -0
  846. data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/090_based_on_no_paragraph_style.md +3 -0
  847. data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/091_based_on_another_style.md +4 -0
  848. data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/092_nested_style.md +3 -0
  849. data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/093_character_style_group.md +4 -0
  850. data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/094_object_style.md +3 -0
  851. data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/095_toc_style.md +10 -0
  852. data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/096_trap_preset.md +3 -0
  853. data/reference-docs/spec/10_idml_file_reference/10_8_styles/images/10_8_styles_img001.png +0 -0
  854. data/reference-docs/spec/10_idml_file_reference/10_8_styles/images/10_8_styles_img002.png +0 -0
  855. data/reference-docs/spec/10_idml_file_reference/10_8_styles/images/10_8_styles_img003.png +0 -0
  856. data/reference-docs/spec/10_idml_file_reference/10_8_styles/images/10_8_styles_img004.png +0 -0
  857. data/reference-docs/spec/10_idml_file_reference/10_8_styles/images/10_8_styles_img005.png +0 -0
  858. data/reference-docs/spec/10_idml_file_reference/10_8_styles/images/10_8_styles_img006.png +0 -0
  859. data/reference-docs/spec/10_idml_file_reference/10_8_styles/index.md +1154 -0
  860. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/150_paragraphstylegroup.rnc +9 -0
  861. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/151_paragraphstyle.rnc +510 -0
  862. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/152_nestedstyle.rnc +19 -0
  863. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/153_characterstylegroup.rnc +7 -0
  864. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/154_characterstyle.rnc +255 -0
  865. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/155_styleexporttagmap.rnc +7 -0
  866. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/156_tablestylegroup.rnc +9 -0
  867. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/157_tablestyle.rnc +118 -0
  868. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/158_cellstylegroup.rnc +7 -0
  869. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/159_cellstyle.rnc +135 -0
  870. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/160_objectstylegroup.rnc +9 -0
  871. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/161_objectstyle.rnc +79 -0
  872. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/162_objectstyleobjecteffectscategorysettings.rnc +12 -0
  873. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/163_objectstyle_effects_category_settings.rnc +12 -0
  874. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/164_objectstyle_effects_category_settings.rnc +12 -0
  875. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/165_objectstyle_effects_category_settings.rnc +12 -0
  876. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/166_tocstyle_tocstyleentry.rnc +16 -0
  877. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/167_tocstyle_tocstyleentry.rnc +22 -0
  878. data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/168_trappreset.rnc +21 -0
  879. data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/172_paragraph_style_properties_represented_as_attributes.md +5 -0
  880. data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/173_paragraph_style_properties_represented_as_elements.md +3 -0
  881. data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/174_nestedstyle_properties_represented_as_elements.md +6 -0
  882. data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/175_characterstyle_properties_represented_as_attributes.md +7 -0
  883. data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/176_characterstyle_properties_represented_as_elements.md +3 -0
  884. data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/177_styleexporttagmap_properties_represented_as_attributes.md +6 -0
  885. data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/178_tablestyle_properties_represented_as_attributes.md +109 -0
  886. data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/179_tablestyle_properties_represented_as_elements.md +3 -0
  887. data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/180_cellstyle_properties_represented_as_elements.md +3 -0
  888. data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/181_tocstyle_properties_represented_as_attributes.md +11 -0
  889. data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/182_tocstyle_entry_properties_represented_as_attributes.md +8 -0
  890. data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/183_tocstyleentry_properties_represented_as_elements.md +7 -0
  891. data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/184_trappreset_properties_represented_as_attributes.md +17 -0
  892. data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/examples/97_example_backingstory.md +1 -0
  893. data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/index.md +101 -0
  894. data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/schemas/169_BackingStory.rnc +4 -0
  895. data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/schemas/170_XMLElement.rnc +37 -0
  896. data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/schemas/171_XMLAttribute.rnc +5 -0
  897. data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/schemas/172_XMLInstruction.rnc +5 -0
  898. data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/schemas/173_XMLComment.rnc +4 -0
  899. data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/schemas/174_DTD.rnc +13 -0
  900. data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/tables/185_XMLElement_Properties_Represented_as_Attributes.md +7 -0
  901. data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/tables/186_XMLAttribute_Properties_Represented_as_Attributes.md +6 -0
  902. data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/tables/187_XMLInstruction_Properties_Represented_as_Attributes.md +7 -0
  903. data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/tables/188_XMLComment_Properties_Represented_as_Attributes.md +6 -0
  904. data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/tables/189_DTD_Properties_Represented_as_Attributes.md +5 -0
  905. data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/tables/190_DTD_Properties_Represented_as_Elements.md +5 -0
  906. data/reference-docs/spec/appendix/00_index.md +7 -0
  907. data/reference-docs/spec/appendix/a_appendix.md +467 -0
  908. data/reference-docs/spec/appendix/b_appendix.md +81 -0
  909. data/reference-docs/spec/appendix/c_appendix.md +3192 -0
  910. data/reference-docs/spec/appendix/d_appendix.md +7 -0
  911. data/reference-docs/spec/appendix/e_appendix.md +224 -0
  912. data/scripts/assemble_element.rb +90 -0
  913. data/scripts/assemble_part.rb +57 -0
  914. data/scripts/build_elements_autoloads.rb +46 -0
  915. data/scripts/generate_all_objects.rb +38 -0
  916. data/scripts/rnc_to_lutaml.rb +114 -0
  917. metadata +1043 -0
@@ -0,0 +1,29 @@
1
+ # TODO PDF 08: PDF text operators
2
+
3
+ ## Goal
4
+
5
+ Map positioned glyphs from the text engine to PDF text-showing
6
+ operators in a content stream.
7
+
8
+ ## Acceptance criteria
9
+
10
+ - [ ] `Idml::Render::Text` takes an Array of positioned glyphs and
11
+ produces PDF text operators.
12
+ - [ ] `BT` (begin text), `ET` (end text).
13
+ - [ ] `Tf` (set font: `/FontName size Tf`).
14
+ - [ ] `Td` or `Tm` (set text position).
15
+ - [ ] `Tj` (show text string).
16
+ - [ ] `TJ` (show text array with per-glyph kerning adjustments).
17
+ - [ ] Color operators from TODO 06 inside the BT/ET block.
18
+ - [ ] Spec: render "Hello World" at (72, 720) in 12pt → verify
19
+ the operator sequence.
20
+
21
+ ## Files
22
+
23
+ - `lib/idml/render/text.rb`
24
+ - `spec/idml/render/text_spec.rb`
25
+
26
+ ## Dependencies
27
+
28
+ - TODOs 01–05 (text engine).
29
+ - TODO 06 (Color).
@@ -0,0 +1,34 @@
1
+ # TODO PDF 09: Image embedding
2
+
3
+ ## Goal
4
+
5
+ Resolve IDML image links and embed them as PDF XObject images.
6
+
7
+ ## Acceptance criteria
8
+
9
+ - [ ] `Idml::Render::Image` resolves the `href` attribute on Image
10
+ page items to a file path.
11
+ - [ ] Supports JPEG and PNG (the two most common IDML image formats).
12
+ - [ ] Creates a PDF image XObject with the correct color space
13
+ (DeviceRGB for color, DeviceGray for grayscale).
14
+ - [ ] Positions the image using the page item's GeometricBounds
15
+ and ItemTransform.
16
+ - [ ] Spec: embed a known JPEG into a PDF page.
17
+
18
+ ## Files
19
+
20
+ - `lib/idml/render/image.rb`
21
+ - `spec/idml/render/image_spec.rb`
22
+
23
+ ## Design notes
24
+
25
+ - IDML stores image links relative to the IDML file's location.
26
+ The Package doesn't contain the images themselves (unless it's
27
+ an InDesign Package, which is a different ZIP structure).
28
+ - For now, accept the image path as-is. If the file doesn't exist,
29
+ skip the image (don't error).
30
+
31
+ ## Dependencies
32
+
33
+ - pdfrb XObject support (or raw PDF stream writing).
34
+ - Typed Spread/Image element classes (when added to SpreadObject).
@@ -0,0 +1,33 @@
1
+ # TODO PDF 10: Spread renderer
2
+
3
+ ## Goal
4
+
5
+ Render an IDML Spread (all its page items) into a single PDF page's
6
+ content stream.
7
+
8
+ ## Acceptance criteria
9
+
10
+ - [ ] `Idml::Render::SpreadRenderer.new(spread:, font_resolver:,`
11
+ `color_index:)` renders every page item.
12
+ - [ ] Page items rendered in z-order (back to front, as they appear
13
+ in the Spread XML).
14
+ - [ ] Rectangle/Polygon → path operators (TODO 07).
15
+ - [ ] TextFrame → text engine (TODOs 01–05) + text operators
16
+ (TODO 08).
17
+ - [ ] Image → image XObject (TODO 09).
18
+ - [ ] Groups rendered recursively.
19
+ - [ ] Page boundaries (GeometricBounds) set the PDF page's
20
+ MediaBox.
21
+ - [ ] Spec: render a one-page fixture, verify the output PDF opens
22
+ and shows the expected content.
23
+
24
+ ## Files
25
+
26
+ - `lib/idml/render/spread_renderer.rb`
27
+ - `lib/idml/render.rb` — module + autoloads.
28
+ - `spec/idml/render/spread_renderer_spec.rb`
29
+
30
+ ## Dependencies
31
+
32
+ - TODOs 06–09.
33
+ - Typed Spread element classes (done).
@@ -0,0 +1,38 @@
1
+ # TODO PDF 11: Font embedding
2
+
3
+ ## Goal
4
+
5
+ Embed font subsets in the output PDF so the rendered text is
6
+ portable (not dependent on the viewer having the font installed).
7
+
8
+ ## Acceptance criteria
9
+
10
+ - [ ] Collect every unique font used across all rendered text.
11
+ - [ ] Subset each font to only the glyphs actually used (reduces
12
+ file size dramatically).
13
+ - [ ] Embed as PDF Font object (Type0 for OpenType, Type1 for
14
+ classic PostScript fonts).
15
+ - [ ] Build the font resource dictionary on each PDF page.
16
+ - [ ] Spec: render text, open the output PDF, verify the font is
17
+ embedded (check /FontFile2 or /FontFile3 entry).
18
+
19
+ ## Files
20
+
21
+ - `lib/idml/render/font_embedder.rb`
22
+ - `spec/idml/render/font_embedder_spec.rb`
23
+
24
+ ## Design notes
25
+
26
+ - Font subsetting is non-trivial: parse the font's `glyf` table,
27
+ extract only referenced glyphs, rebuild the table with new
28
+ glyph indices. `ttfunk` has some support for this.
29
+ - Alternative: embed the full font (larger but simpler). Start
30
+ with full embedding, add subsetting later.
31
+ - PDF/UA and PDF/A require embedded fonts. Regular PDF doesn't
32
+ strictly require it but rendering quality degrades without.
33
+
34
+ ## Dependencies
35
+
36
+ - TODO 01 (FontMetrics).
37
+ - TODO 08 (text operators — need to know which fonts are used).
38
+ - pdfrb font resource support.
@@ -0,0 +1,41 @@
1
+ # TODO PDF 12: IDML → PDF pipeline
2
+
3
+ ## Goal
4
+
5
+ Top-level pipeline: `Idml::Package` → `Pdfrb::Document` → PDF file.
6
+ Ties together the text engine, render layer, and pdfrb.
7
+
8
+ ## Acceptance criteria
9
+
10
+ - [ ] `Idml::Render.render(package:, to:, font_search_paths:)`
11
+ produces a PDF at the given path.
12
+ - [ ] For each Spread in the package, creates a PDF Page.
13
+ - [ ] Each Page rendered via SpreadRenderer (TODO 10).
14
+ - [ ] Fonts resolved via FontResolver (TODO 02) and embedded
15
+ (TODO 11).
16
+ - [ ] Colors resolved from Graphic.xml.
17
+ - [ ] Images resolved from href links (TODO 09).
18
+ - [ ] `Idml::CLI` gains a `render` subcommand:
19
+ `idml render path.idml -o output.pdf`.
20
+ - [ ] Spec: render the sample-with-image fixture, verify the
21
+ output PDF has the expected number of pages and is valid.
22
+
23
+ ## Files
24
+
25
+ - `lib/idml/render.rb` — top-level entry + autoloads.
26
+ - `lib/idml/render/pipeline.rb`
27
+ - `lib/idml/cli.rb` — add `render` subcommand.
28
+ - `spec/idml/render/pipeline_spec.rb`
29
+
30
+ ## Design notes
31
+
32
+ - The pipeline is the "director" — it doesn't do rendering itself;
33
+ it orchestrates FontResolver, SpreadRenderer, and pdfrb.
34
+ - Output quality will NOT match InDesign's export. This is an
35
+ approximation: basic shapes, left/justified text, no OpenType
36
+ features, no advanced paragraph composition. Documented gap.
37
+
38
+ ## Dependencies
39
+
40
+ - TODOs 01–11 (everything above).
41
+ - pdfrb gem (Canvas/content stream support).
@@ -0,0 +1,40 @@
1
+ # TODO PDF 13: CJK text layout
2
+
3
+ ## Goal
4
+
5
+ Extend the text engine to handle CJK (Chinese, Japanese, Korean)
6
+ text layout: vertical writing, Tate-Chu-Yoko, Ruby annotations,
7
+ kinsoku shori (line-breaking rules), and CJK-specific punctuation
8
+ handling.
9
+
10
+ ## Acceptance criteria
11
+
12
+ - [ ] CJK font metrics (square glyphs — equal advance width and
13
+ height).
14
+ - [ ] Vertical text mode (StoryOrientation = Vertical).
15
+ - [ ] Kinsoku shori (禁止処理): no line start/end with forbidden
16
+ characters.
17
+ - [ ] Tate-Chu-Yoko (縦中横): horizontal digits in vertical text.
18
+ - [ ] Ruby (ルビ) annotation positioning.
19
+ - [ ] Mojikumi (文字組) spacing classes.
20
+ - [ ] Spec: layout a Japanese paragraph in vertical mode.
21
+
22
+ ## Files
23
+
24
+ - `lib/idml/text_engine/cjk_layout.rb`
25
+ - `spec/idml/text_engine/cjk_layout_spec.rb`
26
+
27
+ ## Design notes
28
+
29
+ - CJK text layout is a significant expansion of the text engine.
30
+ It shares the Shaper and FontMetrics layers but needs its own
31
+ LineBreaker (kinsoku rules) and VerticalLayout (rotated glyphs).
32
+ - IDML documents the StoryOrientation attribute on StoryPreference.
33
+ Horizontal = LeftToRightDirection, Vertical = TopToBottom.
34
+ - This TODO is a stretch goal — most IDML → PDF use cases are
35
+ Latin-script. CJK users should use InDesign Server for
36
+ pixel-perfect output.
37
+
38
+ ## Dependencies
39
+
40
+ - TODOs 01–05 (text engine foundation).
@@ -0,0 +1,61 @@
1
+ # TODO PDF 14: Page-item element models
2
+
3
+ ## Goal
4
+
5
+ Create typed `Lutaml::Model::Serializable` subclasses for every page-item
6
+ element that appears inside a `<Spread>`. These are the geometric objects
7
+ the renderer must iterate over: Page, Rectangle, TextFrame, Image, Link,
8
+ Polygon, Group, GraphicLine, Ellipse.
9
+
10
+ ## Why
11
+
12
+ The `SpreadObject` model currently only carries attributes — it has no
13
+ typed references to its child page items. This forces the rendering
14
+ pipeline to fall back to regex on raw XML, violating the project's
15
+ "lutaml-model only" rule and making the pipeline fragile.
16
+
17
+ ## Acceptance criteria
18
+
19
+ - [ ] `Idml::Elements::Page` — child of Spread; carries GeometricBounds,
20
+ ItemTransform, AppliedMaster.
21
+ - [ ] `Idml::Elements::Rectangle` — FillColor, FillTint, StrokeColor,
22
+ StrokeWeight, ItemTransform, GeometricBounds (via Properties),
23
+ ContentType.
24
+ - [ ] `Idml::Elements::TextFrame` — ParentStory, ItemTransform,
25
+ ContentType, GeometricBounds, TextFrameOffset.
26
+ - [ ] `Idml::Elements::Image` — ItemTransform, Space, ActualPpi,
27
+ ImageTypeName.
28
+ - [ ] `Idml::Elements::Link` — LinkResourceURI, LinkResourceFormat.
29
+ - [ ] `Idml::Elements::Polygon` — ItemTransform, FillColor, PathPointArray.
30
+ - [ ] `Idml::Elements::Group` — ItemTransform, child page items.
31
+ - [ ] `Idml::Elements::GraphicLine` — ItemTransform, StrokeColor.
32
+ - [ ] Each class has a round-trip spec: `from_xml` → `to_xml` is equivalent.
33
+ - [ ] Each class is registered in `lib/idml/elements.rb` autoloads.
34
+
35
+ ## Files
36
+
37
+ - `lib/idml/elements/page.rb`
38
+ - `lib/idml/elements/rectangle.rb`
39
+ - `lib/idml/elements/text_frame.rb`
40
+ - `lib/idml/elements/image.rb`
41
+ - `lib/idml/elements/link.rb`
42
+ - `lib/idml/elements/polygon.rb`
43
+ - `lib/idml/elements/group.rb`
44
+ - `lib/idml/elements/graphic_line.rb`
45
+ - `spec/idml/elements/page_item_spec.rb` (or per-class specs)
46
+
47
+ ## Design notes
48
+
49
+ - Attribute lists come from `reference-docs/schemas/package/Spreads/Spread.rnc`
50
+ at the `*_Object` definitions (Rectangle_Object at line 3471, Page_Object
51
+ at line 4166, etc.). Only render-relevant attributes need to be declared
52
+ initially — the rest can be added incrementally.
53
+ - The `Image` element contains a `Link` child — `Image` should have
54
+ `attribute :link, Idml::Elements::Link, collection: true`.
55
+ - `Rectangle` and `TextFrame` can contain child `Image` elements (graphic
56
+ content placed inside a frame).
57
+ - Reserved Ruby names: `Self` → `self_attr`, `class` → `class_attr`, etc.
58
+
59
+ ## Dependencies
60
+
61
+ - TODO 14 is the foundation for TODOs 15–18.
@@ -0,0 +1,46 @@
1
+ # TODO PDF 15: Wire SpreadObject child elements
2
+
3
+ ## Goal
4
+
5
+ Extend `Idml::Elements::SpreadObject` to expose its child page items as
6
+ typed collections, and `Idml::Parts::Spread` to provide convenient
7
+ accessors for rendering.
8
+
9
+ ## Why
10
+
11
+ The `SpreadObject` currently maps only attributes. The rendering pipeline
12
+ needs to iterate over `page`, `rectangle`, `text_frame`, `image`, `polygon`
13
+ collections to render each item. Without typed child references, the
14
+ pipeline must parse raw XML.
15
+
16
+ ## Acceptance criteria
17
+
18
+ - [ ] `SpreadObject` declares `attribute :page, Idml::Elements::Page,
19
+ collection: true` and similarly for rectangle, text_frame, image,
20
+ polygon, group, graphic_line.
21
+ - [ ] The XML mapping uses `map_element "Page", to: :page` etc.
22
+ - [ ] The mapping uses `ordered` to preserve child-element z-order
23
+ (semantically meaningful in IDML — determines visual stacking).
24
+ - [ ] `Parts::Spread#each_page_item` yields each child element in document
25
+ order, regardless of type.
26
+ - [ ] Round-trip: `Parts::Spread.from_xml(xml).to_xml` is equivalent to
27
+ the original XML (for the modeled subset).
28
+ - [ ] Spec: load the sample fixture's Spread_ud1.xml and verify
29
+ `spread.spread.first.page.first.geometric_bounds` is populated.
30
+
31
+ ## Files
32
+
33
+ - `lib/idml/elements/spread_object.rb` (modify)
34
+ - `lib/idml/parts/spread.rb` (add `each_page_item`)
35
+ - `spec/idml/parts/spread_spec.rb`
36
+
37
+ ## Design notes
38
+
39
+ - `ordered` is critical: IDML z-order = child-element order. If the
40
+ mapping isn't ordered, lutaml-model may reorder children on round-trip.
41
+ - The `Properties` child element (Label/KeyValuePair) is metadata, not
42
+ a page item — it should not appear in `each_page_item`.
43
+
44
+ ## Dependencies
45
+
46
+ - TODO 14 (page-item element models).
@@ -0,0 +1,48 @@
1
+ # TODO PDF 16: Typed-model rendering pipeline
2
+
3
+ ## Goal
4
+
5
+ Replace the regex-based image extraction and hardcoded page dimensions
6
+ in the rendering pipeline with typed-model iteration. The Pipeline should
7
+ read typed `Parts::Spread` instances and iterate over `SpreadObject`'s
8
+ child page items.
9
+
10
+ ## Why
11
+
12
+ The current `Pipeline#collect_images` calls `Render::Image.extract_from_spread`
13
+ with raw XML and regex. This violates the "lutaml-model only" rule and
14
+ is fragile (regex can't handle nested elements, attribute ordering, or
15
+ namespace prefixes robustly).
16
+
17
+ ## Acceptance criteria
18
+
19
+ - [ ] `Pipeline#call` iterates over `package.spreads` (typed `Parts::Spread`).
20
+ - [ ] Image extraction uses `spread.spread.first` (SpreadObject) →
21
+ iterate child elements → find `Image` → access `link.first.link_resource_uri`.
22
+ - [ ] No raw XML reading in the Pipeline for modeled parts.
23
+ - [ ] Page dimensions come from the `Page` element's `GeometricBounds`,
24
+ not a hardcoded constant.
25
+ - [ ] `Render::Image.extract_from_spread` is removed or deprecated;
26
+ the typed path replaces it.
27
+ - [ ] Spec: Pipeline produces the same PDF structure as before (images
28
+ embedded, valid PDF header/trailer).
29
+
30
+ ## Files
31
+
32
+ - `lib/idml/render/pipeline.rb` (rewrite iteration)
33
+ - `lib/idml/render/image.rb` (remove `extract_from_spread` or mark deprecated)
34
+ - `lib/idml/render/spread_renderer.rb` (accept typed SpreadObject)
35
+ - `spec/idml/render/pipeline_spec.rb`
36
+
37
+ ## Design notes
38
+
39
+ - The `Page` element's `GeometricBounds` is `y1 x1 y2 x2` (top-left,
40
+ bottom-right in spread coordinates). Page width = x2 - x1,
41
+ height = y2 - y1.
42
+ - The Page's `ItemTransform` translates page-local coords to spread coords.
43
+ - For images inside Rectangles: iterate Rectangle → check ContentType ==
44
+ "GraphicType" → find child Image → get Link.
45
+
46
+ ## Dependencies
47
+
48
+ - TODOs 14, 15 (element models + SpreadObject wiring).
@@ -0,0 +1,46 @@
1
+ # TODO PDF 17: Shape rendering
2
+
3
+ ## Goal
4
+
5
+ Render IDML page-item shapes (Rectangle, Polygon, GraphicLine, Ellipse)
6
+ as PDF path operators with fill and stroke colors.
7
+
8
+ ## Why
9
+
10
+ Currently only images are rendered — page-item geometry (colored
11
+ rectangles, borders, backgrounds) is invisible in the output PDF.
12
+
13
+ ## Acceptance criteria
14
+
15
+ - [ ] `SpreadRenderer` iterates all page items and dispatches to
16
+ type-specific renderers.
17
+ - [ ] Rectangle: emits `re` (rectangle) operator with fill (`f`) and/or
18
+ stroke (`S`) based on FillColor/StrokeColor presence.
19
+ - [ ] Polygon: emits `m`/`l` path operators from PathPointArray.
20
+ - [ ] GraphicLine: emits open path with stroke only.
21
+ - [ ] Colors resolved from Resources/Graphic.xml (Color/Swatch names → RGB/CMYK).
22
+ - [ ] ItemTransform applied via `cm` operator.
23
+ - [ ] Spec: render a Rectangle with known fill color, verify PDF
24
+ contains the `rg` (fill RGB) and `re` operators.
25
+
26
+ ## Files
27
+
28
+ - `lib/idml/render/shape_renderer.rb` (new)
29
+ - `lib/idml/render/spread_renderer.rb` (dispatch to ShapeRenderer)
30
+ - `lib/idml/render/color_resolver.rb` (new — resolves color names to values)
31
+ - `spec/idml/render/shape_renderer_spec.rb`
32
+
33
+ ## Design notes
34
+
35
+ - Renderer dispatch should use a registry (OCP): adding a new page-item
36
+ type = registering a renderer, not editing a switch statement.
37
+ - Color resolution: IDML color names like "Color/Red" reference entries
38
+ in Resources/Graphic.xml. The resolver looks up the Color element by
39
+ Self attribute and returns RGB or CMYK values.
40
+ - GeometricBounds for Rectangle: `y1 x1 y2 x2` → PDF rectangle at
41
+ `(x1, page_height - y2)` with width `x2 - x1`, height `y2 - y1`.
42
+
43
+ ## Dependencies
44
+
45
+ - TODOs 14–16 (element models + typed pipeline).
46
+ - TODO 22 (color resolution).
@@ -0,0 +1,48 @@
1
+ # TODO PDF 18: Text rendering from stories
2
+
3
+ ## Goal
4
+
5
+ Wire the text engine to actual IDML story content. Extract text from
6
+ Stories, map them to TextFrame positions, and render via the text engine
7
+ pipeline (Shaper → LineBreaker → Justifier → VerticalLayout).
8
+
9
+ ## Why
10
+
11
+ The text engine exists (TODOs 01–05) but `SpreadRenderer#render_stories`
12
+ returns "". No text appears in the output PDF.
13
+
14
+ ## Acceptance criteria
15
+
16
+ - [ ] For each TextFrame on a spread, resolve `ParentStory` to a
17
+ `Parts::Story` via `package.story_by_id(story_id)`.
18
+ - [ ] Extract text content from the Story's ParagraphStyleRange →
19
+ CharacterStyleRange → Content chain.
20
+ - [ ] Pass styled text runs through the text engine (Shaper → LineBreaker
21
+ → Justifier → VerticalLayout).
22
+ - [ ] Emit PDF text operators (BT/Tf/Td/Tj/ET) for positioned glyphs.
23
+ - [ ] TextFrame inset margins (TextFrameOffset) respected by the layout.
24
+ - [ ] Spec: render a TextFrame with known text, verify PDF contains
25
+ the text string in a Tj operator.
26
+
27
+ ## Files
28
+
29
+ - `lib/idml/render/text_renderer.rb` (new)
30
+ - `lib/idml/render/spread_renderer.rb` (dispatch to TextRenderer)
31
+ - `lib/idml/package.rb` (add `story_by_id`)
32
+ - `spec/idml/render/text_renderer_spec.rb`
33
+
34
+ ## Design notes
35
+
36
+ - Story text extraction: `CharacterStyleRange#text_content` already
37
+ exists and recursively joins Content elements.
38
+ - Font/size from CharacterStyleRange: `applied_font`, `point_size`,
39
+ `fill_color` attributes.
40
+ - The TextFrame's ItemTransform + GeometricBounds gives the frame
41
+ rectangle; the text engine lays out within it (minus insets).
42
+ - For now, handle single-style runs. Multi-style (mixed fonts/sizes in
43
+ one line) is a stretch goal.
44
+
45
+ ## Dependencies
46
+
47
+ - TODOs 14–16 (element models + typed pipeline).
48
+ - TODO 02 (FontResolver).
@@ -0,0 +1,40 @@
1
+ # TODO PDF 19: Page dimensions from IDML
2
+
3
+ ## Goal
4
+
5
+ Derive PDF page width and height from the IDML document's Page element
6
+ GeometricBounds, rather than using the hardcoded US Letter (612×792)
7
+ constant.
8
+
9
+ ## Why
10
+
11
+ IDML documents can be any size (A4, business card, poster, etc.).
12
+ Hardcoding 612×792 produces incorrect layouts for non-Letter documents.
13
+
14
+ ## Acceptance criteria
15
+
16
+ - [ ] `Parts::Spread#page_dimensions` returns `[{ width:, height: }]`
17
+ for each Page in the spread.
18
+ - [ ] Dimensions derived from `Page#geometric_bounds` (y1 x1 y2 x2 format).
19
+ - [ ] Pipeline passes per-page dimensions to `PdfWriter#add_page`.
20
+ - [ ] Spec: load the sample fixture, verify page dimensions match
21
+ the fixture's actual page size (612×792 for US Letter).
22
+
23
+ ## Files
24
+
25
+ - `lib/idml/parts/spread.rb` (add `page_dimensions`)
26
+ - `lib/idml/render/pipeline.rb` (use per-page dimensions)
27
+ - `spec/idml/parts/spread_spec.rb`
28
+
29
+ ## Design notes
30
+
31
+ - `GeometricBounds="0 0 792 612"` means y1=0, x1=0, y2=792, x2=612.
32
+ Width = x2 - x1 = 612, Height = y2 - y1 = 792.
33
+ - A spread can contain multiple pages (two-page spread). Each Page
34
+ element has its own GeometricBounds.
35
+ - The PDF has one page per IDML spread (current behavior). Multi-page
36
+ spreads render as a single PDF page encompassing all spread pages.
37
+
38
+ ## Dependencies
39
+
40
+ - TODOs 14–15 (Page element model + SpreadObject wiring).
@@ -0,0 +1,43 @@
1
+ # TODO PDF 20: PNG image support
2
+
3
+ ## Goal
4
+
5
+ Extend image embedding to support PNG files in addition to JPEG.
6
+ PNG images are embedded as PDF XObjects with the FlateDecode filter.
7
+
8
+ ## Why
9
+
10
+ IDML documents commonly reference PNG images (screenshots, graphics
11
+ with transparency). Currently only JPEG is supported.
12
+
13
+ ## Acceptance criteria
14
+
15
+ - [ ] `Render::Image.detect_format(data)` returns `:jpeg` or `:png`
16
+ based on magic bytes.
17
+ - [ ] `Render::Image.png_dimensions(data)` reads IHDR chunk for
18
+ width/height.
19
+ - [ ] `PdfWriter#add_png_image(data:, width:, height:, colorspace:)`
20
+ creates an XObject with `/Filter /FlateDecode`.
21
+ - [ ] Pipeline detects format and calls the appropriate writer method.
22
+ - [ ] Spec: embed a known PNG, verify `/Subtype /Image` and
23
+ `/Filter /FlateDecode` in output.
24
+
25
+ ## Files
26
+
27
+ - `lib/idml/render/image.rb` (add PNG parsing)
28
+ - `lib/idml/render/pdf_writer.rb` (add `add_png_image`)
29
+ - `lib/idml/render/pipeline.rb` (format detection)
30
+ - `spec/idml/render/image_spec.rb`
31
+
32
+ ## Design notes
33
+
34
+ - PNG magic bytes: `\x89PNG\r\n\x1a\n` (8 bytes).
35
+ - IHDR chunk: starts at byte offset 8, length=13, width (4 bytes BE),
36
+ height (4 bytes BE), bit depth, color type.
37
+ - Color type mapping: 0 → DeviceGray, 2 → DeviceRGB, 3 → Indexed,
38
+ 4 → DeviceGray (alpha), 6 → DeviceRGB (alpha).
39
+ - PNG with alpha needs SMask (soft mask) XObject — stretch goal.
40
+
41
+ ## Dependencies
42
+
43
+ - TODO 09 (image embedding foundation).
@@ -0,0 +1,41 @@
1
+ # TODO PDF 21: Coordinate transform utility
2
+
3
+ ## Goal
4
+
5
+ Centralize IDML-to-PDF coordinate system conversion in a dedicated
6
+ `Idml::Geometry::CoordinateTransform` class. Currently the Y-flip logic
7
+ is scattered across `Render::Image.compute_placement` and inline code.
8
+
9
+ ## Why
10
+
11
+ IDML uses a top-left origin with Y growing downward. PDF uses a
12
+ bottom-left origin with Y growing upward. This conversion is needed
13
+ for every page item (images, shapes, text). Scattering it leads to
14
+ inconsistency and bugs.
15
+
16
+ ## Acceptance criteria
17
+
18
+ - [ ] `Idml::Geometry::CoordinateTransform` class.
19
+ - [ ] `transform(point)` converts an IDML (x, y) to PDF (x, y).
20
+ - [ ] `transform_bounds(bounds)` converts GeometricBounds to a PDF rectangle.
21
+ - [ ] `combine_transforms(*matrices)` multiplies ItemTransform matrices.
22
+ - [ ] All render modules use this class instead of inline math.
23
+ - [ ] Spec: known transform values produce expected PDF coordinates.
24
+
25
+ ## Files
26
+
27
+ - `lib/idml/geometry.rb` (add autoload)
28
+ - `lib/idml/geometry/coordinate_transform.rb`
29
+ - `lib/idml/render/image.rb` (refactor to use CoordinateTransform)
30
+ - `spec/idml/geometry/coordinate_transform_spec.rb`
31
+
32
+ ## Design notes
33
+
34
+ - The transform takes `page_height` as a parameter (for Y-flip).
35
+ - ItemTransform matrices are `a b c d e f` — 2D affine. Matrix
36
+ multiplication combines parent + child transforms.
37
+ - The Page element's ItemTransform translates page-local to spread coords.
38
+
39
+ ## Dependencies
40
+
41
+ - None (can be done independently).
@@ -0,0 +1,41 @@
1
+ # TODO PDF 22: Color resolution from Resources
2
+
3
+ ## Goal
4
+
5
+ Resolve IDML color references (e.g., "Color/Red", "Color/c0m100y100k0")
6
+ to concrete RGB or CMYK values using the Resources/Graphic.xml part.
7
+
8
+ ## Why
9
+
10
+ Page items and text runs reference colors by name. To render fills,
11
+ strokes, and text colors, we need to look up the color definition in
12
+ Resources/Graphic.xml and extract its component values.
13
+
14
+ ## Acceptance criteria
15
+
16
+ - [ ] `Idml::Render::ColorResolver` class.
17
+ - [ ] Initialized with a `Parts::Graphic` (typed Resources/Graphic.xml).
18
+ - [ ] `resolve(name)` returns `{ model: :rgb, r:, g:, b: }` or
19
+ `{ model: :cmyk, c:, m:, y:, k: }` or nil if not found.
20
+ - [ ] Handles IDML color name format: `Color/<name>`, `Swatch/<name>`.
21
+ - [ ] Space-separated RGB values (0–255) and CMYK values (0–100) in
22
+ the Color element's `ColorValue` attribute.
23
+ - [ ] Spec: resolve a known color from the fixture's Graphic.xml.
24
+
25
+ ## Files
26
+
27
+ - `lib/idml/render/color_resolver.rb`
28
+ - `lib/idml/elements/color.rb` (verify ColorValue attribute exists)
29
+ - `spec/idml/render/color_resolver_spec.rb`
30
+
31
+ ## Design notes
32
+
33
+ - Resources/Graphic.xml contains `<Color Self="Color/Red" Model="RGB"
34
+ ColorValue="255 0 0" />` entries.
35
+ - Color names are case-sensitive, prefixed with `Color/` or `Swatch/`.
36
+ - The `[None]` and `[Registration]` colors are special: `[None]` = no
37
+ fill, `[Registration]` = 100% all channels (registration mark black).
38
+
39
+ ## Dependencies
40
+
41
+ - TODO 06 (PDF color operators).