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,20 @@
1
+ # TODO PDF 41: GraphicLine rendering
2
+
3
+ ## Goal
4
+
5
+ Implement `GraphicLineRenderer` to render IDML `<GraphicLine>` elements as
6
+ stroked PDF paths using PathPointArray vertices.
7
+
8
+ ## Acceptance criteria
9
+
10
+ - [ ] GraphicLineRenderer emits `m` (move) + `l` (line-to) operators.
11
+ - [ ] StrokeColor resolved via ColorResolver.
12
+ - [ ] StrokeWeight applied via `Path.stroke_width`.
13
+ - [ ] ItemTransform applied to path coordinates.
14
+ - [ ] Y-axis flip via `Geometry.bounds_to_pdf_rect`.
15
+ - [ ] Spec: render a GraphicLine with known endpoints, verify `m`/`l`/`S` in PDF.
16
+
17
+ ## Dependencies
18
+
19
+ - TODO 28 (PathGeometry models).
20
+ - TODO 31 (stroke rendering).
@@ -0,0 +1,17 @@
1
+ # TODO PDF 42: Group transform application
2
+
3
+ ## Goal
4
+
5
+ Apply a Group's ItemTransform to all child page items during rendering.
6
+ Currently GroupRenderer renders children without the Group's transform.
7
+
8
+ ## Acceptance criteria
9
+
10
+ - [ ] GroupRenderer applies Group#item_transform via `cm` operator.
11
+ - [ ] Child items rendered within the transformed coordinate space.
12
+ - [ ] Nested groups (Group within Group) handled recursively.
13
+ - [ ] Spec: render a Group with offset transform, verify children shift.
14
+
15
+ ## Dependencies
16
+
17
+ - TODO 26 (renderer registry).
@@ -0,0 +1,17 @@
1
+ # TODO PDF 43: Text frame insets
2
+
3
+ ## Goal
4
+
5
+ Respect `TextFramePreference` inset margins (InsetTop, InsetLeft,
6
+ InsetBottom, InsetRight) when laying out text within a TextFrame.
7
+
8
+ ## Acceptance criteria
9
+
10
+ - [ ] TextFramePreference model has inset attributes (add if missing).
11
+ - [ ] TextFrame exposes `text_frame_preference` child.
12
+ - [ ] TextFrameRenderer subtracts insets from frame bounds before layout.
13
+ - [ ] Spec: TextFrame with InsetTop=20, verify text starts 20pt below frame top.
14
+
15
+ ## Dependencies
16
+
17
+ - TODO 27 (text engine integration).
@@ -0,0 +1,20 @@
1
+ # TODO PDF 44: Layer support
2
+
3
+ ## Goal
4
+
5
+ Parse Layer definitions from designmap.xml. Each page item's
6
+ `ItemLayer` attribute determines visibility. Items on hidden layers
7
+ are skipped during rendering.
8
+
9
+ ## Acceptance criteria
10
+
11
+ - [ ] `Idml::Elements::Layer` model with Self, Name, Visible, Locked attrs.
12
+ - [ ] Designmap has `layer` collection attribute.
13
+ - [ ] Pipeline passes layer visibility map to SpreadRenderer.
14
+ - [ ] Page items with `ItemLayer` referencing a hidden layer are skipped.
15
+ - [ ] Items without ItemLayer are always rendered.
16
+ - [ ] Spec: hide a layer, verify its items absent from PDF.
17
+
18
+ ## Dependencies
19
+
20
+ - TODO 16 (typed-model pipeline).
@@ -0,0 +1,17 @@
1
+ # TODO PDF 45: Image clipping
2
+
3
+ ## Goal
4
+
5
+ Clip placed images to their parent Rectangle's bounds. Currently
6
+ images can overflow the containing frame.
7
+
8
+ ## Acceptance criteria
9
+
10
+ - [ ] PdfWriter supports clip paths (W/W* operators in content stream).
11
+ - [ ] ImageRenderer emits clip path before drawing image.
12
+ - [ ] Clip path derived from parent Rectangle's PathGeometry.
13
+ - [ ] Spec: image inside a small Rectangle, verify clip operators present.
14
+
15
+ ## Dependencies
16
+
17
+ - TODO 28 (PathGeometry).
@@ -0,0 +1,19 @@
1
+ # TODO PDF 46: Spread-to-page separation
2
+
3
+ ## Goal
4
+
5
+ Render each IDML Page as a separate PDF page (currently one PDF page
6
+ per spread). Multi-page spreads produce multiple PDF pages.
7
+
8
+ ## Acceptance criteria
9
+
10
+ - [ ] Pipeline iterates Pages within each Spread.
11
+ - [ ] Each Page gets its own `writer.add_page` with correct dimensions.
12
+ - [ ] Page items clipped/translated to page-local coordinates.
13
+ - [ ] Master spread items rendered per-page (respecting AppliedMaster).
14
+ - [ ] Spec: 2-page spread produces 2 PDF pages.
15
+
16
+ ## Dependencies
17
+
18
+ - TODO 19 (page dimensions).
19
+ - TODO 32 (master spread rendering).
@@ -0,0 +1,17 @@
1
+ # TODO PDF 47: PDF bookmarks/outlines
2
+
3
+ ## Goal
4
+
5
+ Generate PDF outline (bookmark) entries from the document's XML
6
+ structure or heading paragraph styles.
7
+
8
+ ## Acceptance criteria
9
+
10
+ - [ ] PdfWriter builds an Outlines tree referenced from Catalog.
11
+ - [ ] Outline entries link to page destinations.
12
+ - [ ] Pipeline extracts headings from ParagraphStyleRange with heading styles.
13
+ - [ ] Spec: PDF with 3 chapters, verify 3 outline entries.
14
+
15
+ ## Dependencies
16
+
17
+ - TODO 35 (PDF metadata).
@@ -0,0 +1,20 @@
1
+ # TODO PDF 48: Table rendering
2
+
3
+ ## Goal
4
+
5
+ Render IDML tables (TableRow, TableCell elements within Stories) as
6
+ PDF table structures with cell borders, backgrounds, and inline text.
7
+
8
+ ## Acceptance criteria
9
+
10
+ - [ ] Table, TableRow, TableCell element models from RNC.
11
+ - [ ] TableRenderer computes cell positions from column/row definitions.
12
+ - [ ] Cell borders rendered as stroked rectangles.
13
+ - [ ] Cell backgrounds rendered as filled rectangles.
14
+ - [ ] Cell text rendered via TextFrameRenderer logic.
15
+ - [ ] Spec: render a 2x2 table, verify 4 cells with borders.
16
+
17
+ ## Dependencies
18
+
19
+ - TODO 18 (text rendering).
20
+ - TODO 30 (shape geometry).
@@ -0,0 +1,20 @@
1
+ # TODO PDF 49: Gradient fill rendering
2
+
3
+ ## Goal
4
+
5
+ Render gradient fills on page items. IDML supports linear and radial
6
+ gradients via GradientStop entries in Resources/Graphic.xml.
7
+
8
+ ## Acceptance criteria
9
+
10
+ - [ ] PdfWriter supports shading patterns (Type 2/3).
11
+ - [ ] GradientResolver maps Gradient + GradientStop entries to PDF shading.
12
+ - [ ] RectangleRenderer/PolygonRenderer emit gradient fill when FillColor
13
+ references a Gradient.
14
+ - [ ] Linear and radial gradient types supported.
15
+ - [ ] Spec: render a Rectangle with linear gradient, verify shading dictionary.
16
+
17
+ ## Dependencies
18
+
19
+ - TODO 22 (ColorResolver).
20
+ - TODO 30 (shape geometry).
@@ -0,0 +1,21 @@
1
+ # TODO PDF 50: PDF/A compliance mode
2
+
3
+ ## Goal
4
+
5
+ Add a `--pdf-a` option that produces PDF/A-1a, PDF/A-2a, or PDF/A-3a
6
+ compliant output. Requires: all fonts embedded, ICC profiles, tagged
7
+ content, XMP metadata, no encryption.
8
+
9
+ ## Acceptance criteria
10
+
11
+ - [ ] Pipeline accepts a `compliance:` option (:pdfa1a, :pdfa2a, :pdfa3a).
12
+ - [ ] All fonts force-embedded (no Type1 base-14 fallback).
13
+ - [ ] ICC color profile embedded (sRGB for screen, FOGRA39 for print).
14
+ - [ ] XMP metadata packet in the PDF.
15
+ - [ ] Tagged content for accessibility (StructTreeRoot).
16
+ - [ ] Spec: produce a PDF/A-2a file, verify structure markers.
17
+
18
+ ## Dependencies
19
+
20
+ - TODO 11 (font embedding).
21
+ - TODO 35 (PDF metadata).
@@ -0,0 +1,41 @@
1
+ # TODO PDF 51: Remove dead code from pdfrb migration
2
+
3
+ ## Goal
4
+
5
+ Remove the old hand-rolled PDF modules that are superseded by pdfrb.
6
+ These modules are dead code — not referenced by any active code path.
7
+
8
+ ## Status: READY FOR CLEANUP
9
+
10
+ ## What to remove
11
+
12
+ - `lib/idml/render/pdf_writer.rb` — old hand-rolled PDF assembly (350+ lines)
13
+ - `lib/idml/render/font_embedder.rb` — old WinAnsiEncoding Widths builder
14
+ - `lib/idml/render/color.rb` — old PDF color operator string generators
15
+ - `lib/idml/render/path.rb` — old PDF path operator string generators
16
+ - `lib/idml/render/text.rb` — old PDF text operator string generators
17
+ - Dead methods in `image.rb`: `draw_image`, `extract_from_spread`,
18
+ `enclosing_transform` (regex-based extraction replaced by typed models)
19
+
20
+ ## What to keep
21
+
22
+ - `lib/idml/render/image.rb` utility functions: `resolve_path`,
23
+ `detect_format`, `jpeg_dimensions/colorspace`, `png_dimensions/colorspace`,
24
+ `png_idat_data`, `parse_transform`, `compute_placement`, `combine`,
25
+ `Transform`, `identity` — all still used by Pipeline
26
+ - `lib/idml/render/color_helper.rb` — converts ColorResolver hashes to
27
+ pdfrb Canvas color arrays
28
+ - All pdfrb-based code: `pdfrb_writer.rb`, `pdfrb_ext/`, renderers
29
+
30
+ ## Test cleanup
31
+
32
+ - Remove `spec/idml/render/render_spec.rb` describe blocks for Color,
33
+ Path, Text, PdfWriter (keep Pipeline describe block)
34
+ - Remove `spec/idml/render/font_embedder_spec.rb` entirely
35
+ - Remove dead-method tests from `spec/idml/render/image_spec.rb`
36
+ (`extract_from_spread`, `draw_image` tests)
37
+ - Update `render.rb` autoloads to remove old modules
38
+
39
+ ## Dependencies
40
+
41
+ - pdfrb migration must be complete (DONE).
@@ -0,0 +1,22 @@
1
+ # TODO PDF 52: Font subsetting via pdfrb
2
+
3
+ ## Goal
4
+
5
+ Subset embedded TrueType fonts to include only the glyphs actually used
6
+ in the document. This dramatically reduces PDF file size (from full font
7
+ ~500KB to subset ~5-20KB per font).
8
+
9
+ ## Acceptance criteria
10
+
11
+ - [ ] Pipeline collects all Unicode codepoints used across all stories.
12
+ - [ ] For each embedded font, only the used glyphs are included.
13
+ - [ ] FontFile2 contains a subsetted font table (not the full font).
14
+ - [ ] PDF file size significantly reduced vs full-font embedding.
15
+ - [ ] Spec: render text with known characters, verify embedded font
16
+ contains only those glyphs.
17
+
18
+ ## Dependencies
19
+
20
+ - pdfrb font embedding support (partial — font registration works,
21
+ FontFile2 embedding may require pdfrb enhancement).
22
+ - TODO 27 (text engine for glyph collection).
@@ -0,0 +1,24 @@
1
+ # TODO PDF 53: Tagged PDF for accessibility
2
+
3
+ ## Goal
4
+
5
+ Produce tagged PDF (PDF/UA) with a structure tree that maps page items
6
+ to logical structure elements (headings, paragraphs, figures, tables).
7
+ This enables screen readers and assistive technology to navigate the
8
+ document.
9
+
10
+ ## Acceptance criteria
11
+
12
+ - [ ] PdfWriter (or PdfrbWriter) builds a StructTreeRoot.
13
+ - [ ] Each TextFrame maps to a paragraph or heading structure element.
14
+ - [ ] Each Image maps to a figure structure element.
15
+ - [ ] Each Table maps to a table structure element with TR/TH/TD children.
16
+ - [ ] Structure elements have Alt text (from IDML XMLElement names).
17
+ - [ ] Marked-content sequences (BMC/EMC) wrap content in the content stream.
18
+ - [ ] Catalog references /MarkInfo and /StructTreeRoot.
19
+ - [ ] Spec: produce a tagged PDF, verify StructTreeRoot exists.
20
+
21
+ ## Dependencies
22
+
23
+ - pdfrb structure tree support.
24
+ - TODO 48 (table rendering).
@@ -0,0 +1,27 @@
1
+ # TODO PDF 54: pdfrb pipeline comprehensive specs
2
+
3
+ ## Goal
4
+
5
+ Comprehensive specs covering every aspect of the pdfrb-based rendering
6
+ pipeline: valid PDF structure, image embedding, page dimensions,
7
+ metadata, text rendering, shape rendering, font registration, and
8
+ structural validation (xref, object/endobj balance, trailer).
9
+
10
+ ## Status: DONE
11
+
12
+ ## What was implemented
13
+
14
+ 13 integration specs in `spec/idml/render/pdfrb_pipeline_spec.rb`:
15
+ - Valid PDF with pdfrb (header, trailer, Catalog, Pages, Page)
16
+ - JPEG image embedding (DCTDecode, Do operator)
17
+ - Correct MediaBox per page (612×792 from IDML Page GeometricBounds)
18
+ - Producer metadata ("idml gem v{VERSION}")
19
+ - CreationDate in PDF date format (D:YYYYMMDDHHMMSS)
20
+ - Text content rendering (BT/Tf/Tj/ET operators)
21
+ - Shape rendering (rectangle/fill operators)
22
+ - Font registration from Fonts.xml (/Font, /BaseFont)
23
+ - One PDF page per IDML page count
24
+ - xref section validation
25
+ - Trailer Root reference
26
+ - Object/endobj balance
27
+ - Pages tree kid count
@@ -0,0 +1,30 @@
1
+ # TODO PDF 55: Dead code deprecation markers
2
+
3
+ ## Goal
4
+
5
+ Mark old hand-rolled modules as deprecated. These modules are
6
+ superseded by pdfrb but cannot be deleted per the project's
7
+ "never delete source files" policy. Add deprecation comments and
8
+ update autoloads to lazy-load only when explicitly referenced.
9
+
10
+ ## Modules to deprecate
11
+
12
+ - `Idml::Render::PdfWriter` — replaced by `PdfrbWriter`
13
+ - `Idml::Render::FontEmbedder` — replaced by `PdfrbWriter.register_font`
14
+ - `Idml::Render::Color` — replaced by `ColorHelper` + Canvas fill_color
15
+ - `Idml::Render::Path` — replaced by Canvas drawing methods
16
+ - `Idml::Render::Text` — replaced by Canvas text method
17
+
18
+ ## Acceptance criteria
19
+
20
+ - [ ] Each deprecated module has a `# DEPRECATED` header comment pointing
21
+ to its pdfrb replacement.
22
+ - [ ] No active code path (Pipeline, SpreadRenderer, renderers) references
23
+ deprecated modules.
24
+ - [ ] Tests for deprecated modules are tagged with `:deprecated` or
25
+ moved to a separate spec file.
26
+ - [ ] `render.rb` autoloads keep the old modules for backward compatibility.
27
+
28
+ ## Dependencies
29
+
30
+ - pdfrb migration (DONE).
@@ -0,0 +1,33 @@
1
+ # TODO PDF 56: Text engine full integration with pdfrb Canvas
2
+
3
+ ## Goal
4
+
5
+ Re-integrate the text engine (Shaper → LineBreaker → Justifier →
6
+ VerticalLayout) into TextFrameRenderer using pdfrb Canvas. Each line
7
+ of shaped/broken text is emitted as a separate `canvas.text` call
8
+ at the computed baseline position.
9
+
10
+ ## Status: DONE
11
+
12
+ ## What was implemented
13
+
14
+ TextFrameRenderer has two rendering paths:
15
+ 1. **engine_render** (when FontMetrics available): shapes text via
16
+ Shaper, breaks lines via LineBreaker at frame width, positions
17
+ each line at decreasing baseline_y, emits `canvas.text` per line.
18
+ Lines beyond frame bottom are skipped.
19
+ 2. **simple_render** (fallback): one `canvas.text` per styled run at
20
+ sequential y positions.
21
+
22
+ The FontMetrics comes from `context.font_resolver.resolve(family_name:)`.
23
+ On systems where the default font is available as .ttf (not .ttc), the
24
+ text engine provides proper word-wrap.
25
+
26
+ ## Acceptance criteria
27
+
28
+ - [x] TextFrameRenderer tries FontResolver for metrics.
29
+ - [x] When metrics available: Shaper → LineBreaker → per-line canvas.text.
30
+ - [x] When metrics unavailable: simple one-text-per-run fallback.
31
+ - [x] Frame bounds respected (lines beyond frame bottom skipped).
32
+ - [x] Chain head check prevents duplicate text in overflow frames.
33
+ - [x] Text frame insets subtracted from frame box.
@@ -0,0 +1,26 @@
1
+ # TODO PDF 57: Image clipping via pdfrb Canvas
2
+
3
+ ## Goal
4
+
5
+ Clip placed images to their parent Rectangle's bounds using PDF clip
6
+ paths. Prevents image overflow beyond the containing frame.
7
+
8
+ ## Status: DONE
9
+
10
+ ## What was implemented
11
+
12
+ - `PdfrbExt::Clip` (PDF `W` operator) and `PdfrbExt::EndPath` (PDF `n`
13
+ operator) registered as pdfrb Content::Operator subclasses.
14
+ - `SpreadRenderer#apply_image_clip` emits a clip path from the parent
15
+ Rectangle's geometric_bounds before drawing the image.
16
+ - `Pipeline#parent_clip_box` computes the clip rectangle from the
17
+ parent page item's bounds via Geometry helpers.
18
+ - Image refs now carry a `clip_box` field; when present, the SpreadRenderer
19
+ clips before drawing.
20
+
21
+ ## Acceptance criteria
22
+
23
+ - [x] PdfrbExt::Clip and EndPath operators registered.
24
+ - [x] SpreadRenderer applies clip path when clip_box is present.
25
+ - [x] Pipeline computes clip_box from parent geometric_bounds.
26
+ - [x] All tests pass.
@@ -0,0 +1,23 @@
1
+ # TODO PDF 58: PDF bookmarks via pdfrb outline API
2
+
3
+ ## Goal
4
+
5
+ Generate PDF bookmark (outline) entries using pdfrb's outline API.
6
+ Each bookmark links to a page destination.
7
+
8
+ ## Status: DONE
9
+
10
+ ## What was implemented
11
+
12
+ - `PdfrbWriter#add_bookmark(title, page_index)` delegates to
13
+ `Pdfrb::Document#outline.add(title, dest: page)`.
14
+ - Available for Pipeline consumers to add bookmarks for headings or
15
+ sections.
16
+ - `PdfrbExt::Clip` and `PdfrbExt::EndPath` also added for image clipping
17
+ (TODO 57).
18
+
19
+ ## Acceptance criteria
20
+
21
+ - [x] PdfrbWriter#add_bookmark delegates to pdfrb outline API.
22
+ - [x] Anti-pattern spec passes (no new violations).
23
+ - [x] All tests pass.
@@ -0,0 +1,15 @@
1
+ # TODO PDF 59: DRY — shared placement_rect in Geometry
2
+
3
+ ## Goal
4
+
5
+ Eliminate duplication between Pipeline#parent_clip_box and
6
+ RectangleRenderer.placement_box. Both compute the same thing:
7
+ transform bounds by ItemTransform, convert to PDF rect with Y-flip.
8
+
9
+ ## Status: DONE
10
+
11
+ ## What was implemented
12
+
13
+ `Geometry.placement_rect(bounds, item_transform_str, page_height)` —
14
+ single method that parses transform, applies to bounds, and converts
15
+ to PDF rect. Used by both RectangleRenderer and Pipeline.
@@ -0,0 +1,16 @@
1
+ # TODO PDF 60: CLI PDF/A flag and compliance passthrough
2
+
3
+ ## Goal
4
+
5
+ Wire the compliance option from CLI through Render.render to Pipeline.
6
+ Add `--pdf-a` flag to the CLI render command.
7
+
8
+ ## Status: DONE
9
+
10
+ ## What was implemented
11
+
12
+ - `Render.render(compliance:)` keyword argument passes to Pipeline.
13
+ - `Pipeline.new(package, output, font_search_paths, compliance:)` keyword.
14
+ - `cli.rb render` command accepts `--pdf-a` boolean flag.
15
+ - When set, Pipeline calls `apply_compliance(writer)` which adds XMP
16
+ metadata and ICC OutputIntent for PDF/A-2a compliance.
@@ -0,0 +1,21 @@
1
+ # IDML → PDF Rendering TODOs
2
+
3
+ This directory tracks the work to render an IDML package to PDF
4
+ without InDesign Server. The pipeline has three layers:
5
+
6
+ 1. **Text engine** (TODOs 01–05): a pure-Ruby text layout engine
7
+ that takes styled text runs + frame geometry and produces
8
+ positioned glyphs. Uses font metrics from .ttf/.otf files.
9
+
10
+ 2. **PDF content stream** (TODOs 06–10): maps IDML page items
11
+ (shapes, text, colors, images) to PDF content-stream operators
12
+ using pdfrb's Document/Canvas API.
13
+
14
+ 3. **Pipeline** (TODOs 11–13): ties the text engine and PDF
15
+ output together. IDML Package → typed model → render plan →
16
+ pdfrb Document → PDF file.
17
+
18
+ The text engine is intentionally IDML-agnostic: it works on
19
+ styled text runs and frame geometry, not IDML-specific types.
20
+ This makes it reusable (e.g., for generating PDFs from scratch
21
+ or from other layout formats).
data/exe/idml ADDED
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ require "idml"
5
+ Idml::CLI.start(ARGV)
data/idml.gemspec ADDED
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "lib/idml/version"
4
+
5
+ all_files_in_git = Dir.chdir(File.expand_path(__dir__)) do
6
+ `git ls-files -z`.split("\x0")
7
+ end
8
+
9
+ Gem::Specification.new do |spec|
10
+ spec.name = "idml"
11
+ spec.version = Idml::VERSION
12
+ spec.authors = ["Ribose"]
13
+ spec.email = ["open.source@ribose.com"]
14
+
15
+ spec.summary = "Parse, manipulate, and round-trip Adobe IDML files."
16
+ spec.homepage = "https://github.com/metanorma/idml"
17
+ spec.license = "BSD-2-Clause"
18
+ spec.required_ruby_version = Gem::Requirement.new(">= 3.3.0")
19
+
20
+ spec.metadata["homepage_uri"] = spec.homepage
21
+ spec.metadata["source_code_uri"] = spec.homepage
22
+ spec.metadata["bug_tracker_uri"] = "#{spec.homepage}/issues"
23
+
24
+ spec.files = all_files_in_git
25
+ .reject { |f| f.match(%r{\A(?:test|spec|features|bin|\.)/}) }
26
+
27
+ spec.bindir = "exe"
28
+ spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
29
+ spec.require_paths = ["lib"]
30
+
31
+ spec.add_dependency "bigdecimal"
32
+ spec.add_dependency "fontisan"
33
+ spec.add_dependency "lutaml-model", "~> 0.8.18"
34
+ spec.add_dependency "pdfrb"
35
+ spec.add_dependency "rubyzip"
36
+ spec.add_dependency "thor"
37
+
38
+ spec.metadata["rubygems_mfa_required"] = "true"
39
+ end
data/lib/idml/cli.rb ADDED
@@ -0,0 +1,105 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "thor"
4
+
5
+ module Idml
6
+ # Command-line interface. Thin wrapper around the gem's public API —
7
+ # no business logic lives here. Each subcommand is a Thor method that
8
+ # delegates to Package, Document, Validation::Validator, or
9
+ # Composition::Prefix.
10
+ class CLI < Thor
11
+ desc "version", "Print the idml gem version"
12
+ def version
13
+ puts Idml::VERSION
14
+ end
15
+
16
+ desc "parts PATH", "List every part in the IDML package"
17
+ def parts(path)
18
+ package(path).part_names.each { |name| puts name }
19
+ end
20
+
21
+ desc "validate PATH", "Validate every schematized part against RNG"
22
+ def validate(path)
23
+ validator = Idml::Validation::Validator.new
24
+ results = validator.validate_package(package(path))
25
+ any_failure = print_validation_results(results)
26
+ exit 1 if any_failure
27
+ end
28
+
29
+ desc "round_trip PATH [-o OUTPUT]", "Extract every part and rezip"
30
+ method_option :output, aliases: "-o", type: :string, required: true
31
+ def round_trip(path)
32
+ pkg = package(path)
33
+ parts = pkg.each_part.to_a.to_h { |name, content| [name, content] }
34
+ Idml::Package.write(parts: parts, to: options[:output])
35
+ puts "Wrote #{options[:output]}"
36
+ end
37
+
38
+ desc "prefix PATH PREFIX [-o OUTPUT]", "Prefix every Self attribute"
39
+ method_option :output, aliases: "-o", type: :string, required: true
40
+ def prefix(path, prefix)
41
+ result = Idml::Composition::Prefix.new(package(path)).call(prefix: prefix)
42
+ FileUtils.cp(result.path, options[:output])
43
+ puts "Wrote #{options[:output]}"
44
+ end
45
+
46
+ desc "text PATH [STORY_SELF]",
47
+ "Print concatenated text of every story, or one"
48
+ def text(path, story_self = nil)
49
+ doc = Idml::Document.new(package(path))
50
+ if story_self
51
+ puts doc.story_text(story_self)
52
+ else
53
+ doc.each_story do |sid, body|
54
+ puts "[#{sid}]"
55
+ puts body
56
+ puts
57
+ end
58
+ end
59
+ end
60
+
61
+ desc "render PATH [-o OUTPUT] [--pdf-a] [--font-path DIR]",
62
+ "Convert IDML to PDF"
63
+ method_option :output, aliases: "-o", type: :string, required: true
64
+ method_option :font_path, type: :array, default: [],
65
+ desc: "Additional font search directories"
66
+ method_option :pdf_a, type: :boolean, default: false,
67
+ desc: "Produce PDF/A-2a compliant output"
68
+ def render(path)
69
+ pkg = package(path)
70
+ compliance = options[:pdf_a] ? :pdfa2a : nil
71
+ Idml::Render.render(package: pkg, to: options[:output],
72
+ font_search_paths: font_search_paths,
73
+ compliance: compliance)
74
+ puts "Wrote #{options[:output]}"
75
+ rescue Idml::Errors::PackageNotFound => e
76
+ warn "Error: #{e.message}"
77
+ exit 1
78
+ end
79
+
80
+ private
81
+
82
+ def package(path)
83
+ raise Idml::Errors::PackageNotFound, path unless File.exist?(path)
84
+
85
+ Idml::Package.new(path)
86
+ end
87
+
88
+ def font_search_paths
89
+ options[:font_path].empty? ? nil : options[:font_path]
90
+ end
91
+
92
+ def print_validation_results(results)
93
+ results.partition(&:ok?).then do |ok, failed|
94
+ ok.each { |r| puts " OK #{r.part_name}" }
95
+ failed.each { |r| print_failure(r) }
96
+ !failed.empty?
97
+ end
98
+ end
99
+
100
+ def print_failure(result)
101
+ puts " FAIL #{result.part_name}"
102
+ result.errors.each { |e| puts " #{e}" }
103
+ end
104
+ end
105
+ end