Module: PPTX

Defined in:
lib/pptx.rb,
lib/pptx/opc.rb,
lib/pptx/slide.rb,
lib/pptx/shapes.rb,
lib/pptx/version.rb,
lib/pptx/opc/part.rb,
lib/pptx/opc/package.rb,
lib/pptx/presentation.rb,
lib/pptx/shapes/shape.rb,
lib/pptx/opc/base_part.rb,
lib/pptx/opc/file_part.rb,
lib/pptx/shapes/picture.rb,
lib/pptx/shapes/textbox.rb,
lib/pptx/opc/binary_part.rb,
lib/pptx/opc/content_types.rb,
lib/pptx/opc/relationships.rb,
lib/pptx/opc/s3_object_part.rb,
lib/pptx/shapes/slide_number.rb,
lib/pptx/opc/package_streamer.rb,
lib/pptx/shapes/filled_rectangle.rb

Overview

Assumptions

  • XML namespace prefixes remain the same as in template

  • Main presentation is in ppt/presentation.xml

  • Base presentation is trusted. Nothing is done to prevent directory traversal.

If you wanted to open arbitrary presentation, you’d have to make sure to no longer make these.

Defined Under Namespace

Modules: OPC, Shapes Classes: Presentation, Slide

Constant Summary collapse

DRAWING_NS =
'http://schemas.openxmlformats.org/drawingml/2006/main'
DOC_RELATIONSHIP_NS =
'http://schemas.openxmlformats.org/officeDocument/2006/relationships'
RELTYPE_IMAGE =
'http://schemas.openxmlformats.org/officeDocument/2006/relationships/image'
RELTYPE_SLIDE =
'http://schemas.openxmlformats.org/officeDocument/2006/relationships/slide'
RELTYPE_SLIDE_LAYOUT =
'http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideLayout'
CM =

1 centimeter in OpenXML EMUs

360000
POINT =

font size point

100
VERSION =
'0.0.1'

Class Method Summary collapse

Class Method Details

.cm(*values) ⇒ Object



21
22
23
# File 'lib/pptx.rb', line 21

def self.cm(*values)
  values.map { |v| v * CM }
end