Office Open XML Developer Workshop WordprocessingML Basics.

Slides:



Advertisements
Similar presentations
PresentationML.
Advertisements

The following 10 questions test your knowledge of client site assignment in Configuration Manager Configuration Manager 2007 Client Site Assignment.
The following 10 questions test your knowledge of Internet-based client management in Configuration Manager Configuration Manager 2007 Internet-Based.
The following 10 questions test your knowledge of desired configuration management in Configuration Manager Configuration Manager Desired Configuration.
Chapter 3 – Web Design Tables & Page Layout
WordprocessingML Basics
Integrating data and documents
Open XML Developer Workshop DrawingML Basics. Open XML Developer Workshop Disclaimer The information contained in this slide deck represents the current.
SpreadsheetML Advanced
SpreadsheetML Basics.
Open XML Developer Workshop PresentationML. Open XML Developer Workshop Disclaimer The information contained in this slide deck represents the current.
DrawingML Basics.
© 2014 Microsoft Corporation. All rights reserved.
Open XML Developer Workshop WordprocessingML Advanced.
® Microsoft Office 2010 Word Tutorial 3 Creating a Multiple-Page Report.
MIX 09 4/15/ :14 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Open XML Developer Workshop SpreadsheetML Advanced.
® Microsoft Office 2010 Word Tutorial 3 Creating a Multiple-Page Report.
McGraw-Hill Technology Education © 2004 by the McGraw-Hill Companies, Inc. All rights reserved. Office Word 2003 Lab 3 Creating Reports and Tables.
Tutorial 8 Designing a Web Site with Frames. XP Objectives Explore the uses of frames in a Web site Create a frameset consisting of rows and columns of.
Word Tutorial 3 Creating a Multiple-Page Report
Office Open XML Developer Workshop Office Open XML Overview Štěpán Bechynský.
Open XML Developer Workshop SpreadsheetML Advanced.
Ashish jaiman architect evangelist Microsoft
The information contained in this document represents the current view of Microsoft Corporation on the issues discussed as of the date of publication.
© 2002 ComputerPREP, Inc. All rights reserved. Word 2000: Working with Long Documents.
Session 1.
Vital Signs: Performance Monitoring Windows Server
Office Open XML Developer Workshop SpreadsheetML Basics.
Copyright © Texas Education Agency, All rights reserved. 1 Web Technologies Website Development with Dreamweaver.
Web Technologies Website Development Trade & Industrial Education
Conditions and Terms of Use
© 2012 Microsoft Corporation. All rights reserved.
Website Development with Dreamweaver
Tutorial 8 Designing a Web Site with Frames. XP Objectives Explore the uses of frames in a Web site Create a frameset consisting of rows and columns of.
Committed to Shaping the Next Generation of IT Experts. Exploring Microsoft Office Word 2007 Chapter 4: Share, Compare and Document Robert Grauer, Keith.
Designing a Web Page with Tables. A text table: contains only text, evenly spaced on the Web page in rows and columns uses only standard word processing.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
® Microsoft Office 2010 Word Tutorial 3 Creating a Multiple-Page Report.
Feature: Customer Combiner and Modifier © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
Tutorial 8 Designing a Web Site with Frames. 2New Perspectives on HTML, XHTML, and XML, Comprehensive, 3rd Edition Objectives Explore the uses of frames.
Systems Management Server 2.0: Backup and Recovery Overview SMS Recovery Web Site location: Updated.
FIRST COURSE Word Tutorial 3 Creating a Multiple-Page Report.
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall. 1 Skills for Success with Microsoft ® Office 2007 PowerPoint Lecture to Accompany.

Office Open XML Developer Workshop Custom XML Integrating data and documents.
customer.
Office Open XML Developer Workshop DrawingML Basics.
Open XML Developer Workshop WordprocessingML Advanced.
demo © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
Open XML Developer Workshop WordprocessingML Basics.
demo Demo.
demo QueryForeign KeyInstance /sm:body()/x:Order/x:Delivery/y:TrackingId1Z
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks.
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.

Open XML Developer Workshop XSLT and Open XML. Open XML Developer Workshop Disclaimer The information contained in this slide deck represents the current.
Event Title Event Date. Module 02—Introduction to Dimensional Modeling Techniques Name Title Microsoft Corporation.
Event Title Event Date. Module 05—Publishing and Accessing Reports with Reporting Services Name Title Microsoft Corporation.
Using Parallelspace TEAM Models to Design and Create Custom Profiles
Имя Должность Microsoft
XSLT and Open XML.
Notebook Cover Guidelines
Parallelspace PowerPoint Template for ArchiMate® 2.1 version 1.1
Parallelspace PowerPoint Template for ArchiMate® 2.1 version 2.0
Entity Based Staging SQL Server 2012 Tyler Graham
Windows 8 Security Internals
Presentation transcript:

