39
DrawingML Overview The tip of a very big iceberg … ( almost 40 schemas )

DrawingML Introduction

Embed Size (px)

Citation preview

Page 1: DrawingML Introduction

DrawingML Overview

The tip of a very big iceberg …

( almost 40 schemas )

Page 2: DrawingML Introduction

Evolution of Office Graphics

Word, Exceland PPT

Publisherand FrontPage

Word

Excel andPPT

Graphics PlatformUnification

HTML OutputVector Markup Language

( “VML” )

GDI+Diagramming

Compress PicturesInset PenHSL Color

New Graphics Platformw/ Text Engine

Page 3: DrawingML Introduction

Main Types of Objects

• Shape• Group Shape• Connector• Picture• Graphic Frame

Page 4: DrawingML Introduction

Shape Overview

spTree

nvGrpSpPr grpSpPr sp

nvSpPr spPr

style txBody

xfrm geo

fillProperties lineProperties

effectProperties scene3D

sp3D bwMode

Page 5: DrawingML Introduction

Group Shape OverviewspTree

nvGrpSpPr grpSpPr

nvSpPr

spPr

style

txBody

xfrm geo

grpSp

sp grpSpPr spnvGrpSpPr

nvSpPr

spPr

style

txBody

xfrm geo

fillProperties

effectProperties scene3D

bwMode

fillProperties

effectProperties scene3D

bwMode

lineProperties

sp3D

lineProperties

sp3D

xfrm geo

fillProperties effectProperties

scene3D bwMode

Page 6: DrawingML Introduction

Connector Overview

spTree

nvGrpSpPr grpSpPr spCxnSp

nvCxnSpPr spPr

style

xfrm geo

fillProperties lineProperties

effectProperties scene3D

sp3D bwMode

Page 7: DrawingML Introduction

Picture Overview

spTree

nvGrpSpPr grpSpPr pic

nvPicPr blipFill

spPr style

xfrm geo

fillProperties lineProperties

effectProperties scene3D

sp3D bwMode

Page 8: DrawingML Introduction

Graphic Frame Overview

spTree

nvGrpSpPr grpSpPr graphicFrame

nvGraphicFramePr xfrm

graphic

Page 9: DrawingML Introduction

Non-Visual Properties ( nvPrs )

• Each object’s nvPrs are a union of a common set plus a set of object-specific nvPrs

• Common nvPrs– Click Hyperlink– Hover Hyperlink– ID– Name– Description– Hidden Flag Note that hyperlinks are expressed as relationships

Page 10: DrawingML Introduction

Object-Specific nvPrs

• Shape nvPrs– Shape Locks– Text Box Flag

• Group Shape nvPrs– Group Shape Locks

• Connector nvPrs– Connector Locks – Start Shape– End Shape

• Picture nvPrs– Picture Locks

• Graphic Frame nvPrs– Graphic Frame Locks

Page 11: DrawingML Introduction

LocksGroup Ungrou

pSelect Select

children

Drill Down

Move Rotate Resize Change Aspect Ratio

Crop Edit Points

Hide Adjust Handles

Change Arrow Heads

Change Shape Type

Shape

X X X X X X X X X X

Group Shape

X X X X X X X

Connector

X X X X X X X X X X

Picture

X X X X X X X X X X X

Grfx Frame

X X X X X

Page 12: DrawingML Introduction

Shape Properties ( spPr )

spPr

xfrm geo

fillProperties lineProperties

effectProperties scene3D

sp3D bwMode

Note. spPr is used for shapes, connectors and pictures

Page 13: DrawingML Introduction

Group Shape Properties ( grpSpPr )

grpSpPr

xfrm fillProperties

effectProperties scene3D

bwMode

Note. grpSpPr is only used for group shapes

Note. this xfrm is different from xfrm in spPr

Page 14: DrawingML Introduction

Transforms ( xfrms )

Offset ExtentChild Offset

Child Extent Rotat’n

Vert. Flip

Horiz. Flip

Shape X X X X X

Group Shape X X X X X X X

Page 15: DrawingML Introduction

Shape Transform

Extent and Offset units are in EMUs ( 914400 dpi / 360000 dpc )

Page 16: DrawingML Introduction

Geometry

• Built-in shapes generally use preset geometries

• Scribbles, Curves and Custom Shapes need to express geometry in the file format– Adjust handles– Guides– Connection Points– Bounding Rectangle– Paths

Page 17: DrawingML Introduction

Preset vs. Custom Geometries

Page 18: DrawingML Introduction

Fill Properties

Indicates separate part for image data

Page 19: DrawingML Introduction

Line Properties

• Fill Props• Dash Props• Join Props• Head End Props• Tail End Props• Width• Cap• Compound Type• Pen Alignment

Page 20: DrawingML Introduction

Colors and Color Transformations

• sRGB• scRGB• HSL• Windows System Colors• Scheme Colors• Preset Colors

• Complement• Grayscale• Tint• Shade• Alpha• Hue• Saturation• Luminance• Red• Green• Blue

Page 21: DrawingML Introduction

Effect Properties

Page 22: DrawingML Introduction

Text

• Text is largely modeled after Word’s design– Similar structures– Similar naming conventions– Different schemas

Page 23: DrawingML Introduction

Runs and Run Properties

WordProcessingMLDrawingML

Page 24: DrawingML Introduction

Text == Graphics• We can apply all graphic effects to text

– Some limited to runs– Some limited to ¶

Page 25: DrawingML Introduction

Styles

• Designed to ensure consistent visual appearance of content within/across documents

• Comprised of three parts– Color Scheme– Font Scheme– Formatting Scheme

• Stored as separate part within package• Part replacement get “resolved” into file when

file loaded back into application

Page 26: DrawingML Introduction

Color Schemes

• Extension of existing PowerPoint model– More color slots: 12 ( from 8 )– Repurposing of color slots

• Title, Background, etc no longer apply• Organized into dark, light, accent and hyperlink

slots

Page 27: DrawingML Introduction

Font Schemes

• Provides a set of major and minor fonts

Page 28: DrawingML Introduction

Formatting Schemes

• Scheme defined in terms of four styles– Fill– Line– Effect– Background Fill

• Each style has three “flavors”

Page 29: DrawingML Introduction

Styles Example

Page 30: DrawingML Introduction

Audio and Video Support

• Two types of audio– Audio based on a CD– On-disk audio file

• On-disk video file• Both can be stored internally or externally• Insertion of either creates a timeline in

PowerPoint ( to control interactivity )

Page 31: DrawingML Introduction

Audio and Video Examples

• Represented as a picture ( poster frame or icon )• Relationships– Hyperlink for interactivity– Media source– Picture for poster frame or icon

Page 32: DrawingML Introduction

Graphic Frame

• General-purpose container for holding an “object” containing visual and semantic data

• Used for Tables, Diagrams and Charts

Page 33: DrawingML Introduction

Tables

• Built using a Graphic Frame wrapper

Page 34: DrawingML Introduction

Tables’ Graphic Data

• Modeled after Word which is similar to HTML tables ( built using a table, properties, rows and cells )

Page 35: DrawingML Introduction

Diagrams

• Built using a Graphic Frame wrapper

Page 36: DrawingML Introduction

Diagram Parts

• Diagrams built from four parts:– Data– Colors– QuickStyles– Layout

Page 37: DrawingML Introduction

Data Part

• Uses OfficeArt’s text storage model

Page 38: DrawingML Introduction

Layout Part

Page 39: DrawingML Introduction

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.