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.
- checksums.yaml +7 -0
- data/.github/workflows/rake.yml +18 -0
- data/.github/workflows/release.yml +27 -0
- data/.gitignore +27 -0
- data/.rspec +3 -0
- data/.rubocop.yml +21 -0
- data/.rubocop_todo.yml +113 -0
- data/.yardopts +4 -0
- data/CLAUDE.md +305 -0
- data/Gemfile +17 -0
- data/Gemfile.lock +253 -0
- data/README.adoc +4 -0
- data/Rakefile +22 -0
- data/TODO.complete/01-bootstrap.md +52 -0
- data/TODO.complete/02-package-layer.md +48 -0
- data/TODO.complete/03-parts-registry-and-designmap.md +64 -0
- data/TODO.complete/04-spread-and-master-spread.md +57 -0
- data/TODO.complete/05-story-and-backing-story.md +56 -0
- data/TODO.complete/06-resources.md +53 -0
- data/TODO.complete/07-xml-structure.md +32 -0
- data/TODO.complete/08-round-trip-suite.md +44 -0
- data/TODO.complete/09-validation.md +51 -0
- data/TODO.complete/10-composition.md +62 -0
- data/TODO.complete/11-package-accessors.md +41 -0
- data/TODO.complete/12-document-layer.md +44 -0
- data/TODO.complete/13-insert-idml.md +31 -0
- data/TODO.complete/14-geometry.md +33 -0
- data/TODO.complete/15-cli.md +44 -0
- data/TODO.complete/16-cross-version-tolerance.md +40 -0
- data/TODO.complete/17-yard-documentation.md +38 -0
- data/TODO.complete/18-remove-nokogiri.md +38 -0
- data/TODO.complete/19-vendor-fixtures.md +44 -0
- data/TODO.complete/20-round-trip-all-fixtures.md +39 -0
- data/TODO.complete/21-anti-pattern-forbid-nokogiri.md +31 -0
- data/TODO.complete/22-claude-md-no-nokogiri.md +29 -0
- data/TODO.complete/23-lutaml-only-no-rexml.md +60 -0
- data/TODO.complete/24-anti-pattern-forbid-rexml.md +29 -0
- data/TODO.complete/25-claude-md-lutaml-only.md +29 -0
- data/TODO.complete/26-rnc-faithful-models.md +66 -0
- data/TODO.complete/27-geometry-scale-rotate.md +28 -0
- data/TODO.complete/28-designmap-migration.md +33 -0
- data/TODO.complete/29-add-page-from-idml.md +35 -0
- data/TODO.complete/30-import-xml.md +37 -0
- data/TODO.complete/31-export-xml.md +32 -0
- data/TODO.complete/33-element-spec-coverage.md +30 -0
- data/TODO.pdf/01-font-metrics.md +43 -0
- data/TODO.pdf/02-font-resolver.md +42 -0
- data/TODO.pdf/03-text-shaper.md +40 -0
- data/TODO.pdf/04-line-breaker-justifier.md +51 -0
- data/TODO.pdf/05-vertical-layout.md +42 -0
- data/TODO.pdf/06-pdf-color-operators.md +25 -0
- data/TODO.pdf/07-pdf-path-operators.md +29 -0
- data/TODO.pdf/08-pdf-text-operators.md +29 -0
- data/TODO.pdf/09-image-embedding.md +34 -0
- data/TODO.pdf/10-spread-renderer.md +33 -0
- data/TODO.pdf/11-font-embedding.md +38 -0
- data/TODO.pdf/12-idml-to-pdf-pipeline.md +41 -0
- data/TODO.pdf/13-cjk-text-layout.md +40 -0
- data/TODO.pdf/14-page-item-element-models.md +61 -0
- data/TODO.pdf/15-wire-spread-children.md +46 -0
- data/TODO.pdf/16-typed-model-pipeline.md +48 -0
- data/TODO.pdf/17-shape-rendering.md +46 -0
- data/TODO.pdf/18-text-rendering.md +48 -0
- data/TODO.pdf/19-page-dimensions.md +40 -0
- data/TODO.pdf/20-png-image-support.md +43 -0
- data/TODO.pdf/21-coordinate-transform.md +41 -0
- data/TODO.pdf/22-color-resolution.md +41 -0
- data/TODO.pdf/23-fontmetrics-ps-name-fix.md +43 -0
- data/TODO.pdf/24-antipattern-coverage.md +35 -0
- data/TODO.pdf/25-cli-render.md +38 -0
- data/TODO.pdf/26-renderer-registry.md +45 -0
- data/TODO.pdf/27-text-engine-integration.md +41 -0
- data/TODO.pdf/28-path-geometry-models.md +47 -0
- data/TODO.pdf/29-character-style-extraction.md +36 -0
- data/TODO.pdf/30-shape-geometry-rendering.md +40 -0
- data/TODO.pdf/31-stroke-rendering.md +35 -0
- data/TODO.pdf/32-master-spread-rendering.md +36 -0
- data/TODO.pdf/33-font-resolution-from-idml.md +38 -0
- data/TODO.pdf/34-story-threading.md +32 -0
- data/TODO.pdf/35-pdf-metadata.md +34 -0
- data/TODO.pdf/36-performance-caching.md +33 -0
- data/TODO.pdf/37-round-trip-specs.md +33 -0
- data/TODO.pdf/38-pdf-output-validation.md +34 -0
- data/TODO.pdf/39-geometry-coordinate-helpers.md +26 -0
- data/TODO.pdf/40-font-ps-name-resolution.md +30 -0
- data/TODO.pdf/41-graphic-line-rendering.md +20 -0
- data/TODO.pdf/42-group-transform-application.md +17 -0
- data/TODO.pdf/43-text-frame-insets.md +17 -0
- data/TODO.pdf/44-layer-support.md +20 -0
- data/TODO.pdf/45-image-clipping.md +17 -0
- data/TODO.pdf/46-spread-to-page-separation.md +19 -0
- data/TODO.pdf/47-pdf-bookmarks.md +17 -0
- data/TODO.pdf/48-table-rendering.md +20 -0
- data/TODO.pdf/49-gradient-fill-rendering.md +20 -0
- data/TODO.pdf/50-pdf-a-compliance.md +21 -0
- data/TODO.pdf/51-remove-dead-code.md +41 -0
- data/TODO.pdf/52-font-subsetting.md +22 -0
- data/TODO.pdf/53-tagged-pdf-accessibility.md +24 -0
- data/TODO.pdf/54-pdfrb-pipeline-specs.md +27 -0
- data/TODO.pdf/55-dead-code-deprecation.md +30 -0
- data/TODO.pdf/56-text-engine-pdfrb-integration.md +33 -0
- data/TODO.pdf/57-image-clipping-pdfrb.md +26 -0
- data/TODO.pdf/58-bookmarks-pdfrb.md +23 -0
- data/TODO.pdf/59-dry-placement-rect.md +15 -0
- data/TODO.pdf/60-cli-pdf-a-flag.md +16 -0
- data/TODO.pdf/README.md +21 -0
- data/exe/idml +5 -0
- data/idml.gemspec +39 -0
- data/lib/idml/cli.rb +105 -0
- data/lib/idml/composition/add_page_from_idml.rb +67 -0
- data/lib/idml/composition/export_xml.rb +70 -0
- data/lib/idml/composition/import_xml.rb +73 -0
- data/lib/idml/composition/insert_idml.rb +93 -0
- data/lib/idml/composition/prefix.rb +78 -0
- data/lib/idml/composition.rb +16 -0
- data/lib/idml/document.rb +87 -0
- data/lib/idml/elements/anchored_object_setting.rb +40 -0
- data/lib/idml/elements/baseline_frame_grid_option.rb +24 -0
- data/lib/idml/elements/bevel_and_emboss_setting.rb +48 -0
- data/lib/idml/elements/blending_setting.rb +24 -0
- data/lib/idml/elements/cell_style.rb +166 -0
- data/lib/idml/elements/cell_style_group.rb +18 -0
- data/lib/idml/elements/character_style.rb +302 -0
- data/lib/idml/elements/character_style_group.rb +18 -0
- data/lib/idml/elements/character_style_range.rb +670 -0
- data/lib/idml/elements/color.rb +48 -0
- data/lib/idml/elements/content.rb +16 -0
- data/lib/idml/elements/content_transparency_setting.rb +15 -0
- data/lib/idml/elements/contour_option.rb +30 -0
- data/lib/idml/elements/dashed_stroke_style.rb +26 -0
- data/lib/idml/elements/directional_feather_setting.rb +34 -0
- data/lib/idml/elements/document_object.rb +82 -0
- data/lib/idml/elements/dotted_stroke_style.rb +24 -0
- data/lib/idml/elements/drop_shadow_setting.rb +44 -0
- data/lib/idml/elements/feather_setting.rb +26 -0
- data/lib/idml/elements/fill_transparency_setting.rb +15 -0
- data/lib/idml/elements/flex_layout_attribute_option.rb +42 -0
- data/lib/idml/elements/font.rb +50 -0
- data/lib/idml/elements/font_family.rb +23 -0
- data/lib/idml/elements/frame_fitting_option.rb +30 -0
- data/lib/idml/elements/geometry_path_type.rb +24 -0
- data/lib/idml/elements/gradient.rb +34 -0
- data/lib/idml/elements/gradient_feather_setting.rb +30 -0
- data/lib/idml/elements/gradient_stop.rb +24 -0
- data/lib/idml/elements/graphic_line.rb +34 -0
- data/lib/idml/elements/group.rb +41 -0
- data/lib/idml/elements/image.rb +33 -0
- data/lib/idml/elements/ink.rb +36 -0
- data/lib/idml/elements/inner_glow_setting.rb +34 -0
- data/lib/idml/elements/inner_shadow_setting.rb +40 -0
- data/lib/idml/elements/layer.rb +35 -0
- data/lib/idml/elements/link.rb +25 -0
- data/lib/idml/elements/master_spread_object.rb +55 -0
- data/lib/idml/elements/mixed_ink.rb +46 -0
- data/lib/idml/elements/mixed_ink_group.rb +40 -0
- data/lib/idml/elements/object_export_option.rb +100 -0
- data/lib/idml/elements/object_style.rb +148 -0
- data/lib/idml/elements/object_style_content_effects_category_settings.rb +36 -0
- data/lib/idml/elements/object_style_export_tag_map.rb +28 -0
- data/lib/idml/elements/object_style_fill_effects_category_settings.rb +36 -0
- data/lib/idml/elements/object_style_group.rb +18 -0
- data/lib/idml/elements/object_style_object_effects_category_settings.rb +36 -0
- data/lib/idml/elements/object_style_stroke_effects_category_settings.rb +36 -0
- data/lib/idml/elements/opacity_gradient_stop.rb +24 -0
- data/lib/idml/elements/outer_glow_setting.rb +32 -0
- data/lib/idml/elements/page.rb +43 -0
- data/lib/idml/elements/paragraph_style.rb +600 -0
- data/lib/idml/elements/paragraph_style_group.rb +18 -0
- data/lib/idml/elements/paragraph_style_range.rb +673 -0
- data/lib/idml/elements/pasted_smooth_shade.rb +40 -0
- data/lib/idml/elements/path_geometry.rb +36 -0
- data/lib/idml/elements/path_point_array.rb +21 -0
- data/lib/idml/elements/path_point_type.rb +38 -0
- data/lib/idml/elements/polygon.rb +40 -0
- data/lib/idml/elements/pref_anchored_object_default.rb +26 -0
- data/lib/idml/elements/pref_button_preference.rb +18 -0
- data/lib/idml/elements/pref_chapter_number_preference.rb +20 -0
- data/lib/idml/elements/pref_cjk_grid_preference.rb +34 -0
- data/lib/idml/elements/pref_data_merge.rb +20 -0
- data/lib/idml/elements/pref_data_merge_field.rb +20 -0
- data/lib/idml/elements/pref_data_merge_option.rb +28 -0
- data/lib/idml/elements/pref_dictionary_preference.rb +22 -0
- data/lib/idml/elements/pref_document_preference.rb +66 -0
- data/lib/idml/elements/pref_e_pub_export_preference.rb +152 -0
- data/lib/idml/elements/pref_e_pub_fixed_layout_export_preference.rb +82 -0
- data/lib/idml/elements/pref_export_for_web_preference.rb +32 -0
- data/lib/idml/elements/pref_footnote_option.rb +78 -0
- data/lib/idml/elements/pref_grid_preference.rb +40 -0
- data/lib/idml/elements/pref_guide_preference.rb +26 -0
- data/lib/idml/elements/pref_html_export_preference.rb +94 -0
- data/lib/idml/elements/pref_index_header_setting.rb +26 -0
- data/lib/idml/elements/pref_index_options.rb +60 -0
- data/lib/idml/elements/pref_layout_adjustment_preference.rb +28 -0
- data/lib/idml/elements/pref_layout_grid_data_information.rb +28 -0
- data/lib/idml/elements/pref_margin_preference.rb +32 -0
- data/lib/idml/elements/pref_mojikumi_ui_preference.rb +18 -0
- data/lib/idml/elements/pref_page_item_default.rb +88 -0
- data/lib/idml/elements/pref_pasteboard_preference.rb +22 -0
- data/lib/idml/elements/pref_print_booklet_option.rb +40 -0
- data/lib/idml/elements/pref_print_booklet_print_preference.rb +188 -0
- data/lib/idml/elements/pref_print_preference.rb +198 -0
- data/lib/idml/elements/pref_story_grid_data_information.rb +40 -0
- data/lib/idml/elements/pref_text_default.rb +578 -0
- data/lib/idml/elements/pref_text_preference.rb +84 -0
- data/lib/idml/elements/pref_tin_document_data_object.rb +15 -0
- data/lib/idml/elements/pref_transparency_default_container_object.rb +15 -0
- data/lib/idml/elements/pref_transparency_preference.rb +22 -0
- data/lib/idml/elements/pref_view_preference.rb +50 -0
- data/lib/idml/elements/pref_xml_export_preference.rb +48 -0
- data/lib/idml/elements/pref_xml_import_preference.rb +36 -0
- data/lib/idml/elements/pref_xml_preference.rb +26 -0
- data/lib/idml/elements/properties.rb +24 -0
- data/lib/idml/elements/rectangle.rb +56 -0
- data/lib/idml/elements/root_cell_style_group.rb +21 -0
- data/lib/idml/elements/root_character_style_group.rb +21 -0
- data/lib/idml/elements/root_object_style_group.rb +21 -0
- data/lib/idml/elements/root_paragraph_style_group.rb +21 -0
- data/lib/idml/elements/root_table_style_group.rb +21 -0
- data/lib/idml/elements/satin_setting.rb +32 -0
- data/lib/idml/elements/spread_object.rb +64 -0
- data/lib/idml/elements/story_inner.rb +697 -0
- data/lib/idml/elements/story_preference.rb +26 -0
- data/lib/idml/elements/striped_stroke_style.rb +22 -0
- data/lib/idml/elements/stroke_style.rb +20 -0
- data/lib/idml/elements/stroke_transparency_setting.rb +15 -0
- data/lib/idml/elements/style_export_tag_map.rb +30 -0
- data/lib/idml/elements/swatch.rb +30 -0
- data/lib/idml/elements/table.rb +40 -0
- data/lib/idml/elements/table_cell.rb +24 -0
- data/lib/idml/elements/table_row.rb +28 -0
- data/lib/idml/elements/table_style.rb +260 -0
- data/lib/idml/elements/table_style_group.rb +18 -0
- data/lib/idml/elements/text_frame.rb +54 -0
- data/lib/idml/elements/text_frame_footnote_options_object.rb +24 -0
- data/lib/idml/elements/text_frame_preference.rb +90 -0
- data/lib/idml/elements/text_wrap_preference.rb +24 -0
- data/lib/idml/elements/tint.rb +44 -0
- data/lib/idml/elements/toc_style.rb +40 -0
- data/lib/idml/elements/toc_style_entry.rb +28 -0
- data/lib/idml/elements/transform_attribute_option.rb +30 -0
- data/lib/idml/elements/transparency_setting.rb +15 -0
- data/lib/idml/elements/trap_preset.rb +48 -0
- data/lib/idml/elements/xml_element.rb +41 -0
- data/lib/idml/elements/xml_export_map.rb +28 -0
- data/lib/idml/elements/xml_import_map.rb +22 -0
- data/lib/idml/elements/xml_story.rb +609 -0
- data/lib/idml/elements/xml_tag.rb +20 -0
- data/lib/idml/elements.rb +167 -0
- data/lib/idml/errors.rb +10 -0
- data/lib/idml/geometry.rb +110 -0
- data/lib/idml/namespace.rb +13 -0
- data/lib/idml/package.rb +213 -0
- data/lib/idml/part.rb +20 -0
- data/lib/idml/parts/backing_story.rb +27 -0
- data/lib/idml/parts/designmap.rb +91 -0
- data/lib/idml/parts/fonts.rb +26 -0
- data/lib/idml/parts/graphic.rb +48 -0
- data/lib/idml/parts/mapping.rb +25 -0
- data/lib/idml/parts/master_spread.rb +27 -0
- data/lib/idml/parts/preferences.rb +201 -0
- data/lib/idml/parts/raw.rb +27 -0
- data/lib/idml/parts/spread.rb +38 -0
- data/lib/idml/parts/story.rb +39 -0
- data/lib/idml/parts/style.rb +122 -0
- data/lib/idml/parts/style_mapping.rb +21 -0
- data/lib/idml/parts/tags.rb +25 -0
- data/lib/idml/parts.rb +47 -0
- data/lib/idml/render/color.rb +69 -0
- data/lib/idml/render/color_helper.rb +23 -0
- data/lib/idml/render/color_resolver.rb +72 -0
- data/lib/idml/render/font_embedder.rb +79 -0
- data/lib/idml/render/font_reference_resolver.rb +51 -0
- data/lib/idml/render/gradient_resolver.rb +111 -0
- data/lib/idml/render/image.rb +302 -0
- data/lib/idml/render/layer_filter.rb +60 -0
- data/lib/idml/render/page_item_renderer.rb +34 -0
- data/lib/idml/render/path.rb +80 -0
- data/lib/idml/render/pdf_writer.rb +426 -0
- data/lib/idml/render/pdfrb_ext/clip.rb +31 -0
- data/lib/idml/render/pdfrb_ext/invoke_xobject.rb +24 -0
- data/lib/idml/render/pdfrb_ext.rb +13 -0
- data/lib/idml/render/pdfrb_writer.rb +97 -0
- data/lib/idml/render/pipeline.rb +196 -0
- data/lib/idml/render/render_context.rb +22 -0
- data/lib/idml/render/renderers/graphic_line_renderer.rb +28 -0
- data/lib/idml/render/renderers/group_renderer.rb +42 -0
- data/lib/idml/render/renderers/polygon_renderer.rb +47 -0
- data/lib/idml/render/renderers/rectangle_renderer.rb +62 -0
- data/lib/idml/render/renderers/table_renderer.rb +41 -0
- data/lib/idml/render/renderers/text_frame_renderer.rb +113 -0
- data/lib/idml/render/renderers.rb +11 -0
- data/lib/idml/render/spread_renderer.rb +111 -0
- data/lib/idml/render/story_threader.rb +56 -0
- data/lib/idml/render/style_resolver.rb +48 -0
- data/lib/idml/render/text.rb +91 -0
- data/lib/idml/render.rb +63 -0
- data/lib/idml/text_engine/cjk_layout.rb +114 -0
- data/lib/idml/text_engine/font_metrics.rb +226 -0
- data/lib/idml/text_engine/font_resolver.rb +105 -0
- data/lib/idml/text_engine/justifier.rb +46 -0
- data/lib/idml/text_engine/line_breaker.rb +55 -0
- data/lib/idml/text_engine/shaper.rb +35 -0
- data/lib/idml/text_engine/vertical_layout.rb +64 -0
- data/lib/idml/text_engine.rb +19 -0
- data/lib/idml/validation/result.rb +14 -0
- data/lib/idml/validation/validator.rb +121 -0
- data/lib/idml/validation.rb +14 -0
- data/lib/idml/version.rb +5 -0
- data/lib/idml.rb +33 -0
- data/reference-docs/idml-specification.pdf +0 -0
- data/reference-docs/schemas/README.md +79 -0
- data/reference-docs/schemas/fix-adobe-schema-bug.rb +69 -0
- data/reference-docs/schemas/package/MasterSpreads/MasterSpread.rnc +4415 -0
- data/reference-docs/schemas/package/Resources/Fonts.rnc +93 -0
- data/reference-docs/schemas/package/Resources/Graphic.rnc +226 -0
- data/reference-docs/schemas/package/Resources/Preferences.rnc +1827 -0
- data/reference-docs/schemas/package/Resources/Styles.rnc +1770 -0
- data/reference-docs/schemas/package/Spreads/Spread.rnc +4431 -0
- data/reference-docs/schemas/package/Stories/Story.rnc +6547 -0
- data/reference-docs/schemas/package/XML/BackingStory.rnc +6527 -0
- data/reference-docs/schemas/package/XML/Mapping.rnc +35 -0
- data/reference-docs/schemas/package/XML/Tags.rnc +30 -0
- data/reference-docs/schemas/package/datatype.rnc +563 -0
- data/reference-docs/schemas/package/designmap.rnc +974 -0
- data/reference-docs/schemas/single/IDMarkupLanguage.rnc +11486 -0
- data/reference-docs/schemas/single/datatype.rnc +563 -0
- data/reference-docs/spec/00_index.md +16 -0
- data/reference-docs/spec/00_title/00_index.md +480 -0
- data/reference-docs/spec/01_abstract/00_index.md +3 -0
- data/reference-docs/spec/02_introduction/00_index.md +11 -0
- data/reference-docs/spec/03_terminology/00_index.md +7 -0
- data/reference-docs/spec/04_inx_idml_and_in_design_scripting/00_index.md +48 -0
- data/reference-docs/spec/05_uses_for_idml/00_index.md +13 -0
- data/reference-docs/spec/06_idml_design_goals/00_index.md +18 -0
- data/reference-docs/spec/07_idml_design_approaches/00_index.md +59 -0
- data/reference-docs/spec/08_idml_document_structure/00_index.md +120 -0
- data/reference-docs/spec/09_idml_syntax/00_index.md +367 -0
- data/reference-docs/spec/09_idml_syntax/examples/01_example_properties_expressed_as_attributes_or_elements_depending_on_their_value.md +6 -0
- data/reference-docs/spec/09_idml_syntax/examples/02_example_object_serialization.md +10 -0
- data/reference-docs/spec/09_idml_syntax/examples/03_example_record_type_serialization.md +6 -0
- data/reference-docs/spec/09_idml_syntax/examples/04_example_geometry_serialization.md +6 -0
- data/reference-docs/spec/09_idml_syntax/examples/index.md +10 -0
- data/reference-docs/spec/09_idml_syntax/images/image_01.md +1 -0
- data/reference-docs/spec/09_idml_syntax/images/image_01.png +0 -0
- data/reference-docs/spec/09_idml_syntax/images/image_02.md +1 -0
- data/reference-docs/spec/09_idml_syntax/images/image_02.png +0 -0
- data/reference-docs/spec/09_idml_syntax/images/image_03.md +1 -0
- data/reference-docs/spec/09_idml_syntax/images/image_03.png +0 -0
- data/reference-docs/spec/09_idml_syntax/images/image_04.md +1 -0
- data/reference-docs/spec/09_idml_syntax/images/image_04.png +0 -0
- data/reference-docs/spec/09_idml_syntax/images/image_05.md +1 -0
- data/reference-docs/spec/09_idml_syntax/images/image_05.png +0 -0
- data/reference-docs/spec/09_idml_syntax/images/image_06.md +1 -0
- data/reference-docs/spec/09_idml_syntax/images/image_06.png +0 -0
- data/reference-docs/spec/09_idml_syntax/images/index.md +12 -0
- data/reference-docs/spec/09_idml_syntax/schemas/00_schema_example_1_column_guide_color_and_margin_guide_color_elements.rnc +3 -0
- data/reference-docs/spec/09_idml_syntax/schemas/01_datatype.rnc +4 -0
- data/reference-docs/spec/09_idml_syntax/schemas/02_designmap.rnc +4 -0
- data/reference-docs/spec/09_idml_syntax/schemas/03_Master_Spreads.rnc +4 -0
- data/reference-docs/spec/09_idml_syntax/schemas/04_Fonts.rnc +4 -0
- data/reference-docs/spec/09_idml_syntax/schemas/05_Graphic.rnc +4 -0
- data/reference-docs/spec/09_idml_syntax/schemas/06_Preferences.rnc +4 -0
- data/reference-docs/spec/09_idml_syntax/schemas/07_Styles.rnc +4 -0
- data/reference-docs/spec/09_idml_syntax/schemas/08_Spread.rnc +4 -0
- data/reference-docs/spec/09_idml_syntax/schemas/09_Story.rnc +4 -0
- data/reference-docs/spec/09_idml_syntax/schemas/10_BackingStory.rnc +4 -0
- data/reference-docs/spec/09_idml_syntax/schemas/11_Mapping.rnc +4 -0
- data/reference-docs/spec/09_idml_syntax/schemas/12_Tags.rnc +4 -0
- data/reference-docs/spec/09_idml_syntax/schemas/index.md +19 -0
- data/reference-docs/spec/09_idml_syntax/tables/01_idml_basic_data_types.md +20 -0
- data/reference-docs/spec/09_idml_syntax/tables/02_property_elements.md +6 -0
- data/reference-docs/spec/09_idml_syntax/tables/index.md +8 -0
- data/reference-docs/spec/10_idml_file_reference/00_index.md +16 -0
- data/reference-docs/spec/10_idml_file_reference/10_10_mapping/examples/98_xml_export_map.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_10_mapping/examples/99_xml_import_map.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_10_mapping/index.md +44 -0
- data/reference-docs/spec/10_idml_file_reference/10_10_mapping/schemas/175_xml_export_map.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_10_mapping/schemas/176_xml_import_map.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_10_mapping/tables/191_xml_export_map_properties.md +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_10_mapping/tables/192_xml_import_map_properties.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_11_xmltags/examples/100_example_xmltag.md +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_11_xmltags/imdex.md +42 -0
- data/reference-docs/spec/10_idml_file_reference/10_11_xmltags/schemas/177_xmltag.rnc +10 -0
- data/reference-docs/spec/10_idml_file_reference/10_11_xmltags/tables/193_xmltag_properties_attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_11_xmltags/tables/194_xmltag_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_1_common_attributes_and_elements/examples/05_example_self.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_1_common_attributes_and_elements/examples/06_example_label.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_1_common_attributes_and_elements/index.md +96 -0
- data/reference-docs/spec/10_idml_file_reference/10_1_common_attributes_and_elements/schemas/02_self.rnc +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_1_common_attributes_and_elements/schemas/03_label.rnc +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_1_common_attributes_and_elements/tables/label_attributes.md +8 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/07_example_document_element_references.md +26 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/08_example_document_element_designmap.md +25 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/09_example_color_management_attributes.md +10 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/10_example_tagged_pdf_preference_structure_order.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/11_example_text_variable.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/12_example_layer.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/13_example_building_block.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/14_example_hyperlink.md +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/examples/15_example_article.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/index.md +1349 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/004_document.rnc +108 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/005_language.rnc +16 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/006_kinsokutable.rnc +13 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/007_numberinglist.rnc +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/007b_mojikumitable.rnc +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/008_namedgrid.rnc +10 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/009_griddatainformation.rnc +22 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/010_motionpreset.rnc +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/011_condition.rnc +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/012_conditionset.rnc +13 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/013_linkedstoryoption.rnc +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/014_taggedpdfpreference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/015_metadatapacketpreference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/016_watermarkpreference.rnc +18 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/016b_conditionaltextpreference.rnc +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/017_textvariable.rnc +22 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/018_customtextvariablepreference.rnc +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/019_filenamevariablepreference.rnc +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/020_pagenumbervariablepreference.rnc +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/021_chapternumbervariablepreference.rnc +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/022_datevariablepreference.rnc +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/023_matchcharacterstylepreference.rnc +8 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/024_matchparagraphstylepreference.rnc +8 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/025_captionmetadatavariablepreference.rnc +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/026_layer.rnc +19 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/027_section.rnc +25 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/028_documentuser.rnc +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/029_crossreferenceformat.rnc +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/030_buildingblock.rnc +8 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/031_index.rnc +9 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/032_topic.rnc +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/033_crossreference.rnc +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/034_hyperlink.rnc +34 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/035_hyperlinkpagedestination.rnc +17 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/036_hyperlinkurldestination.rnc +12 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/037_hyperlinkexternalpagedestination.rnc +17 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/038_hyperlinkpageitemsource.rnc +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/039_bookmark.rnc +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/040_preflightprofile.rnc +12 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/041_preflightprofilerule.rnc +13 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/042_ruledataobject.rnc +51 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/043_preflightruleinstance.rnc +13 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/044_datamergeimageplaceholder.rnc +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/045_hyphenationexception.rnc +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/046_indexingsortoption.rnc +8 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/047_abullet.rnc +28 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/048_assignment.rnc +21 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/049_assignedstory.rnc +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/051_article.rnc +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/schemas/052_articlemember.rnc +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/03_document_properties_attributes.md +28 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/04_document_properties_elements.md +2 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/05_language_properties_attributes.md +10 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/06_kinsokutable_properties_attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/07_mojikumitable_properties_attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/08_mojikumitable_properties_elements.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/09_numberinglist_properties_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/10_namedgrid_properties_attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/11_griddatainformation_properties_attributes.md +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/12_griddatainformation_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/13_motionpreset_properties_attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/14_motionpreset_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/15_condition_properties_attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/16_condition_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/17_conditionset_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/18_linkedstoryoption_properties_attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/19_taggedpdfpreference_structureorder_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/20_metadatapacketpreference_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/21_watermarkpreference_properties_attributes.md +15 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/22_watermarkpreference_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/23_conditionaltextpreference_properties_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/24_textvariable_properties_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/25_common_text_variable_properties_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/26_custom_textvariable_preference_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/27_filename_variable_preference_properties_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/28_pagenumber_variable_preference_properties_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/29_chapternumber_variable_preference_properties_attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/30_date_variable_preference_properties_attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/31_matchcharacterstylepreference_properties_attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/32_matchparagraphstylepreference_properties_attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/33_captionmetadatavariablepreference_properties_attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/34_metadata_provider_names.md +63 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/35_layer_properties_attributes.md +10 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/36_layer_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/37_section_properties_attributes.md +15 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/38_documentuser_properties_attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/39_documentuser_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/40_crossreferenceformat_properties_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/41_buildingblock_properties_attributes.md +10 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/42_topic_properties_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/43_crossreference_properties_attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/44_hyperlink_properties_attributes.md +10 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/45_hyperlinkpagedestination_properties_attributes.md +9 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/46_hyperlinkpagedestination_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/47_hyperlinkurldestination_properties_attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/48_hyperlinkexternalpagedestination_properties_attributes.md +8 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/49_hyperlinkexternalpagedestination_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/50_hyperlinkpageitemsource_properties_attributes.md +8 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/51_bookmark_properties_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/52_preflightprofile_properties_attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/53_preflightprofilerule_properties_attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/54_ruledataobject_properties_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/55_ruledataobject_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/56_preflightruleinstance_properties_attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/57_datamergeplaceholder_properties_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/58_hyphenationexception_properties_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/59_indexingsortoption_properties_attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/60_abullet_properties_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/61_abullet_properties_elements.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/62_assignment_properties_attributes.md +9 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/62_assignment_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/63_article_properties_attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/64_article_properties_elements.md +2 -0
- data/reference-docs/spec/10_idml_file_reference/10_2_designmap_xml/tables/65_articlemember_properties_attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/16_example_minimal_spread.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/17_example_untransformed_rectangle.md +14 -0
- 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
- 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
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/20_example_animation_setting.md +33 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/21_example_timing_setting.md +10 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/22_example_rectangle.md +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/23_example_nested_page_item.md +28 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/24_example_rotated_page_item.md +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/25_example_page_item_imported_graphic.md +28 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/26_example_movie.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/27_example_navigation_point.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/28_example_sound.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/29_example_text_frame.md +29 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/30_example_threaded_linked_textframes.md +1 -0
- 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
- 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
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/33_example_multi_column_text_frame.md +24 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/34_example_baseline_frame_grid.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/35_example_transparency.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/36_example_group.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/37_example_button.md +43 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/38_example_multi_state_object.md +26 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/39_example_associating_frame_xml_element.md +5 -0
- 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
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/41_example_pages_within_spread.md +19 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/42_example_margin_preferences.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/43_example_guide.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/examples/44_example_flattener_preference.md +7 -0
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/index.md +1421 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/53_spread.rnc +30 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/54_master_spread.rnc +24 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/55_page_item.rnc +104 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/56_animation_setting.rnc +22 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/57_timing_setting.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/58_timing_list.rnc +2 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/60_timing_group.rnc +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/61_timing_target.rnc +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/62_graphic.rnc +41 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/63_pdf_attribute.rnc +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/64_navigation_point.rnc +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/65_text_frame.rnc +43 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/66_text_frame_preference.rnc +30 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/67_baseline_frame_grid.rnc +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/68_transparency_setting.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/69_blending_setting.rnc +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/70_button.rnc +96 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/71_state.rnc +20 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/72_behavior.rnc +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/73_multi_state_object.rnc +72 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/74_page.rnc +34 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/75_margin_preference.rnc +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/76_guide.rnc +12 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/schemas/77_flattener_preference.rnc +9 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/066_spread_masterspread_properties_as_attributes.md +15 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/067_masterspread_properties_as_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/068_common_pageitem_properties_as_attributes.md +46 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/069_common_pageitem_properties_as_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/070_animationsetting_properties_as_attributes.md +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/071_animationsetting_properties_as_elements.md +9 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/072_timinglist_properties_as_attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/073_timinggroup_properties_as_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/074_timingtarget_properties_as_attributes.md +8 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/075_graphic_properties_as_attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/076_graphic_properties_as_elements.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/077_image_properties_as_attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/078_image_properties_as_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/079_pdf_eps_properties_as_attributes.md +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/080_pdfattribute_properties_as_attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/081_importedpage_properties_as_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/082_movie_properties_as_attributes.md +19 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/083_sound_properties_as_attributes.md +8 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/084_textframe_properties_as_attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/085_textframe_preference_properties_as_attributes.md +22 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/086_textframe_preference_properties_as_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/087_baselineframegrid_properties_expressed_as_attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/088_baselineframegrid_properties_as_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/089_button_properties_expressed_as_attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/090_button_properties_expressed_as_properties.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/091_state_properties_as_attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/092_common_behavior_properties_as_attributes.md +9 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/093_gotonextstatebehavior_properties_as_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/094_gotopreviousstatebehavior_properties_as_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/095_gotostatebehavior_properties_as_attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/096_gotostatebehavior_properties_as_attributes_2.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/097_animationbehavior_properties_as_attributes.md +8 -0
- 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
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/098_multistateobject_properties_as_attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/099_multistateobject_properties_as_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/100_page_properties_as_attributes.md +17 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/101_page_properties_as_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/102_guide_properties_as_attributes.md +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_3_spreads_and_master_spreads/tables/103_guide_properties_as_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/45_example_story_file_in_idml_package.md +10 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/46_example_local_formatting_vs_styles.md +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/47_example_paragraph_style_range_character_style_range.md +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/48_example_paragraph_breaks_in_character_style_range.md +9 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/49_example_paragraph_style_range_elements_column_breaks.md +15 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/50_example_multiple_paragraph_style_range_elements.md +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/51_example_multi_column_straddle_paragraphs.md +25 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/52_example_xml_element.md +141 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/53_example_table.md +31 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/54_example_footnote.md +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/55_example_note.md +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/56_example_anchored_text_frame.md +31 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/57_example_anchored_graphic.md +39 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/58_example_hyperlink_text_source.md +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/59_example_hyperlink_text_destination.md +13 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/examples/60_example_cross_reference_source.md +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img001.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img002.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img003.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img004.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img005.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img006.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img007.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img008.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img009.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img010.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img011.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/images/10_4_stories_img012.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/index.md +1299 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/78_story.rnc +92 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/79_paragraph_style_range.rnc +381 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/80_character_style_range.rnc +431 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/81_table.rnc +53 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/82_cell.rnc +66 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/83_column.rnc +28 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/84_row.rnc +33 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/85_footnote.rnc +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/86_note.rnc +13 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/87_anchored_object_settings.rnc +12 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/88_hyperlink_text_source.rnc +20 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/89_hyperlink_text_destination.rnc +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/schemas/90_cross_reference_source.rnc +16 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/104_common_text_properties_attributes.md +230 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/105_common_text_properties_elements.md +41 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/106_story_properties_attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/107_story_properties_elements.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/108_character_style_range_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/109_table_properties_attributes.md +133 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/110_cell_properties_attributes.md +83 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/111_cell_properties_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/112_column_properties_attributes.md +29 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/113_row_properties_attributes.md +34 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/114_anchored_object_setting_properties_attributes.md +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/115_hyperlink_text_source_properties_attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/116_hyperlink_text_destination_properties_attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/117_cross_reference_source_properties_attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/118_applied_format_tags.md +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_4_stories/tables/119_metacharacters.md +15 -0
- data/reference-docs/spec/10_idml_file_reference/10_5_fonts/examples/61_example_font.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_5_fonts/examples/62_example_referring_to_font.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_5_fonts/index.md +86 -0
- data/reference-docs/spec/10_idml_file_reference/10_5_fonts/schemas/091_font_family.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_5_fonts/schemas/092_font.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_5_fonts/schemas/093_composite_font.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_5_fonts/schemas/094_composite_font_entry.rnc +2 -0
- data/reference-docs/spec/10_idml_file_reference/10_5_fonts/tables/120_font_properties_represented_as_attributes.md +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/63_example_none_swatch.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/64_example_process_color.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/65_example_spot_color.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/66_example_lab_color.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/67_example_gradient.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/68_example_tint.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/69_example_mixed_ink.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/70_example_mixed_ink_group.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/71_example_process_magenta_ink.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/72_example_pantone_274_c_spot_ink.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/73_example_default_stroke_styles.md +18 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/74_example_dashed_stroke_style.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/75_example_dotted_stroke_style.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/examples/76_example_striped_stroke_style.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img001.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img002.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img003.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img004.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img005.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img006.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img007.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img008.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img009.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img010.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img011.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/images/10_6_graphics_img012.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/index.md +406 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/095_swatch.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/096_color.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/097_gradient.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/098_gradient_stop.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/099_tint.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/100_mixed_ink.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/101_mixed_ink_group.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/102_ink.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/103_stroke_style.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/104_dashed_stroke_style.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/105_dotted_stroke_style.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/schemas/106_striped_stroke_style.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/121_swatch_properties.md +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/122_color_properties.md +10 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/123_gradient_properties.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/124_gradient_stop_properties.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/125_tint_properties.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/126_mixed_ink_properties.md +10 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/127_mixed_ink_group_properties.md +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/128_ink_properties.md +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/129_stroke_style_properties.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/130_dashed_stroke_style_properties.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/131_dotted_stroke_style_properties.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_6_graphics/tables/132_striped_stroke_style_properties.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/77_epub_export_preference.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/78_html_export_preference.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/79_transparency_preference.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/80_story_preference.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/81_anchored_object_default.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/82_anchored_object_setting.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/83_baseline_frame_grid_option.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/84_footnote_options.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/85_text_wrap_preference.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/86_document_preference.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/87_grid_preference.md +2 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/examples/88_guide_preference.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/index.md +1153 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/107_Preferences_File.rnc +2 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/108_DataMerge.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/109_DataMergeField.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/110_DataMergeOption.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/111_LayoutAdjustmentPreference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/112_EPubExportPreference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/113_HTMLExportPreference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/114_XMLImportPreference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/115_XMLExport_Preference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/116_XMLPreference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/117_Export_For_Web_Preference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/118_Transparency_Preference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/119_Transparency_Default_Container_Object.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/120_StoryPreference.rnc +8 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/121_Text_Preference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/122_Text_Default.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/123_DictionaryPreference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/124_AnchoredObjectDefault.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/125_AnchoredObjectSetting.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/126_BaselineFrameGridOption.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/127_FootnoteOption.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/128_TextWrapPreference.rnc +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/129_Contour_Option.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/130_Document_Preference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/131_Grid_Preference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/132_GuidePreference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/133_MarginPreference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/134_Pasteboard_Preference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/135_View_Preference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/136_Print_Preference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/137_Print_Booklet_Option.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/138_Print_Booklet_Print_Preference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/139_Index_Options.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/140_Index_Header_Setting.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/141_Page_Item_Default.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/142_Frame_Fitting_Option.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/143_Button_Preference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/144_Tin_Document_Data_Object.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/145_Layout_Grid_Data_Information.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/146_Story_Grid_Data_Information.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/147_Cjk_Grid_Preference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/148_Mojikumi_Ui_Preference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/schemas/149_Chapter_Number_Preference.rnc +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/133_DataMerge_Properties_Represented_as_Attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/134_DataMergeField_Properties_Represented_as_Attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/135_DataMergeOption_Properties_Represented_as_Attributes.md +8 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/136_LayoutAdjustmentPreference_Properties_Represented_as_Attributes.md +8 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/137_EPubExportPreference_Properties_Represented_as_Attributes.md +44 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/138_HTMLExportPreference_Properties_Represented_as_Attributes.md +39 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/139_XMLImportPreference_Properties_Represented_as_Attributes.md +12 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/140_XMLImportPreference_Properties_Represented_as_Elements.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/141_XMLExportPreference_Properties_Represented_as_Attributes.md +21 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/142_XMLExport_Preference_Properties_Represented_as_Elements.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/143_XMLPreference_Properties_Represented_as_Attributes.md +9 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/144_XMLPreference_Properties_Represented_as_Elements.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/145_ExportForWebPreference_Properties_Represented_as_Attributes.md +10 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/146_TransparencyPreference_Properties_Represented_as_Attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/147_StoryPreference_Properties_Represented_as_Attributes.md +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/148_TextPreference_Properties_Represented_as_Attributes.md +33 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/149_AnchoredObjectDefault_Properties_Represented_as_Attributes.md +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/150_AnchoredObjectSetting_Properties_Represented_as_Attributes.md +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/151_BaselineFrameGridOption_Properties_Represented_as_Attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/152_BaselineFrameGridOption_Properties_Represented_as_Elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/153_FootnoteOption_Properties_Represented_as_Attributes.md +33 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/154_FootnoteOption_Properties_Represented_as_Elements.md +12 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/155_Contour_Option_Properties_Represented_as_Attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/156_DocumentPreference_Properties_Represented_as_Attributes.md +26 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/157_DocumentPreference_Properties_Represented_as_Elements.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/158_Grid_Preference_Properties_Represented_as_Attributes.md +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/159_GridPreference_Properties_Represented_as_Elements.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/160_GuidePreference_Properties_Represented_as_Attributes.md +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/161_GuidePreference_Properties_Represented_as_Elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/162_PasteboardPreference_Properties_Represented_as_Attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/163_PasteboardPreference_Properties_Represented_as_Elements.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/164_ViewPreference_Properties_Represented_as_Attributes.md +20 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/165_Print_Preference_Properties_Represented_as_Attributes.md +104 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/166_Print_Preference_Properties_Represented_as_Elements.md +15 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/167_Cjk_Grid_Preference_Properties_Represented_as_Attributes.md +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/168_Cjk_Grid_Preference_Properties_Represented_as_Elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/169_Mojikumi_Ui_Preference_Properties_Represented_as_Attributes.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/170_Chapter_Number_Preference_Properties_Represented_as_Attributes.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_7_preferences/tables/171_Chapter_Number_Preference_Properties_Represented_as_Elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/001_paragraph_style_self_attribute.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/002_paragraph_style_group_nested.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/089_paragraph_style_group.md +14 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/090_based_on_no_paragraph_style.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/091_based_on_another_style.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/092_nested_style.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/093_character_style_group.md +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/094_object_style.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/095_toc_style.md +10 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/examples/096_trap_preset.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/images/10_8_styles_img001.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/images/10_8_styles_img002.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/images/10_8_styles_img003.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/images/10_8_styles_img004.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/images/10_8_styles_img005.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/images/10_8_styles_img006.png +0 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/index.md +1154 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/150_paragraphstylegroup.rnc +9 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/151_paragraphstyle.rnc +510 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/152_nestedstyle.rnc +19 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/153_characterstylegroup.rnc +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/154_characterstyle.rnc +255 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/155_styleexporttagmap.rnc +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/156_tablestylegroup.rnc +9 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/157_tablestyle.rnc +118 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/158_cellstylegroup.rnc +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/159_cellstyle.rnc +135 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/160_objectstylegroup.rnc +9 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/161_objectstyle.rnc +79 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/162_objectstyleobjecteffectscategorysettings.rnc +12 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/163_objectstyle_effects_category_settings.rnc +12 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/164_objectstyle_effects_category_settings.rnc +12 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/165_objectstyle_effects_category_settings.rnc +12 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/166_tocstyle_tocstyleentry.rnc +16 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/167_tocstyle_tocstyleentry.rnc +22 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/schemas/168_trappreset.rnc +21 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/172_paragraph_style_properties_represented_as_attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/173_paragraph_style_properties_represented_as_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/174_nestedstyle_properties_represented_as_elements.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/175_characterstyle_properties_represented_as_attributes.md +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/176_characterstyle_properties_represented_as_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/177_styleexporttagmap_properties_represented_as_attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/178_tablestyle_properties_represented_as_attributes.md +109 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/179_tablestyle_properties_represented_as_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/180_cellstyle_properties_represented_as_elements.md +3 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/181_tocstyle_properties_represented_as_attributes.md +11 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/182_tocstyle_entry_properties_represented_as_attributes.md +8 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/183_tocstyleentry_properties_represented_as_elements.md +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_8_styles/tables/184_trappreset_properties_represented_as_attributes.md +17 -0
- data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/examples/97_example_backingstory.md +1 -0
- data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/index.md +101 -0
- data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/schemas/169_BackingStory.rnc +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/schemas/170_XMLElement.rnc +37 -0
- data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/schemas/171_XMLAttribute.rnc +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/schemas/172_XMLInstruction.rnc +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/schemas/173_XMLComment.rnc +4 -0
- data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/schemas/174_DTD.rnc +13 -0
- data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/tables/185_XMLElement_Properties_Represented_as_Attributes.md +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/tables/186_XMLAttribute_Properties_Represented_as_Attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/tables/187_XMLInstruction_Properties_Represented_as_Attributes.md +7 -0
- data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/tables/188_XMLComment_Properties_Represented_as_Attributes.md +6 -0
- data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/tables/189_DTD_Properties_Represented_as_Attributes.md +5 -0
- data/reference-docs/spec/10_idml_file_reference/10_9_xml_elements/tables/190_DTD_Properties_Represented_as_Elements.md +5 -0
- data/reference-docs/spec/appendix/00_index.md +7 -0
- data/reference-docs/spec/appendix/a_appendix.md +467 -0
- data/reference-docs/spec/appendix/b_appendix.md +81 -0
- data/reference-docs/spec/appendix/c_appendix.md +3192 -0
- data/reference-docs/spec/appendix/d_appendix.md +7 -0
- data/reference-docs/spec/appendix/e_appendix.md +224 -0
- data/scripts/assemble_element.rb +90 -0
- data/scripts/assemble_part.rb +57 -0
- data/scripts/build_elements_autoloads.rb +46 -0
- data/scripts/generate_all_objects.rb +38 -0
- data/scripts/rnc_to_lutaml.rb +114 -0
- metadata +1043 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# TODO 23: Delete REXML; route all XML through lutaml-model
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
The gem uses ONLY `lutaml-model` for XML. No REXML, no Nokogiri, no
|
|
6
|
+
direct adapter access. Every query goes through typed
|
|
7
|
+
`Lutaml::Model::Serializable` subclasses.
|
|
8
|
+
|
|
9
|
+
## Acceptance criteria
|
|
10
|
+
|
|
11
|
+
- [ ] `lib/idml/document.rb` no longer requires or references REXML.
|
|
12
|
+
`find_by_self` returns the part name where the Self was found
|
|
13
|
+
(string-based search — no XML parsing).
|
|
14
|
+
`story_text` and `each_story` use the typed `Story#text_content`
|
|
15
|
+
and `Story#self_id`.
|
|
16
|
+
`xml_structure` returns the typed `BackingStory` instance.
|
|
17
|
+
`tagged_elements` walks the typed XMLElement collection.
|
|
18
|
+
- [ ] `lib/idml/composition/insert_idml.rb` no longer requires or
|
|
19
|
+
references REXML. `BackingStoryMerger` parses via the typed
|
|
20
|
+
`BackingStory` model, manipulates the typed tree, serializes back.
|
|
21
|
+
- [ ] New typed models:
|
|
22
|
+
- `lib/idml/elements/content.rb` — `<Content>` (text).
|
|
23
|
+
- `lib/idml/elements/xml_element.rb` — recursive `<XMLElement>`
|
|
24
|
+
(Self, MarkupTag, XMLContent, child XMLElement, child Content).
|
|
25
|
+
- [ ] `Story` and `BackingStory` declare `Content` and `XMLElement`
|
|
26
|
+
as typed children.
|
|
27
|
+
- [ ] `Story#text_content` returns the concatenated Content text.
|
|
28
|
+
- [ ] `Story#self_id` exposes the inner `<Story Self="...">` attribute
|
|
29
|
+
via typed mapping.
|
|
30
|
+
- [ ] `idml.gemspec` and `Gemfile` drop the `rexml` direct dependency.
|
|
31
|
+
- [ ] All existing specs continue to pass (with API adjustments for
|
|
32
|
+
`find_by_self` returning a String).
|
|
33
|
+
|
|
34
|
+
## Files
|
|
35
|
+
|
|
36
|
+
- `lib/idml/elements.rb` (autoloads)
|
|
37
|
+
- `lib/idml/elements/content.rb`
|
|
38
|
+
- `lib/idml/elements/xml_element.rb`
|
|
39
|
+
- `lib/idml/parts/story.rb` — add typed children
|
|
40
|
+
- `lib/idml/parts/backing_story.rb` — add typed children
|
|
41
|
+
- `lib/idml/document.rb` — refactor off REXML
|
|
42
|
+
- `lib/idml/composition/insert_idml.rb` — refactor off REXML
|
|
43
|
+
- `idml.gemspec`, `Gemfile`
|
|
44
|
+
- `spec/idml/document_spec.rb` — adjust find_by_self expectations
|
|
45
|
+
|
|
46
|
+
## Design notes
|
|
47
|
+
|
|
48
|
+
- The long-term goal remains: expand typed coverage so every element
|
|
49
|
+
is typed. This TODO types just what Document and InsertIdml need:
|
|
50
|
+
Content (text) and XMLElement (recursive tree).
|
|
51
|
+
- `find_by_self` over elements we haven't typed returns nil. Document
|
|
52
|
+
this as a known limitation; the long-tail typing work (TODOs 04–07
|
|
53
|
+
expansion) shrinks the gap over time.
|
|
54
|
+
- `BackingStoryMerger` becomes: parse dest + source into typed
|
|
55
|
+
`BackingStory`, append source's `xml_element` collection to dest's,
|
|
56
|
+
serialize via `BackingStory.to_xml`.
|
|
57
|
+
|
|
58
|
+
## Dependencies
|
|
59
|
+
|
|
60
|
+
- None (reversible refactor).
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# TODO 24: Anti-pattern hard-bans REXML
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Encode the "no REXML" rule in the anti-pattern spec. The check fires
|
|
6
|
+
on any `require "rexml/..."` or `REXML::` reference in `lib/`.
|
|
7
|
+
|
|
8
|
+
## Acceptance criteria
|
|
9
|
+
|
|
10
|
+
- [ ] `spec/anti_patterns_spec.rb` extends the FORBIDDEN_REQUIRES list
|
|
11
|
+
to include `rexml`.
|
|
12
|
+
- [ ] The "no Nokogiri" check is generalized to a "no forbidden XML
|
|
13
|
+
libraries" check that covers both `nokogiri` and `rexml`.
|
|
14
|
+
- [ ] `rexml` removed from the external-require allowlist.
|
|
15
|
+
|
|
16
|
+
## Files
|
|
17
|
+
|
|
18
|
+
- `spec/anti_patterns_spec.rb`
|
|
19
|
+
|
|
20
|
+
## Design notes
|
|
21
|
+
|
|
22
|
+
- The forbidden check looks for `require "rexml/..."` (any sub-path)
|
|
23
|
+
and `REXML::` constant references.
|
|
24
|
+
- Document the rule's rationale in the spec comment: lutaml-model is
|
|
25
|
+
the only XML authority; everything else must be typed.
|
|
26
|
+
|
|
27
|
+
## Dependencies
|
|
28
|
+
|
|
29
|
+
- TODO 23 (REXML removed so the spec passes).
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# TODO 25: CLAUDE.md — "lutaml-model only" rule
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Broaden the "No Nokogiri" rule in CLAUDE.md to "lutaml-model only"
|
|
6
|
+
(no Nokogiri, no REXML, no direct adapter access). Document the
|
|
7
|
+
architectural intent.
|
|
8
|
+
|
|
9
|
+
## Acceptance criteria
|
|
10
|
+
|
|
11
|
+
- [ ] `CLAUDE.md` Conventions section replaces the "No Nokogiri" bullet
|
|
12
|
+
with a broader "lutaml-model only" rule covering Nokogiri, REXML,
|
|
13
|
+
and direct adapter access.
|
|
14
|
+
- [ ] The rule references the anti-pattern enforcement (TODO 24).
|
|
15
|
+
- [ ] The rule documents the alternative: define a typed model class
|
|
16
|
+
for any XML element you need to query.
|
|
17
|
+
|
|
18
|
+
## Files
|
|
19
|
+
|
|
20
|
+
- `CLAUDE.md`
|
|
21
|
+
|
|
22
|
+
## Design notes
|
|
23
|
+
|
|
24
|
+
- One bullet, one paragraph of rationale. The full reasoning lives in
|
|
25
|
+
`TODO.complete/23-lutaml-only-no-rexml.md`.
|
|
26
|
+
|
|
27
|
+
## Dependencies
|
|
28
|
+
|
|
29
|
+
- TODOs 23, 24 (rule enforced when documented).
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# TODO 26: RNC-faithful typed models
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Every typed element class declares the full attribute set defined for
|
|
6
|
+
that element in the RNG Compact schemas at
|
|
7
|
+
`reference-docs/schemas/package/`. No more guessing from fixture
|
|
8
|
+
content; the RNC is the single source of truth.
|
|
9
|
+
|
|
10
|
+
## Why
|
|
11
|
+
|
|
12
|
+
The user (rightly) called out that the current StoryInner /
|
|
13
|
+
ParagraphStyleRange / CharacterStyleRange / Content / XmlElement
|
|
14
|
+
classes model only the attributes I needed for the Document queries
|
|
15
|
+
(Self, MarkupTag, text). The RNC declares dozens more per element —
|
|
16
|
+
layout, styling, hyphenation, kerning, etc. Faithful modeling means
|
|
17
|
+
users can manipulate every attribute the IDML spec exposes.
|
|
18
|
+
|
|
19
|
+
## Acceptance criteria
|
|
20
|
+
|
|
21
|
+
For each typed element class listed below, the attribute set must
|
|
22
|
+
match the corresponding RNC definition exactly. A spec asserts the
|
|
23
|
+
match.
|
|
24
|
+
|
|
25
|
+
- [ ] `Idml::Elements::StoryInner` ← `Story_Object` in
|
|
26
|
+
`Stories/Story.rnc` (60+ attributes).
|
|
27
|
+
- [ ] `Idml::Elements::ParagraphStyleRange` ←
|
|
28
|
+
`ParagraphStyleRange_Object` (large attribute set).
|
|
29
|
+
- [ ] `Idml::Elements::CharacterStyleRange` ←
|
|
30
|
+
`CharacterStyleRange_Object`.
|
|
31
|
+
- [ ] `Idml::Elements::Content` ← `Content_Object`.
|
|
32
|
+
- [ ] `Idml::Elements::XmlElement` ← `XMLElement_Object`.
|
|
33
|
+
- [ ] Each part class (`Spread`, `MasterSpread`, `Story`,
|
|
34
|
+
`BackingStory`, `Fonts`, `Graphic`, `Style`, `StyleMapping`,
|
|
35
|
+
`Preferences`, `Tags`, `Mapping`, `Designmap`) declares the full
|
|
36
|
+
attribute set from its root element's RNC definition.
|
|
37
|
+
- [ ] Round-trip per part continues to pass on every fixture (the
|
|
38
|
+
attribute expansion shouldn't break parsing).
|
|
39
|
+
|
|
40
|
+
## Files
|
|
41
|
+
|
|
42
|
+
- `lib/idml/elements/*.rb`
|
|
43
|
+
- `lib/idml/parts/*.rb`
|
|
44
|
+
- `spec/idml/elements/*_spec.rb` (new) — attribute-set assertions
|
|
45
|
+
against the RNC.
|
|
46
|
+
- `spec/idml/parts/*_spec.rb` (existing) — update attribute-set
|
|
47
|
+
expectations to match RNC.
|
|
48
|
+
|
|
49
|
+
## Design notes
|
|
50
|
+
|
|
51
|
+
- The RNC for each element lists `attribute Name { type }?` lines.
|
|
52
|
+
Translate each to `attribute :ruby_name, :lutaml_type` plus a
|
|
53
|
+
`map_attribute "Name", to: :ruby_name` in the xml block.
|
|
54
|
+
- Ruby names: snake_case of the XML name (`HyphenateCapitalizedWords`
|
|
55
|
+
→ `:hyphenate_capitalized_words`). For Ruby-reserved names (`Self`,
|
|
56
|
+
`Class`), append `_attr` (`Self` → `:self_attr`).
|
|
57
|
+
- Don't edit the RNC. The schema is the source of truth; the Ruby
|
|
58
|
+
class mirrors it.
|
|
59
|
+
- The current Document queries only need a few attributes per element,
|
|
60
|
+
but the classes should expose all of them. Future queries don't have
|
|
61
|
+
to expand the model; they just use the methods that are already
|
|
62
|
+
there.
|
|
63
|
+
|
|
64
|
+
## Dependencies
|
|
65
|
+
|
|
66
|
+
- TODO 23 (lutaml-model only).
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# TODO 27: Geometry scale + rotate
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Extend `Idml::Geometry` beyond translate to cover scale and rotate.
|
|
6
|
+
Completes the coordinate-transform toolkit composition ops need.
|
|
7
|
+
|
|
8
|
+
## Acceptance criteria
|
|
9
|
+
|
|
10
|
+
- [ ] `Geometry.scale(point, by:)` returns a new Point scaled by a factor.
|
|
11
|
+
- [ ] `Geometry.rotate(point, angle_degrees:, around:)` returns a new Point
|
|
12
|
+
rotated by `angle_degrees` around the `around` Point.
|
|
13
|
+
- [ ] Specs cover identity (no-op), single-axis scale, 90°/180°/270°
|
|
14
|
+
rotations, and a non-trivial rotation around an arbitrary origin.
|
|
15
|
+
|
|
16
|
+
## Files
|
|
17
|
+
|
|
18
|
+
- `lib/idml/geometry.rb`
|
|
19
|
+
- `spec/idml/geometry_spec.rb`
|
|
20
|
+
|
|
21
|
+
## Design notes
|
|
22
|
+
|
|
23
|
+
- IDML coordinate system: origin bottom-left of spread, y up.
|
|
24
|
+
- Standard math; no XML involved.
|
|
25
|
+
|
|
26
|
+
## Dependencies
|
|
27
|
+
|
|
28
|
+
- None.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# TODO 28: Designmap migration to DocumentObject
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Replace the hand-written attribute list on `Idml::Parts::Designmap`
|
|
6
|
+
with a typed `DocumentObject` inner element — the same wrapper
|
|
7
|
+
pattern used by `Story` (which wraps `StoryInner`).
|
|
8
|
+
|
|
9
|
+
## Acceptance criteria
|
|
10
|
+
|
|
11
|
+
- [ ] `Designmap` declares a single `inner` attribute of type
|
|
12
|
+
`Idml::Elements::DocumentObject`.
|
|
13
|
+
- [ ] `Designmap.dom_version`, `Designmap.self_attr`, `Designmap.name`
|
|
14
|
+
continue to work via delegation.
|
|
15
|
+
- [ ] All existing designmap specs pass unchanged.
|
|
16
|
+
- [ ] Round-trip suite continues to pass on every fixture.
|
|
17
|
+
|
|
18
|
+
## Files
|
|
19
|
+
|
|
20
|
+
- `lib/idml/parts/designmap.rb`
|
|
21
|
+
- `lib/idml/elements/document_object.rb` (regenerate if needed)
|
|
22
|
+
- `spec/idml/parts/designmap_spec.rb` (existing — verify still passes)
|
|
23
|
+
|
|
24
|
+
## Design notes
|
|
25
|
+
|
|
26
|
+
- The current Designmap has 33 hand-written attributes that match
|
|
27
|
+
`Document_Object`'s direct attributes. Migrating them into the
|
|
28
|
+
typed `DocumentObject` element keeps the wrapper pattern consistent
|
|
29
|
+
with Story → StoryInner, Spread → SpreadObject, etc.
|
|
30
|
+
|
|
31
|
+
## Dependencies
|
|
32
|
+
|
|
33
|
+
- None.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# TODO 29: AddPageFromIdml composition op
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Implement `Composition::AddPageFromIdml` — copy a page from a source
|
|
6
|
+
package into a destination package. Follows the same pattern as
|
|
7
|
+
`InsertIdml` (structural merge) and uses `Prefix` to avoid Self
|
|
8
|
+
collisions.
|
|
9
|
+
|
|
10
|
+
## Acceptance criteria
|
|
11
|
+
|
|
12
|
+
- [ ] `AddPageFromIdml.new(dest_pkg).call(source:, page_number:, at:, only:)`
|
|
13
|
+
returns a new Package with the source's specified page appended.
|
|
14
|
+
- [ ] Prefixes both packages to avoid Self collisions.
|
|
15
|
+
- [ ] Adds the source page's spread to dest's spreads list (in designmap).
|
|
16
|
+
- [ ] Adds the source page's stories to dest's package.
|
|
17
|
+
- [ ] Spec: adding a page from a multi-page fixture to a single-page
|
|
18
|
+
fixture results in a package with one more page.
|
|
19
|
+
|
|
20
|
+
## Files
|
|
21
|
+
|
|
22
|
+
- `lib/idml/composition/add_page_from_idml.rb`
|
|
23
|
+
- `spec/idml/composition/add_page_from_idml_spec.rb`
|
|
24
|
+
|
|
25
|
+
## Design notes
|
|
26
|
+
|
|
27
|
+
- Page-level extraction from a Spread requires identifying which
|
|
28
|
+
`<Page>` child of the spread corresponds to the requested page
|
|
29
|
+
number, plus the page items between this Page boundary and the next.
|
|
30
|
+
- This is a simplified structural implementation — full geometric
|
|
31
|
+
reflow is deferred.
|
|
32
|
+
|
|
33
|
+
## Dependencies
|
|
34
|
+
|
|
35
|
+
- TODOs 11, 14 (Geometry for transforms if needed).
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# TODO 30: ImportXml composition op
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Implement `Composition::ImportXml` — replace text content in a
|
|
6
|
+
package's stories based on an XML structure tree. Mirrors
|
|
7
|
+
SimpleIDML's `IDMLPackage.import_xml`.
|
|
8
|
+
|
|
9
|
+
## Acceptance criteria
|
|
10
|
+
|
|
11
|
+
- [ ] `ImportXml.new(pkg).call(xml_string:, at:)` returns a new
|
|
12
|
+
Package with text content updated per the XML.
|
|
13
|
+
- [ ] Honors SimpleIDML's flags:
|
|
14
|
+
`simpleidml-setcontent="false"`,
|
|
15
|
+
`simpleidml-ignorecontent="true"`,
|
|
16
|
+
`simpleidml-setcontent="delete"`,
|
|
17
|
+
`simpleidml-setcontent="clear"`,
|
|
18
|
+
`simpleidml-setcontent="remove-previous-br"`,
|
|
19
|
+
`simpleidml-forcecontent="true"`.
|
|
20
|
+
- [ ] Spec: importing a known XML fragment into the fixture replaces
|
|
21
|
+
a specific story's text with the new content.
|
|
22
|
+
|
|
23
|
+
## Files
|
|
24
|
+
|
|
25
|
+
- `lib/idml/composition/import_xml.rb`
|
|
26
|
+
- `spec/idml/composition/import_xml_spec.rb`
|
|
27
|
+
|
|
28
|
+
## Design notes
|
|
29
|
+
|
|
30
|
+
- Walks the source XML tree (lutaml-model), finds matching XMLElement
|
|
31
|
+
by Self in the package's stories, replaces Content text.
|
|
32
|
+
- Image references via `href` attribute swap image links — defer if
|
|
33
|
+
complex.
|
|
34
|
+
|
|
35
|
+
## Dependencies
|
|
36
|
+
|
|
37
|
+
- TODO 12 (Document for navigation).
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# TODO 31: ExportXml composition op
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Implement `Composition::ExportXml` — produce a flat XML string
|
|
6
|
+
representing the package's logical XML structure tree + text content.
|
|
7
|
+
Mirrors SimpleIDML's `IDMLPackage.export_xml`.
|
|
8
|
+
|
|
9
|
+
## Acceptance criteria
|
|
10
|
+
|
|
11
|
+
- [ ] `ExportXml.new(pkg).call(at: nil)` returns a String of XML.
|
|
12
|
+
- [ ] Output is rooted at the package's BackingStory structure.
|
|
13
|
+
- [ ] Each XMLElement has its text content populated from its linked
|
|
14
|
+
Story.
|
|
15
|
+
- [ ] Spec: exporting the fixture yields XML containing every tagged
|
|
16
|
+
element with its text.
|
|
17
|
+
|
|
18
|
+
## Files
|
|
19
|
+
|
|
20
|
+
- `lib/idml/composition/export_xml.rb`
|
|
21
|
+
- `spec/idml/composition/export_xml_spec.rb`
|
|
22
|
+
|
|
23
|
+
## Design notes
|
|
24
|
+
|
|
25
|
+
- Walks BackingStory's XmlElement tree.
|
|
26
|
+
- For each XMLElement with an XMLContent attribute, fetches the
|
|
27
|
+
linked Story and inlines its text.
|
|
28
|
+
- Output is well-formed XML via lutaml-model serialization.
|
|
29
|
+
|
|
30
|
+
## Dependencies
|
|
31
|
+
|
|
32
|
+
- TODO 12 (Document for navigation).
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# TODO 33: Per-element spec coverage
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Add a parameterized spec that exercises every typed element class —
|
|
6
|
+
guarantees the codegen output parses a minimal valid XML fragment.
|
|
7
|
+
|
|
8
|
+
## Acceptance criteria
|
|
9
|
+
|
|
10
|
+
- [ ] `spec/idml/elements_spec.rb` enumerates every class in
|
|
11
|
+
`Idml::Elements` (via `Idml::Elements.constants`).
|
|
12
|
+
- [ ] For each class: instantiate via `<Foo Self="x"/>` (or similar
|
|
13
|
+
minimal valid XML for that element's root name).
|
|
14
|
+
- [ ] Asserts the returned object's class.
|
|
15
|
+
- [ ] For classes with a `Self` attribute on the root: asserts the
|
|
16
|
+
attribute round-trips.
|
|
17
|
+
|
|
18
|
+
## Files
|
|
19
|
+
|
|
20
|
+
- `spec/idml/elements_spec.rb`
|
|
21
|
+
|
|
22
|
+
## Design notes
|
|
23
|
+
|
|
24
|
+
- Catches codegen bugs that produce syntactically valid but
|
|
25
|
+
semantically broken Ruby (wrong root name, missing namespace).
|
|
26
|
+
- Cheap to run; high coverage value.
|
|
27
|
+
|
|
28
|
+
## Dependencies
|
|
29
|
+
|
|
30
|
+
- TODOs 23-26 (the codegen output this spec verifies).
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# TODO PDF 01: Font metrics reader
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Read OpenType/TrueType font files and expose per-glyph advance widths
|
|
6
|
+
and kerning pairs. This is the foundation of the text engine — without
|
|
7
|
+
font metrics, we can't measure text or position glyphs.
|
|
8
|
+
|
|
9
|
+
## Acceptance criteria
|
|
10
|
+
|
|
11
|
+
- [ ] `Idml::TextEngine::FontMetrics.open(path)` loads a .ttf or .otf
|
|
12
|
+
file and parses the `head`, `hhea`, `hmtx`, `cmap`, and `kern`
|
|
13
|
+
(or `GPOS`) tables.
|
|
14
|
+
- [ ] `#glyph_width(codepoint)` returns the advance width for a
|
|
15
|
+
Unicode codepoint, scaled to the font's `unitsPerEm`.
|
|
16
|
+
- [ ] `#kerning_pair(left_cp, right_cp)` returns the kerning value
|
|
17
|
+
for a glyph pair (0 if none).
|
|
18
|
+
- [ ] `#ascent`, `#descent`, `#line_gap`, `#units_per_em` expose
|
|
19
|
+
vertical metrics.
|
|
20
|
+
- [ ] Uses `ttfunk` (Prawn's font reader) as the parsing backend —
|
|
21
|
+
battle-tested, pure Ruby, MIT license.
|
|
22
|
+
- [ ] Spec: load a known font (e.g., DejaVuSans.ttf), verify glyph
|
|
23
|
+
widths for 'A', 'a', ' ', and verify ascent/descent.
|
|
24
|
+
|
|
25
|
+
## Files
|
|
26
|
+
|
|
27
|
+
- `lib/idml/text_engine.rb` — module + autoloads.
|
|
28
|
+
- `lib/idml/text_engine/font_metrics.rb`
|
|
29
|
+
- `spec/idml/text_engine/font_metrics_spec.rb`
|
|
30
|
+
|
|
31
|
+
## Design notes
|
|
32
|
+
|
|
33
|
+
- `ttfunk` parses the binary font format. We wrap it in a typed
|
|
34
|
+
`FontMetrics` class that exposes a clean API (no TTFunk types leak).
|
|
35
|
+
- Cache glyph widths after first lookup (most documents reuse the
|
|
36
|
+
same glyphs heavily).
|
|
37
|
+
- The IDML `Fonts.xml` lists font family + style names. We need a
|
|
38
|
+
resolver that maps `Name="Minion Pro"` + `FontStyleName="Regular"`
|
|
39
|
+
to a .ttf/.otf file on disk. This is TODO 02.
|
|
40
|
+
|
|
41
|
+
## Dependencies
|
|
42
|
+
|
|
43
|
+
- `ttfunk` gem (add to gemspec).
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# TODO PDF 02: Font resolver
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Map IDML font references (family + style) to .ttf/.otf file paths on
|
|
6
|
+
disk. IDML's `Fonts.xml` lists every font used; the resolver finds
|
|
7
|
+
the actual font program.
|
|
8
|
+
|
|
9
|
+
## Acceptance criteria
|
|
10
|
+
|
|
11
|
+
- [ ] `Idml::TextEngine::FontResolver.new(font_search_paths:)`
|
|
12
|
+
accepts a list of directories to search.
|
|
13
|
+
- [ ] `#resolve(family_name:, style_name:)` returns a
|
|
14
|
+
`FontMetrics` instance (from TODO 01) or nil if not found.
|
|
15
|
+
- [ ] Searches common locations: system font dirs, user font dirs,
|
|
16
|
+
InDesign Document fonts folder (inside the IDML package's
|
|
17
|
+
parent), and any user-configured paths.
|
|
18
|
+
- [ ] Handles style aliases: "Regular" = "Normal" = "Book";
|
|
19
|
+
"Bold" = "Semibold" when no exact match.
|
|
20
|
+
- [ ] Caches resolved fonts by (family, style) key.
|
|
21
|
+
- [ ] Spec: resolve a system font (e.g., "Arial" / "Regular" on
|
|
22
|
+
macOS or "DejaVu Sans" / "Book" on Linux).
|
|
23
|
+
|
|
24
|
+
## Files
|
|
25
|
+
|
|
26
|
+
- `lib/idml/text_engine/font_resolver.rb`
|
|
27
|
+
- `spec/idml/text_engine/font_resolver_spec.rb`
|
|
28
|
+
|
|
29
|
+
## Design notes
|
|
30
|
+
|
|
31
|
+
- Font resolution is inherently platform-dependent. macOS uses
|
|
32
|
+
`~/Library/Fonts/`, `/Library/Fonts/`, `/System/Library/Fonts/`.
|
|
33
|
+
Linux uses `/usr/share/fonts/`, `~/.local/share/fonts/`.
|
|
34
|
+
Windows uses `C:\Windows\Fonts\`.
|
|
35
|
+
- The IDML package itself may carry a "Document fonts" folder
|
|
36
|
+
(via InDesign's Package feature). Check there first.
|
|
37
|
+
- For tests, bundle a small open-source font (e.g., DejaVu Sans
|
|
38
|
+
subset or Source Sans Pro) under `spec/fixtures/fonts/`.
|
|
39
|
+
|
|
40
|
+
## Dependencies
|
|
41
|
+
|
|
42
|
+
- TODO 01 (FontMetrics).
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# TODO PDF 03: Text shaper
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Convert a text string + font + size into a sequence of positioned
|
|
6
|
+
glyphs with widths and kerning applied. The shaper is the bridge
|
|
7
|
+
between raw text and layout.
|
|
8
|
+
|
|
9
|
+
## Acceptance criteria
|
|
10
|
+
|
|
11
|
+
- [ ] `Idml::TextEngine::Shaper.shape(text:, font_metrics:, size:)`
|
|
12
|
+
returns an Array of `ShapedGlyph` structs (codepoint, advance
|
|
13
|
+
width at the given size, kerning adjustment vs previous glyph).
|
|
14
|
+
- [ ] `ShapedGlyph` struct: `codepoint`, `glyph_id`, `width`
|
|
15
|
+
(scaled to point size), `x_offset`, `y_offset`.
|
|
16
|
+
- [ ] Handles basic kerning via `font_metrics.kerning_pair`.
|
|
17
|
+
- [ ] `ShapedLine.measure(glyphs)` returns total width.
|
|
18
|
+
- [ ] Spec: shape "Hello" in a known font, verify total width
|
|
19
|
+
matches sum of glyph widths ± kerning.
|
|
20
|
+
|
|
21
|
+
## Files
|
|
22
|
+
|
|
23
|
+
- `lib/idml/text_engine/shaper.rb`
|
|
24
|
+
- `lib/idml/text_engine/shaped_glyph.rb`
|
|
25
|
+
- `spec/idml/text_engine/shaper_spec.rb`
|
|
26
|
+
|
|
27
|
+
## Design notes
|
|
28
|
+
|
|
29
|
+
- No OpenType feature substitution (GSUB) in the first version.
|
|
30
|
+
Ligatures (fi, fl, ff) and contextual alternates are deferred —
|
|
31
|
+
they require parsing the GSUB table, which is a significant
|
|
32
|
+
undertaking. The text engine renders individual codepoints;
|
|
33
|
+
ligatures appear as separate characters.
|
|
34
|
+
- Tracking (letter spacing) is applied as a constant offset per
|
|
35
|
+
glyph. Word spacing is applied at space characters.
|
|
36
|
+
- Ruby's String#each_codepoint handles Unicode correctly.
|
|
37
|
+
|
|
38
|
+
## Dependencies
|
|
39
|
+
|
|
40
|
+
- TODO 01 (FontMetrics).
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# TODO PDF 04: Line breaker + justifier
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Break shaped text into lines that fit within a frame width, then
|
|
6
|
+
justify each line per its paragraph alignment.
|
|
7
|
+
|
|
8
|
+
## Acceptance criteria
|
|
9
|
+
|
|
10
|
+
- [ ] `Idml::TextEngine::LineBreaker.break(glyphs:, frame_width:)`
|
|
11
|
+
returns an Array of `Line` objects, each holding a sub-range
|
|
12
|
+
of glyphs and the line's natural width.
|
|
13
|
+
- [ ] Greedy algorithm: accumulate words until exceeding frame
|
|
14
|
+
width, then break. Word boundary = space glyph.
|
|
15
|
+
- [ ] Hyphenation: optional, via `hyphenate: true` kwarg. Uses
|
|
16
|
+
simple suffix rules in the first version (TeX patterns
|
|
17
|
+
deferred).
|
|
18
|
+
- [ ] `Idml::TextEngine::Justifier.justify(line:, frame_width:,`
|
|
19
|
+
`alignment:)` adjusts glyph x-positions per alignment:
|
|
20
|
+
- `:left` — no adjustment.
|
|
21
|
+
- `:center` — center the line in the frame.
|
|
22
|
+
- `:right` — right-align.
|
|
23
|
+
- `:justified` — distribute extra space between words.
|
|
24
|
+
- [ ] Justified mode distributes space per the paragraph's
|
|
25
|
+
MinimumWordSpacing / DesiredWordSpacing / MaximumWordSpacing
|
|
26
|
+
(already typed on ParagraphStyleRange).
|
|
27
|
+
- [ ] Spec: break a 100-word paragraph at 300pt width, verify no
|
|
28
|
+
line exceeds 300pt. Verify center/right/justified produce
|
|
29
|
+
correct x-offsets.
|
|
30
|
+
|
|
31
|
+
## Files
|
|
32
|
+
|
|
33
|
+
- `lib/idml/text_engine/line_breaker.rb`
|
|
34
|
+
- `lib/idml/text_engine/justifier.rb`
|
|
35
|
+
- `lib/idml/text_engine/line.rb`
|
|
36
|
+
- `spec/idml/text_engine/line_breaker_spec.rb`
|
|
37
|
+
- `spec/idml/text_engine/justifier_spec.rb`
|
|
38
|
+
|
|
39
|
+
## Design notes
|
|
40
|
+
|
|
41
|
+
- Greedy breaking is not as good as Knuth-Plass (InDesign's
|
|
42
|
+
Paragraph Composer), but it handles 90% of cases correctly.
|
|
43
|
+
Bad breaks (orphan/widow lines, rivers) are visible but the text
|
|
44
|
+
is readable.
|
|
45
|
+
- The Justifier distributes "slack" (frame_width - line_width)
|
|
46
|
+
across word spaces for justified text. Each space grows by
|
|
47
|
+
slack / number_of_spaces, clamped to min/max word spacing.
|
|
48
|
+
|
|
49
|
+
## Dependencies
|
|
50
|
+
|
|
51
|
+
- TODO 03 (Shaper).
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# TODO PDF 05: Vertical layout
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Position lines vertically within a text frame: leading, paragraph
|
|
6
|
+
spacing, drop caps, inset margins.
|
|
7
|
+
|
|
8
|
+
## Acceptance criteria
|
|
9
|
+
|
|
10
|
+
- [ ] `Idml::TextEngine::VerticalLayout.layout(lines:, frame:,`
|
|
11
|
+
`paragraph_attrs:)` returns positioned glyphs with final
|
|
12
|
+
(x, y) coordinates.
|
|
13
|
+
- [ ] Leading: each line advances by `font_size * auto_leading`
|
|
14
|
+
(default 1.2) or the explicit Leading attribute.
|
|
15
|
+
- [ ] Paragraph spacing: SpaceBefore added before the first line
|
|
16
|
+
of each paragraph; SpaceAfter after the last.
|
|
17
|
+
- [ ] First-line indent: FirstLineIndent offset on the first line
|
|
18
|
+
of each paragraph.
|
|
19
|
+
- [ ] Left/right indent: LeftIndent / RightIndent shrink the
|
|
20
|
+
effective frame width.
|
|
21
|
+
- [ ] Frame insets: InsetSpacing (top, bottom, left, right) from
|
|
22
|
+
the TextFrame's TextFramePreference.
|
|
23
|
+
- [ ] Spec: layout a 3-paragraph text block, verify Y positions
|
|
24
|
+
respect leading + spacing.
|
|
25
|
+
|
|
26
|
+
## Files
|
|
27
|
+
|
|
28
|
+
- `lib/idml/text_engine/vertical_layout.rb`
|
|
29
|
+
- `spec/idml/text_engine/vertical_layout_spec.rb`
|
|
30
|
+
|
|
31
|
+
## Design notes
|
|
32
|
+
|
|
33
|
+
- IDML's coordinate system: origin bottom-left, y increases
|
|
34
|
+
upward. The vertical layout works top-down (first line at top
|
|
35
|
+
of frame) and emits y coordinates in IDML convention.
|
|
36
|
+
- Drop caps (DropCapLines, DropCapCharacters) are a stretch goal
|
|
37
|
+
— they require enlarging the first N characters' font size and
|
|
38
|
+
wrapping text around them.
|
|
39
|
+
|
|
40
|
+
## Dependencies
|
|
41
|
+
|
|
42
|
+
- TODOs 03, 04 (Shaper, LineBreaker).
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# TODO PDF 06: PDF color operators
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Map IDML color definitions (from Graphic.xml) to PDF color space
|
|
6
|
+
operators for content streams.
|
|
7
|
+
|
|
8
|
+
## Acceptance criteria
|
|
9
|
+
|
|
10
|
+
- [ ] `Idml::Render::Color` converts IDML Color objects (RGB, CMYK,
|
|
11
|
+
LAB) to PDF operator strings.
|
|
12
|
+
- [ ] RGB: `r g b rg` (fill), `r g b RG` (stroke). Values 0.0–1.0.
|
|
13
|
+
- [ ] CMYK: `c m y k k` (fill), `c m y k K` (stroke).
|
|
14
|
+
- [ ] Tint: scaled color value (IDML TintValue applies).
|
|
15
|
+
- [ ] Named colors resolved from Graphic.xml's Color collection.
|
|
16
|
+
- [ ] Spec: convert a known RGB color to operator string.
|
|
17
|
+
|
|
18
|
+
## Files
|
|
19
|
+
|
|
20
|
+
- `lib/idml/render/color.rb`
|
|
21
|
+
- `spec/idml/render/color_spec.rb`
|
|
22
|
+
|
|
23
|
+
## Dependencies
|
|
24
|
+
|
|
25
|
+
- Typed Graphic/Color element classes (done).
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# TODO PDF 07: PDF path operators
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Map IDML geometric page items (Rectangle, Polygon, GraphicLine, etc.)
|
|
6
|
+
to PDF path construction and painting operators.
|
|
7
|
+
|
|
8
|
+
## Acceptance criteria
|
|
9
|
+
|
|
10
|
+
- [ ] `Idml::Render::Path` converts IDML ItemTransform + Path points
|
|
11
|
+
to PDF path operators.
|
|
12
|
+
- [ ] Rectangle → `x y w h re`.
|
|
13
|
+
- [ ] Polygon/Path → `x y m ... x y l ... h` (moveto, lineto, close).
|
|
14
|
+
- [ ] Fill → `f` (nonzero winding).
|
|
15
|
+
- [ ] Stroke → `S`.
|
|
16
|
+
- [ ] Fill + Stroke → `B`.
|
|
17
|
+
- [ ] ItemTransform (transformation matrix) → `a b c d e f cm`
|
|
18
|
+
(current transformation matrix).
|
|
19
|
+
- [ ] Spec: render a known rectangle to operator string.
|
|
20
|
+
|
|
21
|
+
## Files
|
|
22
|
+
|
|
23
|
+
- `lib/idml/render/path.rb`
|
|
24
|
+
- `spec/idml/render/path_spec.rb`
|
|
25
|
+
|
|
26
|
+
## Dependencies
|
|
27
|
+
|
|
28
|
+
- Typed Spread/SpreadObject element classes (done).
|
|
29
|
+
- TODO 06 (Color for fill/stroke).
|