Office Open XML Developer Workshop WordprocessingML Basics

Office Open XML Developer Workshop Disclaimer The information contained in this slide deck represents the current view of Microsoft Corporation on the issues discussed as of the date of publication. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information presented after the date of publication. This slide deck is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS DOCUMENT. Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this slide deck may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of Microsoft Corporation. Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this slide deck. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this slide deck does not give you any license to these patents, trademarks, copyrights, or other intellectual property. Unless otherwise noted, the example companies, organizations, products, domain names, addresses, logos, people, places and events depicted herein are fictitious, and no association with any real company, organization, product, domain name, address, logo, person, place or event is intended or should be inferred. © 2006 Microsoft Corporation. All rights reserved. Microsoft, 2007 Microsoft Office System,.NET Framework 3.0, Visual Studio, and Windows Vista are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries. The names of actual companies and products mentioned herein may be the trademarks of their respective owners.

Office Open XML Developer Workshop Objectives This module covers the essentials of creating and reading WordprocessingML documents: Document architecture The main document part Core concepts: paragraphs, runs, text Working with images and hyperlinks Macros and security concepts WordprocessingML tables

Office Open XML Developer Workshop WordprocessingML Document Architecture Document body properties fontTable headers/footers images numberingDefinitions styles customXML footnotes/endnotes comments A WordprocessingML file is a collection of multiple subdocuments: The main story Header(s) / Footer(s) Footnote(s) / Endnote(s) Subdocuments Comment(s)

Office Open XML Developer Workshop MAIN DOCUMENT PART

Office Open XML Developer Workshop Main Document Part The top-level element in the start part (e.g., document.xml) is document Document has two optional child elements: The background element, which specifies the settings for the background for the document The body element, which contains the content of the main story

Office Open XML Developer Workshop Block-level Elements The body element contains the main document story, made up of block-level elements: Paragraphs Tables Custom XML markup Alternate format chunks Subdocuments Final section properties Future extensibility containers Nested elements: a table may contain a table which contains a paragraph, etc.

Office Open XML Developer Workshop Inline Structures The paragraph element contains inline structures: Runs (containing text regions) Custom Markup (can occur at block or inline level) Annotations (comments, tracked changes, bookmarks) DrawingML elements Fields (date, page number, document title/creator, etc.) Hyperlinks

Office Open XML Developer Workshop PARAGRAPHS, RUNS, AND TEXT

Office Open XML Developer Workshop Paragraphs The most basic unit of a WordprocessingML document Contains three pieces of information: Paragraph properties Inline content optional revision IDs used for document merge and compare A paragraph may occur at any location which allows block level content: At the top-most level within a story (e.g. header, footer, main document) Nested within a table cell Nested within a structured document tag or annotation markers

Office Open XML Developer Workshop Paragraph Example Simple text formatting at the paragraph/run levels: Paragraph properties specify bold (default for the entire paragraph) The quick brown fox. The quick brown fox. Run properties specify italics (override for this run)

Office Open XML Developer Workshop Paragraph Properties Can be set directly on a paragraph (below) or in a paragraph style 24 total property settings … runs, paragraph content …

Office Open XML Developer Workshop Runs A run is a region of text with a common set of properties All text must be contained within runs All runs must be contained within paragraphs A run contains three types of information: Run properties Run content (text, fields, soft line breaks, pictures, etc.) Optional revision IDs for document comparison

Office Open XML Developer Workshop Define formatting for individual characters Font attributes, size/position, etc. 24 total properties Run Properties

Office Open XML Developer Workshop Run Content Runs may contain various inline structures: Text Deleted text Soft line breaks Field codes, deleted field codes Footnote/endnote reference marks Fields: page numbers, dates, document properties, etc. Tabs Ruby text DrawingML content Embedded objects Pictures

Office Open XML Developer Workshop Text This is the only element in the main story that can contain text – all other text is in attribute values Three other types of text are allowed in runs: Deleted text Field code Deleted field codes Benefit of this design: by looking only to the nodes, you can be sure you’re seeing the displayed text and nothing more. DEMO

