SlideShare a Scribd company logo
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/060 (Rev.)
WordprocessingML – Fonts
Fonts
• Font face information can be referred to from
any run property set in a WordprocessingML
document
– On style definitions
– On runs directly
Font References
• Run properties reference the font face to be
used via the rFonts element
• For example, let's use the Arial Black font:
Font References
• The values in the attributes on the rFonts
element reference the font name on the
system
– So in this example, the font name we're looking
for (for Latin characters) is "Arial Black"
Font References
• You probably noticed that there were three
font attributes in our example:
• Why?
Font Types
• WordprocessingML stores up to four fonts to
be used on a run/style:
– Latin font
– Symbol (high ANSI) font
– East Asian font
– Complex Script font
• Each font type specifies the font for the part
of the run in that character set
Font Types Example
• So looking at the example earlier:
– All ASCII and High ANSI (Latin/Symbol) characters
in this run will use the "Arial Black" font
– All complex script character will use the "Arial"
font
Font Type Hints
• Some characters within a run are ambiguous
– They can either be rendered as either East Asian,
complex script, or ASCII characters
• This attribute value specifies a 'hint' as to
which character set to use for these
ambiguous characters
Font Type Hints
– At runtime, this information is gathered based
on the keyboard type used to enter the
characters
• If using an East Asian keyboard, hint to use the
East Asian font data
• If using a Latin keyboard, hint to use the ASCII font
data
• This ensures that the consumer displays the
characters using the most likely font slot
Font Table
• The rFonts element references optional font
substitution information stored in the font
table part:
– Implicit relationship from the document part
– Relationship type:
http://schemas.openxmlformats.org/wordprocessingml/2006/fo
ntTable
– Content type: vnd-
openxmlformats.officedocument.wordprocessingml-
fontTable+xml
Font Table
• Each item in the font table is defined using the
font element
• Stores information about each font for font
substitution
– Entirely optional, but producers should always
write out this information
Font Table Example
• Example: The font substitution data for Arial
Black
Font Substitution Data
• The following data is stored as reported by
the font in order to allow for font matching
when the specified font is unavailable:
– Alternate font name(s)
– Panose number
– Character set
– Font family
– Is this a TrueType font?
Font Substitution Data
• Font data (cont'd):
– Font pitch
– Supported code pages/Unicode ranges
Font Embedding
• As well, a use may choose to embed one or
more fonts into a WordprocessingML
document
– If I use the "Tristan Davis Rules" font, and I know
you don't have it, I can embed it so you see the
exact same font I used
• When a font is embedded, it can either be
embedded completely, or the subset for
characters in use in the document
Font Embedding
• Within the font table part, if a font is
embedded there are explicit relationships to
each font form needed:
– Regular
– Bold
– Italic
– Bold+Italic
Theme Fonts
• As well as standard font information, a run in
the document may need to store information
for 'theme fonts'
– Theme fonts are an abstraction of font name
information that allows the font usage to be
globally managed by the user
– Think of this as a "style for fonts" in the way that a
style relates to paragraph properties
Theme Fonts
• Theme fonts are specified using the theme
attribute variants in the rFonts element,
rather than the font name:
– Font and theme font are mutually exclusive
Theme fonts (there's no font called minorHAnsi)
Theme Fonts
• The theme fonts definition is stored in a
shared DrawingML theme part
• The syntax of the theme fonts definition
(shared by all applications that support
DrawingML theme data) will be discussed in a
DrawingML presentation
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.

More Related Content

Viewers also liked

Spreadsheet ml overview
Spreadsheet ml overviewSpreadsheet ml overview
Spreadsheet ml overview
Shawn Villaron
 
Spreadsheet ml subject comments
Spreadsheet ml subject   commentsSpreadsheet ml subject   comments
Spreadsheet ml subject comments
Shawn Villaron
 
3 wordprocessing ml subject - tables
3   wordprocessing ml subject - tables3   wordprocessing ml subject - tables
3 wordprocessing ml subject - tables
Shawn Villaron
 
Spreadsheet ml subject query table
Spreadsheet ml subject   query tableSpreadsheet ml subject   query table
Spreadsheet ml subject query table
Shawn Villaron
 
Spreadsheet ml subject strings
Spreadsheet ml subject   stringsSpreadsheet ml subject   strings
Spreadsheet ml subject strings
Shawn 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 footers
Shawn Villaron
 
Drawing ML Subject: Audio and Video
Drawing ML Subject: Audio and VideoDrawing ML Subject: Audio and Video
Drawing ML Subject: Audio and Video
Shawn Villaron
 
14 wordprocessing ml subject - settings
14   wordprocessing ml subject - settings14   wordprocessing ml subject - settings
14 wordprocessing ml subject - settings
Shawn Villaron
 
Spreadsheet ml subject tables
Spreadsheet ml subject   tablesSpreadsheet ml subject   tables
Spreadsheet ml subject tables
Shawn Villaron
 
Spreadsheet ml subject workbook connections
Spreadsheet ml subject   workbook connectionsSpreadsheet ml subject   workbook connections
Spreadsheet ml subject workbook connections
Shawn Villaron
 
Spreadsheet ml subject metadata
Spreadsheet ml subject   metadataSpreadsheet ml subject   metadata
Spreadsheet ml subject metadata
Shawn Villaron
 
Spreadsheet ml subject sheet
Spreadsheet ml subject   sheetSpreadsheet ml subject   sheet
Spreadsheet ml subject sheet
Shawn 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 ends
Shawn Villaron
 
11 wordprocessing ml subject - glossary document
11   wordprocessing ml subject - glossary document11   wordprocessing ml subject - glossary document
11 wordprocessing ml subject - glossary document
Shawn Villaron
 
DrawingML Subject: Tables
DrawingML Subject: TablesDrawingML Subject: Tables
DrawingML Subject: Tables
Shawn Villaron
 
Spreadsheet ml subject shared workbooks
Spreadsheet ml subject   shared workbooksSpreadsheet ml subject   shared workbooks
Spreadsheet ml subject shared workbooks
Shawn Villaron
 
DrawingML Introduction
DrawingML IntroductionDrawingML Introduction
DrawingML Introduction
Shawn Villaron
 
L'archive ouverte HAL-UBO dans le contexte de l'accès libre
L'archive ouverte HAL-UBO dans le contexte de l'accès libreL'archive ouverte HAL-UBO dans le contexte de l'accès libre
L'archive ouverte HAL-UBO dans le contexte de l'accès libre
Catherine_Bertignac
 
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
Shawn Villaron
 
Atelier Zotero SHS Session découverte- Zotero version 4
Atelier Zotero SHS Session découverte- Zotero version 4Atelier Zotero SHS Session découverte- Zotero version 4
Atelier Zotero SHS Session découverte- Zotero version 4
Catherine_Bertignac
 

Viewers also liked (20)

Spreadsheet ml overview
Spreadsheet ml overviewSpreadsheet ml overview
Spreadsheet ml overview
 
Spreadsheet ml subject comments
Spreadsheet ml subject   commentsSpreadsheet ml subject   comments
Spreadsheet ml subject comments
 
3 wordprocessing ml subject - tables
3   wordprocessing ml subject - tables3   wordprocessing ml subject - tables
3 wordprocessing ml subject - tables
 
Spreadsheet ml subject query table
Spreadsheet ml subject   query tableSpreadsheet ml subject   query table
Spreadsheet ml subject query table
 
Spreadsheet ml subject strings
Spreadsheet ml subject   stringsSpreadsheet ml subject   strings
Spreadsheet ml subject strings
 
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
 
Drawing ML Subject: Audio and Video
Drawing ML Subject: Audio and VideoDrawing ML Subject: Audio and Video
Drawing ML Subject: Audio and Video
 
14 wordprocessing ml subject - settings
14   wordprocessing ml subject - settings14   wordprocessing ml subject - settings
14 wordprocessing ml subject - settings
 
Spreadsheet ml subject tables
Spreadsheet ml subject   tablesSpreadsheet ml subject   tables
Spreadsheet ml subject tables
 
Spreadsheet ml subject workbook connections
Spreadsheet ml subject   workbook connectionsSpreadsheet ml subject   workbook connections
Spreadsheet ml subject workbook connections
 
Spreadsheet ml subject metadata
Spreadsheet ml subject   metadataSpreadsheet ml subject   metadata
Spreadsheet ml subject metadata
 
Spreadsheet ml subject sheet
Spreadsheet ml subject   sheetSpreadsheet ml subject   sheet
Spreadsheet ml subject sheet
 
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
 
11 wordprocessing ml subject - glossary document
11   wordprocessing ml subject - glossary document11   wordprocessing ml subject - glossary document
11 wordprocessing ml subject - glossary document
 
DrawingML Subject: Tables
DrawingML Subject: TablesDrawingML Subject: Tables
DrawingML Subject: Tables
 
Spreadsheet ml subject shared workbooks
Spreadsheet ml subject   shared workbooksSpreadsheet ml subject   shared workbooks
Spreadsheet ml subject shared workbooks
 
DrawingML Introduction
DrawingML IntroductionDrawingML Introduction
DrawingML Introduction
 
L'archive ouverte HAL-UBO dans le contexte de l'accès libre
L'archive ouverte HAL-UBO dans le contexte de l'accès libreL'archive ouverte HAL-UBO dans le contexte de l'accès libre
L'archive ouverte HAL-UBO dans le contexte de l'accès libre
 
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
 
Atelier Zotero SHS Session découverte- Zotero version 4
Atelier Zotero SHS Session découverte- Zotero version 4Atelier Zotero SHS Session découverte- Zotero version 4
Atelier Zotero SHS Session découverte- Zotero version 4
 

Similar to 7 wordprocessing ml subject - fonts

6 wordprocessing ml subject - styles
6   wordprocessing ml subject - styles6   wordprocessing ml subject - styles
6 wordprocessing ml subject - styles
Shawn 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 formatting
Shawn Villaron
 
Text-Elements of multimedia
Text-Elements of multimediaText-Elements of multimedia
Text-Elements of multimedia
Vanitha Chandru
 
0 wordprocessing ml overview
0   wordprocessing ml overview0   wordprocessing ml overview
0 wordprocessing ml overview
Shawn Villaron
 
Chapter 2 : TEXT
Chapter 2 : TEXTChapter 2 : TEXT
Chapter 2 : TEXT
azira96
 
Chapter 12: CSS Part 2
Chapter 12: CSS Part 2Chapter 12: CSS Part 2
Chapter 12: CSS Part 2
Steve Guinan
 
1 wordprocessing ml subject - main document
1   wordprocessing ml subject - main document1   wordprocessing ml subject - main document
1 wordprocessing ml subject - main document
Shawn Villaron
 
Unit 2 graphics
Unit 2 graphicsUnit 2 graphics
Unit 2 graphics
Arnav Chowdhury
 
12 wordprocessing ml subject - annotations
12   wordprocessing ml subject - annotations12   wordprocessing ml subject - annotations
12 wordprocessing ml subject - annotations
Shawn Villaron
 
Css Complete Notes
Css Complete NotesCss Complete Notes
Css Complete Notes
EPAM Systems
 
Typographers glossary
Typographers glossaryTypographers glossary
Typographers glossary
Xuan Le
 
Symbol Table
Symbol TableSymbol Table
Symbol Table
Akhil Kaushik
 
XML
XMLXML
Ppt programming by alyssa marie paral
Ppt programming by alyssa marie paralPpt programming by alyssa marie paral
Ppt programming by alyssa marie paralalyssamarieparal
 
Cocoa text talk.key
Cocoa text talk.keyCocoa text talk.key
Cocoa text talk.key
zachwaugh
 
Typography On The Web
Typography On The WebTypography On The Web
Typography On The Web
Justin Seiter
 

Similar to 7 wordprocessing ml subject - fonts (20)

6 wordprocessing ml subject - styles
6   wordprocessing ml subject - styles6   wordprocessing ml subject - styles
6 wordprocessing ml subject - styles
 
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
 
Text
TextText
Text
 
Text-Elements of multimedia
Text-Elements of multimediaText-Elements of multimedia
Text-Elements of multimedia
 
0 wordprocessing ml overview
0   wordprocessing ml overview0   wordprocessing ml overview
0 wordprocessing ml overview
 
Chapter 2
Chapter 2Chapter 2
Chapter 2
 
Chapter 2 : TEXT
Chapter 2 : TEXTChapter 2 : TEXT
Chapter 2 : TEXT
 
Chapter 12: CSS Part 2
Chapter 12: CSS Part 2Chapter 12: CSS Part 2
Chapter 12: CSS Part 2
 
1 wordprocessing ml subject - main document
1   wordprocessing ml subject - main document1   wordprocessing ml subject - main document
1 wordprocessing ml subject - main document
 
Unit 2 graphics
Unit 2 graphicsUnit 2 graphics
Unit 2 graphics
 
12 wordprocessing ml subject - annotations
12   wordprocessing ml subject - annotations12   wordprocessing ml subject - annotations
12 wordprocessing ml subject - annotations
 
Css Complete Notes
Css Complete NotesCss Complete Notes
Css Complete Notes
 
Typographers glossary
Typographers glossaryTypographers glossary
Typographers glossary
 
Symbol Table
Symbol TableSymbol Table
Symbol Table
 
XML
XMLXML
XML
 
Ppt programming by alyssa marie paral
Ppt programming by alyssa marie paralPpt programming by alyssa marie paral
Ppt programming by alyssa marie paral
 
Css
CssCss
Css
 
Cocoa text talk.key
Cocoa text talk.keyCocoa text talk.key
Cocoa text talk.key
 
Lecture 5
Lecture 5Lecture 5
Lecture 5
 
Typography On The Web
Typography On The WebTypography On The Web
Typography On The Web
 

More from Shawn Villaron

Spreadsheet ml subject pivottable
Spreadsheet ml subject   pivottableSpreadsheet ml subject   pivottable
Spreadsheet ml subject pivottable
Shawn Villaron
 
Spreadsheet ml subject external links
Spreadsheet ml subject   external linksSpreadsheet ml subject   external links
Spreadsheet ml subject external links
Shawn Villaron
 
Spreadsheet ml subject calc chain
Spreadsheet ml subject   calc chainSpreadsheet ml subject   calc chain
Spreadsheet ml subject calc chain
Shawn Villaron
 
Spreadsheet ml subject xml-mapping
Spreadsheet ml subject   xml-mappingSpreadsheet ml subject   xml-mapping
Spreadsheet ml subject xml-mapping
Shawn Villaron
 
Spreadsheet ml subject workbook
Spreadsheet ml subject   workbookSpreadsheet ml subject   workbook
Spreadsheet ml subject workbook
Shawn Villaron
 
Spreadsheet ml subject volatile dependencies
Spreadsheet ml subject   volatile dependenciesSpreadsheet ml subject   volatile dependencies
Spreadsheet ml subject volatile dependencies
Shawn Villaron
 
Spreadsheet ml subject styles
Spreadsheet ml subject   stylesSpreadsheet ml subject   styles
Spreadsheet ml subject styles
Shawn Villaron
 
4 wordprocessing ml subject - custom markup
4   wordprocessing ml subject - custom markup4   wordprocessing ml subject - custom markup
4 wordprocessing ml subject - custom markup
Shawn 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 hyperlinks
Shawn Villaron
 
13 wordprocessing ml subject - mail merge
13   wordprocessing ml subject - mail merge13   wordprocessing ml subject - mail merge
13 wordprocessing ml subject - mail merge
Shawn Villaron
 
8 wordprocessing ml subject - numbering
8   wordprocessing ml subject - numbering8   wordprocessing ml subject - numbering
8 wordprocessing ml subject - numbering
Shawn Villaron
 

More from Shawn Villaron (11)

Spreadsheet ml subject pivottable
Spreadsheet ml subject   pivottableSpreadsheet ml subject   pivottable
Spreadsheet ml subject pivottable
 
Spreadsheet ml subject external links
Spreadsheet ml subject   external linksSpreadsheet ml subject   external links
Spreadsheet ml subject external links
 
Spreadsheet ml subject calc chain
Spreadsheet ml subject   calc chainSpreadsheet ml subject   calc chain
Spreadsheet ml subject calc chain
 
Spreadsheet ml subject xml-mapping
Spreadsheet ml subject   xml-mappingSpreadsheet ml subject   xml-mapping
Spreadsheet ml subject xml-mapping
 
Spreadsheet ml subject workbook
Spreadsheet ml subject   workbookSpreadsheet ml subject   workbook
Spreadsheet ml subject workbook
 
Spreadsheet ml subject volatile dependencies
Spreadsheet ml subject   volatile dependenciesSpreadsheet ml subject   volatile dependencies
Spreadsheet ml subject volatile dependencies
 
Spreadsheet ml subject styles
Spreadsheet ml subject   stylesSpreadsheet ml subject   styles
Spreadsheet ml subject styles
 
4 wordprocessing ml subject - custom markup
4   wordprocessing ml subject - custom markup4   wordprocessing ml subject - custom markup
4 wordprocessing ml subject - custom markup
 
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
 
13 wordprocessing ml subject - mail merge
13   wordprocessing ml subject - mail merge13   wordprocessing ml subject - mail merge
13 wordprocessing ml subject - mail merge
 
8 wordprocessing ml subject - numbering
8   wordprocessing ml subject - numbering8   wordprocessing ml subject - numbering
8 wordprocessing ml subject - numbering
 

Recently uploaded

2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Neo4j
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
QuickwayInfoSystems3
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
Pro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp BookPro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp Book
abdulrafaychaudhry
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
AI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website CreatorAI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website Creator
Google
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Crescat
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
Hornet Dynamics
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
abdulrafaychaudhry
 

Recently uploaded (20)

2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Pro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp BookPro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp Book
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
AI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website CreatorAI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website Creator
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
 

7 wordprocessing ml subject - fonts

  • 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/060 (Rev.)
  • 3. Fonts • Font face information can be referred to from any run property set in a WordprocessingML document – On style definitions – On runs directly
  • 4. Font References • Run properties reference the font face to be used via the rFonts element • For example, let's use the Arial Black font:
  • 5. Font References • The values in the attributes on the rFonts element reference the font name on the system – So in this example, the font name we're looking for (for Latin characters) is "Arial Black"
  • 6. Font References • You probably noticed that there were three font attributes in our example: • Why?
  • 7. Font Types • WordprocessingML stores up to four fonts to be used on a run/style: – Latin font – Symbol (high ANSI) font – East Asian font – Complex Script font • Each font type specifies the font for the part of the run in that character set
  • 8. Font Types Example • So looking at the example earlier: – All ASCII and High ANSI (Latin/Symbol) characters in this run will use the "Arial Black" font – All complex script character will use the "Arial" font
  • 9. Font Type Hints • Some characters within a run are ambiguous – They can either be rendered as either East Asian, complex script, or ASCII characters • This attribute value specifies a 'hint' as to which character set to use for these ambiguous characters
  • 10. Font Type Hints – At runtime, this information is gathered based on the keyboard type used to enter the characters • If using an East Asian keyboard, hint to use the East Asian font data • If using a Latin keyboard, hint to use the ASCII font data • This ensures that the consumer displays the characters using the most likely font slot
  • 11. Font Table • The rFonts element references optional font substitution information stored in the font table part: – Implicit relationship from the document part – Relationship type: http://schemas.openxmlformats.org/wordprocessingml/2006/fo ntTable – Content type: vnd- openxmlformats.officedocument.wordprocessingml- fontTable+xml
  • 12. Font Table • Each item in the font table is defined using the font element • Stores information about each font for font substitution – Entirely optional, but producers should always write out this information
  • 13. Font Table Example • Example: The font substitution data for Arial Black
  • 14. Font Substitution Data • The following data is stored as reported by the font in order to allow for font matching when the specified font is unavailable: – Alternate font name(s) – Panose number – Character set – Font family – Is this a TrueType font?
  • 15. Font Substitution Data • Font data (cont'd): – Font pitch – Supported code pages/Unicode ranges
  • 16. Font Embedding • As well, a use may choose to embed one or more fonts into a WordprocessingML document – If I use the "Tristan Davis Rules" font, and I know you don't have it, I can embed it so you see the exact same font I used • When a font is embedded, it can either be embedded completely, or the subset for characters in use in the document
  • 17. Font Embedding • Within the font table part, if a font is embedded there are explicit relationships to each font form needed: – Regular – Bold – Italic – Bold+Italic
  • 18. Theme Fonts • As well as standard font information, a run in the document may need to store information for 'theme fonts' – Theme fonts are an abstraction of font name information that allows the font usage to be globally managed by the user – Think of this as a "style for fonts" in the way that a style relates to paragraph properties
  • 19. Theme Fonts • Theme fonts are specified using the theme attribute variants in the rFonts element, rather than the font name: – Font and theme font are mutually exclusive Theme fonts (there's no font called minorHAnsi)
  • 20. Theme Fonts • The theme fonts definition is stored in a shared DrawingML theme part • The syntax of the theme fonts definition (shared by all applications that support DrawingML theme data) will be discussed in a DrawingML presentation
  • 21. 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.