Difference between revisions of "PresentationML"
Line 19: | Line 19: | ||
=== Animation === | === Animation === | ||
− | There are 3 parts: slide transition, slide timing and shape animations | + | Animation are heavily based on [[SMIL]], much like the internals of Impress. There are 3 parts: slide transition, slide timing and shape animations |
==== Transitions ==== | ==== Transitions ==== |
Revision as of 19:13, 28 March 2007
PresentationML is the XML format used by Microsoft PowerPoint 2007 and that is part of the Office Open XML specification. It defines all the structure for the presentation related data. Pure graphic data (ie the content of the slide) is described using DrawingML.
Finding sample files
Use google and look for "download pptx".
Code organisation
oox/source/ppt/ contain the PresentationML specific code for the importer as well as dealing with presentation specific data.
oox/source/drawingml is for DrawingML. Most of the slide content is actually DrawingML.
Data Model
SlidePersist is the class that contain the slide data, including reference to the associated theme and color scheme. It can be a slide, a master slide, note page or handout master.
It is all stored in some way in a XModel.
Animation
Animation are heavily based on SMIL, much like the internals of Impress. There are 3 parts: slide transition, slide timing and shape animations
Transitions
Transition in OOx and OpenDocument are not the same as there is no 1 to 1 mapping.
- ID: the XML token
- OOo Status: Yes or No.
- Type: the type as defined in com/sun/star/animations/TransitionType.hpp
- SubType: the type as defined in com/sun/star/animations/TransitionSubType.hpp
PowerPoint 2007 Name | ID | Param | OOo Status | Type | Subtype | Note |
---|---|---|---|---|---|---|
blinds | blinds | vert | Y | BLINDSWIPE | VERTICAL | |
horz | Y | BLINDSWIPE | HORIZONTAL | |||
checker | checker | vert | Y | CHECKERBOARDWIPE | VERTICAL | |
horz | Y | CHECKERBOARDWIPE | HORIZONTAL | |||
comb | comb | N | ||||
cover | cover | N | ||||
pull | pull | N | ||||
cut | cut | N | ||||
cut | cut | N | ||||
fade | fade | Y | FADE | CROSSFADE | ||
thruBlk | N | FADE | CROSSFADE | |||
push | push | d | Y | PUSHWIPE | FROMTOP | |
l | Y | PUSHWIPE | FROMLEFT | |||
r | Y | PUSHWIPE | FROMRIGHT | |||
u | Y | PUSHWIPE | FROMBOTTOM | |||
wipe | wipe | d | Y | BARWIPE | FROMTOP | |
l | Y | BARWIPE | FROMLEFT | |||
r | Y | BARWIPE | FROMRIGHT | |||
u | Y | BARWIPE | FROMBOTTOM | |||
split | split | N | ||||
wheel | wheel | "1" | Y | PINWHEELWIPE | ONEBLADE | |
wheel | wheel | "2" | Y | PINWHEELWIPE | TWOBLADEVERTICAL | |
wheel | wheel | "3" | Y | PINWHEELWIPE | THREEBLADE | |
wheel | wheel | "4" | Y | PINWHEELWIPE | FOURBLADE | |
wheel | wheel | "8" | Y | PINWHEELWIPE | EIGHTBLADE | |
wheel | wheel | * | Y | PINWHEELWIPE | the number is converted to 1, 2, 3, 4, 8 depending on the match | |
randomBar | randomBar | horz | Y | RANDOMBARWIPE | HORIZONTAL | |
randomBar | randomBar | vert | Y | RANDOMBARWIPE | VERTICAL | |
circle | circle | Y | ELLIPSEWIPE | HORIZONTAL | ||
diamond | diamond | Y | IRISWIPE | DIAMOND | ||
dissolve | dissolve | Y | DISSOLVE | DEFAULT | ||
newsflash | newsflash | N | ||||
plus | plus | Y | FOURBOXWIPE | CORNERSIN | what "direction should we set" | |
random | random | Y | RANDOM | DEFAULT | ||
wedge | wedge | Y | FANWIPE | CENTERTOP | ||
zoom | zoom | Y | ZOOM | DEFAULT |
There are also some limitations: OOo does not seem to support "stopping sound". Neither does it support embedded sound (see below).
Timing
Shape Animations
Limitations
Office Open XML specify that sound can be embedded in the file (in the container) and use relationships to refer to it. Unfortunately as of today OpenOffice is unable to do so. To that effect sounds are copied in the gallery and opened from there. For standard built-in sound, just refer to it. For none built-in sound, discard it.