Office Open XML Developer Workshop Run/Text Structure: Not Predictable Producers may break run/text elements arbitrarily Never assume anything about run/text structure! These examples are functionally identical. These examples are functionally identical.

Office Open XML Developer Workshop Revision IDs (RSIDs) RSID values are used to identify a set of changes that were made during the same editing session Found in many elements: Paragraphs, runs, sections, styles Table rows, table properties, charts, diagrams Allows for merging revisions, without the privacy and security issues involved in tracking who changed what Optional, but recommended for applications that modify existing documents

Office Open XML Developer Workshop Revision IDs (RSIDs) – Best Practices Always assign an rsidRoot for newly created documents Always generate a revision ID higher than any existing revision ID in the document Randomize revision IDs based on current time Use 8-digit hex numbers Sample revision IDs table (from settings part): DEMO

Office Open XML Developer Workshop IMAGES AND HYPERLINKS

Office Open XML Developer Workshop Images An image is a w:pict element inside a run The v:imagedata element is defined in VML: xmlns:v="urn:schemas-microsoft-com:vml" The actual image is referenced via a relationship: The relationship points to an image part in the package: <Relationship Id="rId4” Type=" Target="image1.jpg"/> <Relationship Id="rId4” Type=" Target="image1.jpg"/>

Office Open XML Developer Workshop Hyperlinks A hyperlink is nested inside a paragraph, outside a run: The destination is stored in a relationship: Click here for OpenXmlDeveloper.org. <Relationship Id=“linkRel1“ Type=" Target=" TargetMode="External" /> <Relationship Id=“linkRel1“ Type=" Target=" TargetMode="External" /> DEMO

Office Open XML Developer Workshop Hyperlink Destinations Hyperlinks can link to three types of destinations: Intradocument: a bookmark contained within the current WordprocessingML document. Interdocument: another WordprocessingML package; may optionally specify a bookmark within that package. Other destinations: any other valid URI location, such as the web-page example shown previously.

Office Open XML Developer Workshop WORDPROCESSINGML TABLES

Office Open XML Developer Workshop Tables Tables are a set of paragraphs which are arranged into rows and columns In WordprocessingML, tables are block level content, and are specified using the tbl element Analogous to the HTML element

Office Open XML Developer Workshop What’s in a WordprocessingML table? Four types of content: Properties Grid Rows Cells 1,1 1,2 1,1 1,2 DEMO

Office Open XML Developer Workshop Table Properties The tblPr section specifies various properties that apply to the entire table Sizing, alignment, text wrap Table styles (rows/columns per band, conditional formatting flags) Borders, cell margins, shading Table property revisions

Office Open XML Developer Workshop Table Rows The element defines a table row Analogous to the HTML tag Table rows can contain: Table row properties Custom XML markup Table cell content … row content … … row content … … row content … … row content …

Office Open XML Developer Workshop Table Row Properties Overrides various properties for this row: Row height Breaking across pages Conditional formatting Many other properties

Office Open XML Developer Workshop Table Cells The tc element defines the contents of a table cell Analogous to the HTML tag Table cells can contain: Cell properties Any block-level content Table cells must contain at least one paragraph, even if it’s empty Tables may be nested … cell content … … cell content … … cell content … … cell content …

Office Open XML Developer Workshop Table Cell Properties Overrides various properties for cell values: Preferred width Vertical alignment Cell margins Text wrap Many other properties

Office Open XML Developer Workshop Table Layout Concepts Table layout is determined by multiple properties: The table grid Table-level properties (example: preferred width) Row-level properties (example: indentation before/after) Cell-level properties (example: preferred width) These properties may contradict one another, and it is the responsibility of the consuming application to resolve those conflicts The table must satisfy the grid at all times

Office Open XML Developer Workshop AutoFit Table Layout An AutoFit table dynamically resizes to fit its content The resizing algorithm that Office uses is based on the published W3C spec for table AutoFit, with provisions for gridBefore/gridAfter

Office Open XML Developer Workshop Vertical Cell Merges So far, we've looked at tables as if they have strict definitions of rows But cells can span multiple rows: Vertically merged cell

Office Open XML Developer Workshop Vertical Cell Merges Cells are merged vertically using the vmerge element A vMerge element of type "restart" begins or restarts a vertically merged region A vMerge element of type "continue" continues a vertical merge (Word uses “continue” as the default for vMerge type) Cells in the same grid column after a “restart” are merged vertically until the last “continue” Only the contents of the first cell are rendered – the other cells don’t exist after the merge DEMO

Office Open XML Developer Workshop