SlideShare une entreprise Scribd logo
1  sur  51
Components of WordprocessingML
• Main Document
• Paragraphs & Rich Formatting
– Runs
– Run Content
• Tables
• Custom Markup
• Sections
• Styles
– Paragraph
– Character
– Numbering
– Table
– Document Defaults
• Fonts
• Numbering
• Headers/Footers
• Footnotes/Endnotes
• Glossary Document
• Annotations
– Comments
– Revisions
– Bookmarks
• Mail Merge
• Document Settings
– Web Settings
– Compatibility Settings
• Fields & Hyperlinks
• Odds & Ends (Textboxes, Subdocuments, Extensibility)
Ecma/TC45/2006/026 (Rev.)
WordprocessingML – Tables
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 table
element
– Analogous to the HTML <table> element
Tables
• A WordprocessingML table consists of four
components:
– Table properties
– Table grid
– Table Rows
• Table cells
Table Example
Table
Properties
Table Rows
Table Cells
Table Grid
Table Properties
• All table-wide properties are specified using
the tblPr element
Table Properties
• Table style
– Conditional
formatting flags
– Rows per row band
– Columns per column
band
• RTL vs. LTR
• Alignment
• Sizing
– Preferred Width
– AutoFit vs. fixed
width
– (these two are
important, we'll
come back to them)
• Indentation from
margin
Table Properties (cont'd)
• Table Positioning
– Distance from text
(when floating)
– Can overlap with
other tables?
• Borders
– Top, bottom, left,
right
• Cell Margins
• Shading (for spacing
gaps)
• Table property
revisions
Table Grid
• Defines a virtual 'grid' used to lay out cells in
the table
• The grid defines a set of edges which are
shared by cells
– If two cells want to share the same number of grid
units, they *must* be the same width
– For example, if R1C1 spans two grid columns, its
right edge *must* match up with R2C2 (assuming
each cell in R2 is one grid unit)
Table Grid
• The grid columns themselves do not
determine the size of the table cells
– Determined based on the actual table properties
– They represent the result of the last table AutoFit
Table Grid Example
• In this following table, there are four grid
columns:
• The first cell in rows 1 & 3 span two grid
columns, the second is indented by one grid
column
1 3 42
Table Grid Example
1 3 42
Table Rows
• Define the contents of a table row, and are
represented by the tr element
– Analogous to the HTML <tr> element
• Table rows can contain any of the following:
– Table row properties
– Custom markup (Custom XML, structured
document tags)
– Table cells
Table Row Properties
• All table row properties are stored using the
trPr element
Table Row Properties
• Table-Wide Property
Exceptions
– Table properties that
are overridden for
this row (e.g. cell
spacing, preferred
width)
– Row height
– Cell spacing
• Conditional
formatting
– Header row flag
• HTML <div>
reference
• Row contents cannot
break across pages
Table Row Properties
• Grid units
• Before and after
• Preferred width
– Before and after
• Row alignment
• Hidden row
• Row property
revisions
These two properties combined
determine the layout of the row in the
table, as seen with the grid earlier
Table Cells
• Define the contents of a table cell, and are
represented by the tc element
– Analogous to the HTML <td> element
• Table cells can contain table cell properties as
well as block level content
– This implies that tables can be nested, etc.
Table Cell Properties
• All table row properties are stored using the
tcPr element
Table Cell Properties
• Conditional
formatting
properties
• Vertical merge
• Borders
– Top, left, right,
bottom
• Cell shading
• Text wrapping
• Cell margins
• Text flow
– RTL vs. KTR
– Top to bottom vs.
bottom to top
• Vertical alignment
• Text fit
Table Cell Properties (cont'd)
• Cell preferred width
• Grid span
• Table cell property
revisions
These two properties will
determine the size of the
table cell
Table Layout
• Table layout is a compilation of table
properties:
– The table grid
– Table-level properties (e.g. preferred width)
– Row-level properties (e.g. grid before/after)
– Cell-level properties (e.g. preferred width)
Table Layout - Widths
• It is important to note that every width in a
table is a preferred width because:
– The table must satisfy the grid at all times
– Table properties in the document can be
conflicting
Table Layout - Widths
Both of these cells
span the same grid
unit, but they have
different preferred
widths!
 The consumer has
to override one of the
'preferences'
Table Layout
• Therefore, we assemble these properties into
the table based on the type of table:
– Fixed Width
• This table does not resize based on its content
– AutoFit
• Defined from the existing W3C table AutoFit algorithm,
this table dynamically resizes itself depending on its
contents
Table Layout Example
• Let's construct a table in Word using each
logic:
• Table has four grid columns, one cell spanning
two grid columns, and two rows with grid
columns before or after
Fixed Width Table Layout
1.Create the table grid based on the grid data
• If table grid data is omitted, infer it as the table is
constructed
Fixed Width Table Layout
2.Get table's preferred width from tblW table
property
• This defines the total table width
• If it is of type "auto", then the table has no
preferred width and is determined based on the
row/cell data
No preferred
table width
Fixed Width Table Layout
3.Read table row:
• Start by skipping specified # of grid units
• Total width of skipped grid columns is then set
based on the row data
In this case, row
one has no grid
units before, so we
do nothing for this
row.
Fixed Width Table Layout
4.Read each table cell:
• Place cell on the grid
• Spans # of grid columns specified
• Total width of those columns is then set based on
cell's preferred width
2214 twips
Fixed Width Table Layout
• Here’s the table grid after row one is
complete:
• In row two, the row specifies that it has two
grid units after, so we end it two grid units
early:
2214 twips 2214 twips 2214 twips 2214 twips
2214 twips 2214 twips 2214 twips 2214 twips
2214 twips 2214 twips
Fixed Width Table Layout
• In row three, we start with a gridBefore value
of two, so we move in two grid units to start
• The only cell in this row also specifies a
gridSpan of two, so it spans the next two grid
units
• Here's the resulting table:
2214 twips 2214 twips 2214 twips 2214 twips
2214 twips 2214 twips 4428 twips
4428 twips 4428 twips
Fixed Width Tables – Handling
Inconsistency
• That table was well-behaved (all the
measurements matched)
• If it wasn't:
– Rule 1: The table grid is gospel; two cells which
snap to the same grid units must have the same
width
Fixed Width Tables – Handling
Inconsistency
• If it wasn't (cont'd):
– If the total preferred with for all grid columns
exceeds the preferred table width, each grid
column is reduced in width to fit the preferred
table width
– Rule 2: Table width preference has precedence
over cell width preferences
Fixed Width Tables – Handling
Inconsistency
• If it wasn't (cont'd):
– If the content overflows the grid, the grid is
dynamically increased
– Rule 3: The table grid can be redefined to match
the grid size implied by the content
Fixed Width Tables – Handling
Inconsistency
• If it wasn't (cont'd):
– If two grid columns sizes disagree, force the grid
column width to the maximum preferred width
requested, then reduce the table based on Rule 1
– Rule 4: If two grid columns sizes disagree, the grid
column size is the maximum of the two before
applying Rule 1
AutoFit Table Layout
• The other style of table is an AutoFit table,
which dynamically resizes to fit its contents
• The algorithm is based on the published W3C
spec for table AutoFit, with provisions for
gridBefore/gridAfter
AutoFit Table Layout
1.Create the table grid based on the grid data
• If table grid data is omitted, infer it as the table is
constructed
AutoFit Table Layout
2.Get table's preferred width from tblW table
property
• This defines the total table width
• If it is of type "auto", then the table has no
preferred width and is determined based on the
row/cell data
No preferred
table width
AutoFit Table Layout
3.Read table row:
• Start by skipping specified # of grid units
• Total width of skipped grid columns is then set
based on the row data
In this case, row
one has no grid
units before, so we
do nothing for this
row.
AutoFit Table Layout
4.Read each table cell:
• Place cell on the grid
• Spans # of grid columns specified
• Total width of those columns is then set based on
cell's preferred width
2214 twips
AutoFit Table Layout
• Here’s the table grid after row one is
complete:
• In row two, the row specifies that it has two
grid units after, so we end it two grid units
early:
2214 twips 2214 twips 2214 twips 2214 twips
2214 twips 2214 twips 2214 twips 2214 twips
2214 twips 2214 twips
AutoFit Table Layout
• In row three, we start with a gridBefore value
of two, so we move in two grid units to start
• The only cell in this row also specifies a
gridSpan of two, so it spans the next two grid
units
• Here's the resulting table:
2214 twips 2214 twips 2214 twips 2214 twips
2214 twips 2214 twips 4428 twips
4428 twips 4428 twips
AutoFit Table Layout
• So far, this is identical to the fixed width table
case
• All of the inconsistency rules apply at this
stage as well
• The difference comes now that the table
structure has been established, and we’re
going to populate the contents of the table…
AutoFit Table Layout
5.Place the text in each table cell:
• Based on the presence (or lack) of breaking
characters, the text width may exceed the cell's
preferred width
• If it does, preferences are overridden
AutoFit Table Layout
• Preferences are overridden as follows:
• First, override the preferred cell width by making
other grid columns proportionally smaller until
each is at its minimum width
• Next, override the preferred table width until the
table reaches the page width
• Finally, force a line break in the cell contents as
needed
Table Layout Summary
• Summary of rules:
– Rule 1: The table grid is gospel; two cells which
snap to the same grid units must have the same
width
– Rule 2: Table width preference has precedence
over cell width preferences
• Rule 2a: In AutoFit table, the text width has preference
over both
Table Layout Summary
• Summary of rules (cont'd):
– Rule 3: The table grid can be redefined to match
the grid size implied by the content
– Rule 4: If two grid columns sizes disagree, the grid
column size is the maximum of the two before
applying Rule 1
Vertical Cell Merges
• So far, we've looked at tables as if they have
strict definitions of rows
• Not true:
Vertically merged cell
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
• All cells in the same grid column after a restart
are merged vertically
Vertical Cell Merges
• Only the contents of the first cell are kept
– The other cells don't exist after the merge
Disclaimer
This presentation is for informational purposes only, and should
not be relied upon as a substitute or replacement for Microsoft
formal file format documentation, which is available at the
following website: https://msdn.microsoft.com/en-
us/library/cc313118(v=office.12).aspx. Any views or opinions
presented in this material are solely those of the author and do
not necessarily represent those of Microsoft. Microsoft
disclaims all liability for mistakes or inaccuracies in this
presentation.

Contenu connexe

En vedette

Spreadsheet ml subject calc chain
Spreadsheet ml subject   calc chainSpreadsheet ml subject   calc chain
Spreadsheet ml subject calc chainShawn Villaron
 
Spreadsheet ml subject strings
Spreadsheet ml subject   stringsSpreadsheet ml subject   strings
Spreadsheet ml subject stringsShawn Villaron
 
Spreadsheet ml subject comments
Spreadsheet ml subject   commentsSpreadsheet ml subject   comments
Spreadsheet ml subject commentsShawn Villaron
 
Spreadsheet ml subject pivottable
Spreadsheet ml subject   pivottableSpreadsheet ml subject   pivottable
Spreadsheet ml subject pivottableShawn Villaron
 
PresentationML Subject: Comments
PresentationML Subject: CommentsPresentationML Subject: Comments
PresentationML Subject: CommentsShawn Villaron
 
Spreadsheet ml subject sheet
Spreadsheet ml subject   sheetSpreadsheet ml subject   sheet
Spreadsheet ml subject sheetShawn Villaron
 
Spreadsheet ml overview
Spreadsheet ml overviewSpreadsheet ml overview
Spreadsheet ml overviewShawn Villaron
 
1 wordprocessing ml subject - main document
1   wordprocessing ml subject - main document1   wordprocessing ml subject - main document
1 wordprocessing ml subject - main documentShawn Villaron
 
DrawingML Subject: Shape Properties & Effects
DrawingML Subject: Shape Properties & EffectsDrawingML Subject: Shape Properties & Effects
DrawingML Subject: Shape Properties & EffectsShawn Villaron
 
Spreadsheet ml subject workbook
Spreadsheet ml subject   workbookSpreadsheet ml subject   workbook
Spreadsheet ml subject workbookShawn Villaron
 
2 wordprocessing ml subject - paragraphs and rich formatting
2   wordprocessing ml subject - paragraphs and rich formatting2   wordprocessing ml subject - paragraphs and rich formatting
2 wordprocessing ml subject - paragraphs and rich formattingShawn Villaron
 
4 wordprocessing ml subject - custom markup
4   wordprocessing ml subject - custom markup4   wordprocessing ml subject - custom markup
4 wordprocessing ml subject - custom markupShawn Villaron
 
Spreadsheet ml subject shared workbooks
Spreadsheet ml subject   shared workbooksSpreadsheet ml subject   shared workbooks
Spreadsheet ml subject shared workbooksShawn Villaron
 
PresentationML Subject: Slides
PresentationML Subject: SlidesPresentationML Subject: Slides
PresentationML Subject: SlidesShawn Villaron
 
Spreadsheet ml subject query table
Spreadsheet ml subject   query tableSpreadsheet ml subject   query table
Spreadsheet ml subject query tableShawn Villaron
 
楽するチームリマインダー ラクリマくん
楽するチームリマインダー ラクリマくん楽するチームリマインダー ラクリマくん
楽するチームリマインダー ラクリマくん佳秀 鍋山
 
タッグ開発の現場 【エンジニアとデザイナー編】
タッグ開発の現場 【エンジニアとデザイナー編】タッグ開発の現場 【エンジニアとデザイナー編】
タッグ開発の現場 【エンジニアとデザイナー編】JustSystems Corporation
 

En vedette (17)

Spreadsheet ml subject calc chain
Spreadsheet ml subject   calc chainSpreadsheet ml subject   calc chain
Spreadsheet ml subject calc chain
 
Spreadsheet ml subject strings
Spreadsheet ml subject   stringsSpreadsheet ml subject   strings
Spreadsheet ml subject strings
 
Spreadsheet ml subject comments
Spreadsheet ml subject   commentsSpreadsheet ml subject   comments
Spreadsheet ml subject comments
 
Spreadsheet ml subject pivottable
Spreadsheet ml subject   pivottableSpreadsheet ml subject   pivottable
Spreadsheet ml subject pivottable
 
PresentationML Subject: Comments
PresentationML Subject: CommentsPresentationML Subject: Comments
PresentationML Subject: Comments
 
Spreadsheet ml subject sheet
Spreadsheet ml subject   sheetSpreadsheet ml subject   sheet
Spreadsheet ml subject sheet
 
Spreadsheet ml overview
Spreadsheet ml overviewSpreadsheet ml overview
Spreadsheet ml overview
 
1 wordprocessing ml subject - main document
1   wordprocessing ml subject - main document1   wordprocessing ml subject - main document
1 wordprocessing ml subject - main document
 
DrawingML Subject: Shape Properties & Effects
DrawingML Subject: Shape Properties & EffectsDrawingML Subject: Shape Properties & Effects
DrawingML Subject: Shape Properties & Effects
 
Spreadsheet ml subject workbook
Spreadsheet ml subject   workbookSpreadsheet ml subject   workbook
Spreadsheet ml subject workbook
 
2 wordprocessing ml subject - paragraphs and rich formatting
2   wordprocessing ml subject - paragraphs and rich formatting2   wordprocessing ml subject - paragraphs and rich formatting
2 wordprocessing ml subject - paragraphs and rich formatting
 
4 wordprocessing ml subject - custom markup
4   wordprocessing ml subject - custom markup4   wordprocessing ml subject - custom markup
4 wordprocessing ml subject - custom markup
 
Spreadsheet ml subject shared workbooks
Spreadsheet ml subject   shared workbooksSpreadsheet ml subject   shared workbooks
Spreadsheet ml subject shared workbooks
 
PresentationML Subject: Slides
PresentationML Subject: SlidesPresentationML Subject: Slides
PresentationML Subject: Slides
 
Spreadsheet ml subject query table
Spreadsheet ml subject   query tableSpreadsheet ml subject   query table
Spreadsheet ml subject query table
 
楽するチームリマインダー ラクリマくん
楽するチームリマインダー ラクリマくん楽するチームリマインダー ラクリマくん
楽するチームリマインダー ラクリマくん
 
タッグ開発の現場 【エンジニアとデザイナー編】
タッグ開発の現場 【エンジニアとデザイナー編】タッグ開発の現場 【エンジニアとデザイナー編】
タッグ開発の現場 【エンジニアとデザイナー編】
 

Similaire à 3 wordprocessing ml subject - tables

Tech Jam 01 - Database Querying
Tech Jam 01 - Database QueryingTech Jam 01 - Database Querying
Tech Jam 01 - Database QueryingRodger Oates
 
Session 1 - Databases-JUNE 2023.pdf
Session 1 - Databases-JUNE 2023.pdfSession 1 - Databases-JUNE 2023.pdf
Session 1 - Databases-JUNE 2023.pdfSwapnilSaurav7
 
Amazon Redshift: Performance Tuning and Optimization
Amazon Redshift: Performance Tuning and OptimizationAmazon Redshift: Performance Tuning and Optimization
Amazon Redshift: Performance Tuning and OptimizationAmazon Web Services
 
AWS (Amazon Redshift) presentation
AWS (Amazon Redshift) presentationAWS (Amazon Redshift) presentation
AWS (Amazon Redshift) presentationVolodymyr Rovetskiy
 
OracleSQLraining.pptx
OracleSQLraining.pptxOracleSQLraining.pptx
OracleSQLraining.pptxRajendra Jain
 
Css Grid Layout - A Short Introduction - Part 1
Css Grid Layout - A Short Introduction - Part 1Css Grid Layout - A Short Introduction - Part 1
Css Grid Layout - A Short Introduction - Part 1Adam Michalowski
 
MariaDB 10.3 Optimizer - where does it stand
MariaDB 10.3 Optimizer - where does it standMariaDB 10.3 Optimizer - where does it stand
MariaDB 10.3 Optimizer - where does it standSergey Petrunya
 
Lec 1 = introduction to structured query language (sql)
Lec 1 = introduction to structured query language (sql)Lec 1 = introduction to structured query language (sql)
Lec 1 = introduction to structured query language (sql)Faisal Anwar
 
Introduction to Structured Query Language (SQL) (1).ppt
Introduction to Structured Query Language (SQL) (1).pptIntroduction to Structured Query Language (SQL) (1).ppt
Introduction to Structured Query Language (SQL) (1).pptComputerScienceDepar6
 
8. column oriented databases
8. column oriented databases8. column oriented databases
8. column oriented databasesFabio Fumarola
 
MS SQL Server.ppt
MS SQL Server.pptMS SQL Server.ppt
MS SQL Server.pptQuyVo27
 
Clase 11 manejo tablas modificada
Clase 11 manejo tablas   modificadaClase 11 manejo tablas   modificada
Clase 11 manejo tablas modificadaTitiushko Jazz
 

Similaire à 3 wordprocessing ml subject - tables (20)

Tech Jam 01 - Database Querying
Tech Jam 01 - Database QueryingTech Jam 01 - Database Querying
Tech Jam 01 - Database Querying
 
3. ddl create
3. ddl create3. ddl create
3. ddl create
 
Session 1 - Databases-JUNE 2023.pdf
Session 1 - Databases-JUNE 2023.pdfSession 1 - Databases-JUNE 2023.pdf
Session 1 - Databases-JUNE 2023.pdf
 
Unit -2.ppt
Unit -2.pptUnit -2.ppt
Unit -2.ppt
 
Amazon Redshift: Performance Tuning and Optimization
Amazon Redshift: Performance Tuning and OptimizationAmazon Redshift: Performance Tuning and Optimization
Amazon Redshift: Performance Tuning and Optimization
 
AWS (Amazon Redshift) presentation
AWS (Amazon Redshift) presentationAWS (Amazon Redshift) presentation
AWS (Amazon Redshift) presentation
 
OracleSQLraining.pptx
OracleSQLraining.pptxOracleSQLraining.pptx
OracleSQLraining.pptx
 
Css Grid Layout - A Short Introduction - Part 1
Css Grid Layout - A Short Introduction - Part 1Css Grid Layout - A Short Introduction - Part 1
Css Grid Layout - A Short Introduction - Part 1
 
MariaDB 10.3 Optimizer - where does it stand
MariaDB 10.3 Optimizer - where does it standMariaDB 10.3 Optimizer - where does it stand
MariaDB 10.3 Optimizer - where does it stand
 
ADBMS Unit-II b
ADBMS Unit-II bADBMS Unit-II b
ADBMS Unit-II b
 
15925 structured query
15925 structured query15925 structured query
15925 structured query
 
Lec 1 = introduction to structured query language (sql)
Lec 1 = introduction to structured query language (sql)Lec 1 = introduction to structured query language (sql)
Lec 1 = introduction to structured query language (sql)
 
HTML TABLES
HTML TABLESHTML TABLES
HTML TABLES
 
Introduction to Structured Query Language (SQL) (1).ppt
Introduction to Structured Query Language (SQL) (1).pptIntroduction to Structured Query Language (SQL) (1).ppt
Introduction to Structured Query Language (SQL) (1).ppt
 
Deep Dive on Amazon Redshift
Deep Dive on Amazon RedshiftDeep Dive on Amazon Redshift
Deep Dive on Amazon Redshift
 
Optimizing MySQL queries
Optimizing MySQL queriesOptimizing MySQL queries
Optimizing MySQL queries
 
8. column oriented databases
8. column oriented databases8. column oriented databases
8. column oriented databases
 
Redshift 101
Redshift 101Redshift 101
Redshift 101
 
MS SQL Server.ppt
MS SQL Server.pptMS SQL Server.ppt
MS SQL Server.ppt
 
Clase 11 manejo tablas modificada
Clase 11 manejo tablas   modificadaClase 11 manejo tablas   modificada
Clase 11 manejo tablas modificada
 

Plus de Shawn Villaron

Spreadsheet ml subject external links
Spreadsheet ml subject   external linksSpreadsheet ml subject   external links
Spreadsheet ml subject external linksShawn Villaron
 
Spreadsheet ml subject workbook connections
Spreadsheet ml subject   workbook connectionsSpreadsheet ml subject   workbook connections
Spreadsheet ml subject workbook connectionsShawn Villaron
 
Spreadsheet ml subject volatile dependencies
Spreadsheet ml subject   volatile dependenciesSpreadsheet ml subject   volatile dependencies
Spreadsheet ml subject volatile dependenciesShawn Villaron
 
Spreadsheet ml subject tables
Spreadsheet ml subject   tablesSpreadsheet ml subject   tables
Spreadsheet ml subject tablesShawn Villaron
 
Spreadsheet ml subject styles
Spreadsheet ml subject   stylesSpreadsheet ml subject   styles
Spreadsheet ml subject stylesShawn Villaron
 
0 wordprocessing ml overview
0   wordprocessing ml overview0   wordprocessing ml overview
0 wordprocessing ml overviewShawn Villaron
 
16 wordprocessing ml subject - odds and ends
16   wordprocessing ml subject - odds and ends16   wordprocessing ml subject - odds and ends
16 wordprocessing ml subject - odds and endsShawn Villaron
 
15 wordprocessing ml subject - fields and hyperlinks
15   wordprocessing ml subject - fields and hyperlinks15   wordprocessing ml subject - fields and hyperlinks
15 wordprocessing ml subject - fields and hyperlinksShawn Villaron
 
14 wordprocessing ml subject - settings
14   wordprocessing ml subject - settings14   wordprocessing ml subject - settings
14 wordprocessing ml subject - settingsShawn Villaron
 
13 wordprocessing ml subject - mail merge
13   wordprocessing ml subject - mail merge13   wordprocessing ml subject - mail merge
13 wordprocessing ml subject - mail mergeShawn Villaron
 
12 wordprocessing ml subject - annotations
12   wordprocessing ml subject - annotations12   wordprocessing ml subject - annotations
12 wordprocessing ml subject - annotationsShawn Villaron
 
11 wordprocessing ml subject - glossary document
11   wordprocessing ml subject - glossary document11   wordprocessing ml subject - glossary document
11 wordprocessing ml subject - glossary documentShawn Villaron
 
10 wordprocessing ml subject - footnotes and endnotes
10   wordprocessing ml subject - footnotes and endnotes10   wordprocessing ml subject - footnotes and endnotes
10 wordprocessing ml subject - footnotes and endnotesShawn Villaron
 
9 wordprocessing ml subject - headers and footers
9   wordprocessing ml subject - headers and footers9   wordprocessing ml subject - headers and footers
9 wordprocessing ml subject - headers and footersShawn Villaron
 
8 wordprocessing ml subject - numbering
8   wordprocessing ml subject - numbering8   wordprocessing ml subject - numbering
8 wordprocessing ml subject - numberingShawn Villaron
 
5 wordprocessing ml subject - sections
5   wordprocessing ml subject - sections5   wordprocessing ml subject - sections
5 wordprocessing ml subject - sectionsShawn Villaron
 

Plus de Shawn Villaron (16)

Spreadsheet ml subject external links
Spreadsheet ml subject   external linksSpreadsheet ml subject   external links
Spreadsheet ml subject external links
 
Spreadsheet ml subject workbook connections
Spreadsheet ml subject   workbook connectionsSpreadsheet ml subject   workbook connections
Spreadsheet ml subject workbook connections
 
Spreadsheet ml subject volatile dependencies
Spreadsheet ml subject   volatile dependenciesSpreadsheet ml subject   volatile dependencies
Spreadsheet ml subject volatile dependencies
 
Spreadsheet ml subject tables
Spreadsheet ml subject   tablesSpreadsheet ml subject   tables
Spreadsheet ml subject tables
 
Spreadsheet ml subject styles
Spreadsheet ml subject   stylesSpreadsheet ml subject   styles
Spreadsheet ml subject styles
 
0 wordprocessing ml overview
0   wordprocessing ml overview0   wordprocessing ml overview
0 wordprocessing ml overview
 
16 wordprocessing ml subject - odds and ends
16   wordprocessing ml subject - odds and ends16   wordprocessing ml subject - odds and ends
16 wordprocessing ml subject - odds and ends
 
15 wordprocessing ml subject - fields and hyperlinks
15   wordprocessing ml subject - fields and hyperlinks15   wordprocessing ml subject - fields and hyperlinks
15 wordprocessing ml subject - fields and hyperlinks
 
14 wordprocessing ml subject - settings
14   wordprocessing ml subject - settings14   wordprocessing ml subject - settings
14 wordprocessing ml subject - settings
 
13 wordprocessing ml subject - mail merge
13   wordprocessing ml subject - mail merge13   wordprocessing ml subject - mail merge
13 wordprocessing ml subject - mail merge
 
12 wordprocessing ml subject - annotations
12   wordprocessing ml subject - annotations12   wordprocessing ml subject - annotations
12 wordprocessing ml subject - annotations
 
11 wordprocessing ml subject - glossary document
11   wordprocessing ml subject - glossary document11   wordprocessing ml subject - glossary document
11 wordprocessing ml subject - glossary document
 
10 wordprocessing ml subject - footnotes and endnotes
10   wordprocessing ml subject - footnotes and endnotes10   wordprocessing ml subject - footnotes and endnotes
10 wordprocessing ml subject - footnotes and endnotes
 
9 wordprocessing ml subject - headers and footers
9   wordprocessing ml subject - headers and footers9   wordprocessing ml subject - headers and footers
9 wordprocessing ml subject - headers and footers
 
8 wordprocessing ml subject - numbering
8   wordprocessing ml subject - numbering8   wordprocessing ml subject - numbering
8 wordprocessing ml subject - numbering
 
5 wordprocessing ml subject - sections
5   wordprocessing ml subject - sections5   wordprocessing ml subject - sections
5 wordprocessing ml subject - sections
 

Dernier

Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 

Dernier (20)

Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 

3 wordprocessing ml subject - tables

  • 1. Components of WordprocessingML • Main Document • Paragraphs & Rich Formatting – Runs – Run Content • Tables • Custom Markup • Sections • Styles – Paragraph – Character – Numbering – Table – Document Defaults • Fonts • Numbering • Headers/Footers • Footnotes/Endnotes • Glossary Document • Annotations – Comments – Revisions – Bookmarks • Mail Merge • Document Settings – Web Settings – Compatibility Settings • Fields & Hyperlinks • Odds & Ends (Textboxes, Subdocuments, Extensibility) Ecma/TC45/2006/026 (Rev.)
  • 3. 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 table element – Analogous to the HTML <table> element
  • 4. Tables • A WordprocessingML table consists of four components: – Table properties – Table grid – Table Rows • Table cells
  • 6. Table Properties • All table-wide properties are specified using the tblPr element
  • 7. Table Properties • Table style – Conditional formatting flags – Rows per row band – Columns per column band • RTL vs. LTR • Alignment • Sizing – Preferred Width – AutoFit vs. fixed width – (these two are important, we'll come back to them) • Indentation from margin
  • 8. Table Properties (cont'd) • Table Positioning – Distance from text (when floating) – Can overlap with other tables? • Borders – Top, bottom, left, right • Cell Margins • Shading (for spacing gaps) • Table property revisions
  • 9. Table Grid • Defines a virtual 'grid' used to lay out cells in the table • The grid defines a set of edges which are shared by cells – If two cells want to share the same number of grid units, they *must* be the same width – For example, if R1C1 spans two grid columns, its right edge *must* match up with R2C2 (assuming each cell in R2 is one grid unit)
  • 10. Table Grid • The grid columns themselves do not determine the size of the table cells – Determined based on the actual table properties – They represent the result of the last table AutoFit
  • 11. Table Grid Example • In this following table, there are four grid columns: • The first cell in rows 1 & 3 span two grid columns, the second is indented by one grid column 1 3 42
  • 13. Table Rows • Define the contents of a table row, and are represented by the tr element – Analogous to the HTML <tr> element • Table rows can contain any of the following: – Table row properties – Custom markup (Custom XML, structured document tags) – Table cells
  • 14. Table Row Properties • All table row properties are stored using the trPr element
  • 15. Table Row Properties • Table-Wide Property Exceptions – Table properties that are overridden for this row (e.g. cell spacing, preferred width) – Row height – Cell spacing • Conditional formatting – Header row flag • HTML <div> reference • Row contents cannot break across pages
  • 16. Table Row Properties • Grid units • Before and after • Preferred width – Before and after • Row alignment • Hidden row • Row property revisions These two properties combined determine the layout of the row in the table, as seen with the grid earlier
  • 17. Table Cells • Define the contents of a table cell, and are represented by the tc element – Analogous to the HTML <td> element • Table cells can contain table cell properties as well as block level content – This implies that tables can be nested, etc.
  • 18. Table Cell Properties • All table row properties are stored using the tcPr element
  • 19. Table Cell Properties • Conditional formatting properties • Vertical merge • Borders – Top, left, right, bottom • Cell shading • Text wrapping • Cell margins • Text flow – RTL vs. KTR – Top to bottom vs. bottom to top • Vertical alignment • Text fit
  • 20. Table Cell Properties (cont'd) • Cell preferred width • Grid span • Table cell property revisions These two properties will determine the size of the table cell
  • 21. Table Layout • Table layout is a compilation of table properties: – The table grid – Table-level properties (e.g. preferred width) – Row-level properties (e.g. grid before/after) – Cell-level properties (e.g. preferred width)
  • 22. Table Layout - Widths • It is important to note that every width in a table is a preferred width because: – The table must satisfy the grid at all times – Table properties in the document can be conflicting
  • 23. Table Layout - Widths Both of these cells span the same grid unit, but they have different preferred widths!  The consumer has to override one of the 'preferences'
  • 24. Table Layout • Therefore, we assemble these properties into the table based on the type of table: – Fixed Width • This table does not resize based on its content – AutoFit • Defined from the existing W3C table AutoFit algorithm, this table dynamically resizes itself depending on its contents
  • 25. Table Layout Example • Let's construct a table in Word using each logic: • Table has four grid columns, one cell spanning two grid columns, and two rows with grid columns before or after
  • 26. Fixed Width Table Layout 1.Create the table grid based on the grid data • If table grid data is omitted, infer it as the table is constructed
  • 27. Fixed Width Table Layout 2.Get table's preferred width from tblW table property • This defines the total table width • If it is of type "auto", then the table has no preferred width and is determined based on the row/cell data No preferred table width
  • 28. Fixed Width Table Layout 3.Read table row: • Start by skipping specified # of grid units • Total width of skipped grid columns is then set based on the row data In this case, row one has no grid units before, so we do nothing for this row.
  • 29. Fixed Width Table Layout 4.Read each table cell: • Place cell on the grid • Spans # of grid columns specified • Total width of those columns is then set based on cell's preferred width 2214 twips
  • 30. Fixed Width Table Layout • Here’s the table grid after row one is complete: • In row two, the row specifies that it has two grid units after, so we end it two grid units early: 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips
  • 31. Fixed Width Table Layout • In row three, we start with a gridBefore value of two, so we move in two grid units to start • The only cell in this row also specifies a gridSpan of two, so it spans the next two grid units • Here's the resulting table: 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips 4428 twips 4428 twips 4428 twips
  • 32. Fixed Width Tables – Handling Inconsistency • That table was well-behaved (all the measurements matched) • If it wasn't: – Rule 1: The table grid is gospel; two cells which snap to the same grid units must have the same width
  • 33. Fixed Width Tables – Handling Inconsistency • If it wasn't (cont'd): – If the total preferred with for all grid columns exceeds the preferred table width, each grid column is reduced in width to fit the preferred table width – Rule 2: Table width preference has precedence over cell width preferences
  • 34. Fixed Width Tables – Handling Inconsistency • If it wasn't (cont'd): – If the content overflows the grid, the grid is dynamically increased – Rule 3: The table grid can be redefined to match the grid size implied by the content
  • 35. Fixed Width Tables – Handling Inconsistency • If it wasn't (cont'd): – If two grid columns sizes disagree, force the grid column width to the maximum preferred width requested, then reduce the table based on Rule 1 – Rule 4: If two grid columns sizes disagree, the grid column size is the maximum of the two before applying Rule 1
  • 36. AutoFit Table Layout • The other style of table is an AutoFit table, which dynamically resizes to fit its contents • The algorithm is based on the published W3C spec for table AutoFit, with provisions for gridBefore/gridAfter
  • 37. AutoFit Table Layout 1.Create the table grid based on the grid data • If table grid data is omitted, infer it as the table is constructed
  • 38. AutoFit Table Layout 2.Get table's preferred width from tblW table property • This defines the total table width • If it is of type "auto", then the table has no preferred width and is determined based on the row/cell data No preferred table width
  • 39. AutoFit Table Layout 3.Read table row: • Start by skipping specified # of grid units • Total width of skipped grid columns is then set based on the row data In this case, row one has no grid units before, so we do nothing for this row.
  • 40. AutoFit Table Layout 4.Read each table cell: • Place cell on the grid • Spans # of grid columns specified • Total width of those columns is then set based on cell's preferred width 2214 twips
  • 41. AutoFit Table Layout • Here’s the table grid after row one is complete: • In row two, the row specifies that it has two grid units after, so we end it two grid units early: 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips
  • 42. AutoFit Table Layout • In row three, we start with a gridBefore value of two, so we move in two grid units to start • The only cell in this row also specifies a gridSpan of two, so it spans the next two grid units • Here's the resulting table: 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips 2214 twips 4428 twips 4428 twips 4428 twips
  • 43. AutoFit Table Layout • So far, this is identical to the fixed width table case • All of the inconsistency rules apply at this stage as well • The difference comes now that the table structure has been established, and we’re going to populate the contents of the table…
  • 44. AutoFit Table Layout 5.Place the text in each table cell: • Based on the presence (or lack) of breaking characters, the text width may exceed the cell's preferred width • If it does, preferences are overridden
  • 45. AutoFit Table Layout • Preferences are overridden as follows: • First, override the preferred cell width by making other grid columns proportionally smaller until each is at its minimum width • Next, override the preferred table width until the table reaches the page width • Finally, force a line break in the cell contents as needed
  • 46. Table Layout Summary • Summary of rules: – Rule 1: The table grid is gospel; two cells which snap to the same grid units must have the same width – Rule 2: Table width preference has precedence over cell width preferences • Rule 2a: In AutoFit table, the text width has preference over both
  • 47. Table Layout Summary • Summary of rules (cont'd): – Rule 3: The table grid can be redefined to match the grid size implied by the content – Rule 4: If two grid columns sizes disagree, the grid column size is the maximum of the two before applying Rule 1
  • 48. Vertical Cell Merges • So far, we've looked at tables as if they have strict definitions of rows • Not true: Vertically merged cell
  • 49. 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 • All cells in the same grid column after a restart are merged vertically
  • 50. Vertical Cell Merges • Only the contents of the first cell are kept – The other cells don't exist after the merge
  • 51. Disclaimer This presentation is for informational purposes only, and should not be relied upon as a substitute or replacement for Microsoft formal file format documentation, which is available at the following website: https://msdn.microsoft.com/en- us/library/cc313118(v=office.12).aspx. Any views or opinions presented in this material are solely those of the author and do not necessarily represent those of Microsoft. Microsoft disclaims all liability for mistakes or inaccuracies in this presentation.