powerpoint-pro 2.1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (102) hide show
  1. checksums.yaml +7 -0
  2. data/.codeclimate.yml +9 -0
  3. data/.gitignore +19 -0
  4. data/Gemfile +4 -0
  5. data/LICENSE.txt +22 -0
  6. data/README.md +83 -0
  7. data/Rakefile +7 -0
  8. data/lib/powerpoint/compression.rb +25 -0
  9. data/lib/powerpoint/presentation.rb +118 -0
  10. data/lib/powerpoint/slide/collage.rb +47 -0
  11. data/lib/powerpoint/slide/comment.rb +39 -0
  12. data/lib/powerpoint/slide/concept.rb +48 -0
  13. data/lib/powerpoint/slide/custom.rb +50 -0
  14. data/lib/powerpoint/slide/dashboard.rb +45 -0
  15. data/lib/powerpoint/slide/dashboard_user.rb +40 -0
  16. data/lib/powerpoint/slide/extended_intro.rb +38 -0
  17. data/lib/powerpoint/slide/gallery.rb +42 -0
  18. data/lib/powerpoint/slide/intro.rb +36 -0
  19. data/lib/powerpoint/slide/multiple_image.rb +42 -0
  20. data/lib/powerpoint/slide/pictorial.rb +54 -0
  21. data/lib/powerpoint/slide/picture_description.rb +63 -0
  22. data/lib/powerpoint/slide/text_picture_split.rb +56 -0
  23. data/lib/powerpoint/slide/textual.rb +32 -0
  24. data/lib/powerpoint/util.rb +39 -0
  25. data/lib/powerpoint/version.rb +3 -0
  26. data/lib/powerpoint/views/app.xml.erb +51 -0
  27. data/lib/powerpoint/views/collage.xml.erb +211 -0
  28. data/lib/powerpoint/views/collage_rel.xml.erb +9 -0
  29. data/lib/powerpoint/views/comment.xml.erb +257 -0
  30. data/lib/powerpoint/views/comment_rel.xml.erb +6 -0
  31. data/lib/powerpoint/views/concept.xml.erb +271 -0
  32. data/lib/powerpoint/views/concept_rel.xml.erb +9 -0
  33. data/lib/powerpoint/views/content_type.xml.erb +31 -0
  34. data/lib/powerpoint/views/custom.xml.erb +174 -0
  35. data/lib/powerpoint/views/custom_rel.xml.erb +9 -0
  36. data/lib/powerpoint/views/dashboard.xml.erb +976 -0
  37. data/lib/powerpoint/views/dashboard_rel.xml.erb +9 -0
  38. data/lib/powerpoint/views/dashboard_user.xml.erb +221 -0
  39. data/lib/powerpoint/views/dashboard_user_rel.xml.erb +8 -0
  40. data/lib/powerpoint/views/extended_intro_slide.xml.erb +225 -0
  41. data/lib/powerpoint/views/extended_intro_slide_rel.xml.erb +3 -0
  42. data/lib/powerpoint/views/gallery.xml.erb +340 -0
  43. data/lib/powerpoint/views/gallery_rel.xml.erb +9 -0
  44. data/lib/powerpoint/views/intro_slide.xml.erb +74 -0
  45. data/lib/powerpoint/views/multiple_image.xml.erb +319 -0
  46. data/lib/powerpoint/views/multiple_image_rel.xml.erb +9 -0
  47. data/lib/powerpoint/views/pictorial_rel.xml.erb +5 -0
  48. data/lib/powerpoint/views/pictorial_slide.xml.erb +87 -0
  49. data/lib/powerpoint/views/picture_description_rels.xml.erb +5 -0
  50. data/lib/powerpoint/views/picture_description_slide.xml.erb +115 -0
  51. data/lib/powerpoint/views/presentation.xml.erb +124 -0
  52. data/lib/powerpoint/views/presentation.xml.rel.erb +11 -0
  53. data/lib/powerpoint/views/text_picture_split_rel.xml.erb +5 -0
  54. data/lib/powerpoint/views/text_picture_split_slide.xml.erb +114 -0
  55. data/lib/powerpoint/views/textual_rel.xml.erb +4 -0
  56. data/lib/powerpoint/views/textual_slide.xml.erb +78 -0
  57. data/lib/powerpoint.rb +25 -0
  58. data/powerpoint.gemspec +31 -0
  59. data/samples/images/sample_gif.gif +0 -0
  60. data/samples/images/sample_jpg.jpg +0 -0
  61. data/samples/images/sample_png.png +0 -0
  62. data/samples/pptx/sample.pptx +0 -0
  63. data/spec/extended_test_spec.rb +13 -0
  64. data/spec/ranking_spec.rb +13 -0
  65. data/spec/test_spec.rb +22 -0
  66. data/template/_rels/.rels +6 -0
  67. data/template/docProps/core.xml +7 -0
  68. data/template/ppt/_rels/.keep +0 -0
  69. data/template/ppt/media/.keep +0 -0
  70. data/template/ppt/presProps.xml +14 -0
  71. data/template/ppt/slideLayouts/_rels/slideLayout1.xml.rels +2 -0
  72. data/template/ppt/slideLayouts/_rels/slideLayout10.xml.rels +2 -0
  73. data/template/ppt/slideLayouts/_rels/slideLayout11.xml.rels +2 -0
  74. data/template/ppt/slideLayouts/_rels/slideLayout2.xml.rels +2 -0
  75. data/template/ppt/slideLayouts/_rels/slideLayout3.xml.rels +2 -0
  76. data/template/ppt/slideLayouts/_rels/slideLayout4.xml.rels +2 -0
  77. data/template/ppt/slideLayouts/_rels/slideLayout5.xml.rels +2 -0
  78. data/template/ppt/slideLayouts/_rels/slideLayout6.xml.rels +2 -0
  79. data/template/ppt/slideLayouts/_rels/slideLayout7.xml.rels +2 -0
  80. data/template/ppt/slideLayouts/_rels/slideLayout8.xml.rels +2 -0
  81. data/template/ppt/slideLayouts/_rels/slideLayout9.xml.rels +2 -0
  82. data/template/ppt/slideLayouts/slideLayout1.xml +242 -0
  83. data/template/ppt/slideLayouts/slideLayout10.xml +2 -0
  84. data/template/ppt/slideLayouts/slideLayout11.xml +2 -0
  85. data/template/ppt/slideLayouts/slideLayout2.xml +165 -0
  86. data/template/ppt/slideLayouts/slideLayout3.xml +2 -0
  87. data/template/ppt/slideLayouts/slideLayout4.xml +2 -0
  88. data/template/ppt/slideLayouts/slideLayout5.xml +2 -0
  89. data/template/ppt/slideLayouts/slideLayout6.xml +2 -0
  90. data/template/ppt/slideLayouts/slideLayout7.xml +2 -0
  91. data/template/ppt/slideLayouts/slideLayout8.xml +2 -0
  92. data/template/ppt/slideLayouts/slideLayout9.xml +2 -0
  93. data/template/ppt/slideMasters/_rels/slideMaster1.xml.rels +2 -0
  94. data/template/ppt/slideMasters/_rels/slideMaster2.xml.rels +2 -0
  95. data/template/ppt/slideMasters/slideMaster1.xml +487 -0
  96. data/template/ppt/slideMasters/slideMaster2.xml +487 -0
  97. data/template/ppt/slides/_rels/.keep +0 -0
  98. data/template/ppt/tableStyles.xml +2 -0
  99. data/template/ppt/theme/theme1.xml +2 -0
  100. data/template/ppt/theme/theme2.xml +281 -0
  101. data/template/ppt/viewProps.xml +32 -0
  102. metadata +232 -0
@@ -0,0 +1,174 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2
+ <p:sld xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" xmlns:p="http://schemas.openxmlformats.org/presentationml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">
3
+ <p:cSld>
4
+ <p:spTree>
5
+ <p:nvGrpSpPr>
6
+ <p:cNvPr id="1" name=""/>
7
+ <p:cNvGrpSpPr/>
8
+ <p:nvPr/>
9
+ </p:nvGrpSpPr>
10
+ <p:grpSpPr>
11
+ <a:xfrm>
12
+ <a:off x="0" y="0"/>
13
+ <a:ext cx="0" cy="0"/>
14
+ <a:chOff x="0" y="0"/>
15
+ <a:chExt cx="0" cy="0"/>
16
+ </a:xfrm>
17
+ </p:grpSpPr>
18
+ <% properties.each_with_index do |property, index| %>
19
+ <% if property[:type] == 'image' %>
20
+ <p:sp>
21
+ <p:nvSpPr>
22
+ <p:cNvPr id="2" name="Title 1"/>
23
+ <p:cNvSpPr>
24
+ <a:spLocks noGrp="1"/>
25
+ </p:cNvSpPr>
26
+ <p:nvPr>
27
+ <p:ph type="title"/>
28
+ </p:nvPr>
29
+ </p:nvSpPr>
30
+ <p:spPr/>
31
+ <% if property["title"].present?%>
32
+ <p:txBody>
33
+ <a:bodyPr/>
34
+ <a:lstStyle/>
35
+ <a:p>
36
+ <a:r>
37
+ <a:rPr dirty="0" lang="en-US" smtClean="0"/>
38
+ <a:t><%= property["title"] %></a:t>
39
+ </a:r>
40
+ <a:endParaRPr dirty="0" lang="en-US"/>
41
+ </a:p>
42
+ </p:txBody>
43
+ <%end%>
44
+ </p:sp>
45
+ <p:pic>
46
+ <p:nvPicPr>
47
+ <p:cNvPr id="4" name="Content Placeholder 3"/>
48
+ <p:cNvPicPr>
49
+ <a:picLocks noChangeAspect="1" noGrp="1"/>
50
+ </p:cNvPicPr>
51
+ <p:nvPr>
52
+ <p:ph idx="1"/>
53
+ </p:nvPr>
54
+ </p:nvPicPr>
55
+ <p:blipFill>
56
+ <a:blip r:embed="rId<%= 2 + index%>">
57
+ <a:extLst>
58
+ <a:ext uri="{28A0092B-C50C-407E-A947-70E740481C1C}">
59
+ <a14:useLocalDpi val="0" xmlns:a14="http://schemas.microsoft.com/office/drawing/2010/main"/>
60
+ </a:ext>
61
+ </a:extLst>
62
+ </a:blip>
63
+ <a:stretch>
64
+ <a:fillRect/>
65
+ </a:stretch>
66
+ </p:blipFill>
67
+ <%if property[:coords].present? %>
68
+ <p:spPr>
69
+ <a:xfrm>
70
+ <a:off x="<%= pixle_to_pt(property[:coords][:x]).to_s %>" y="<%= pixle_to_pt(property[:coords][:y]).to_s %>"/>
71
+ <a:ext cx="<%= pixle_to_pt(property[:coords][:cx]).to_s %>" cy="<%= pixle_to_pt(property[:coords][:cy]).to_s %>"/>
72
+ </a:xfrm>
73
+ <a:prstGeom prst="rect">
74
+ <a:avLst/>
75
+ </a:prstGeom>
76
+ </p:spPr>
77
+ <% elsif coords.any? && !property[:coords].present?%>
78
+ <p:spPr>
79
+ <a:xfrm>
80
+ <a:off x="<%= coords[:x].to_s %>" y="<%= coords[:y].to_s %>"/>
81
+ <a:ext cx="<%= coords[:cx].to_s %>" cy="<%= coords[:cy].to_s %>"/>
82
+ </a:xfrm>
83
+ <a:prstGeom prst="rect">
84
+ <a:avLst/>
85
+ </a:prstGeom>
86
+ </p:spPr>
87
+ <% else %>
88
+ <p:spPr/>
89
+ <% end %>
90
+ </p:pic>
91
+ <%elsif property[:type] == 'title'%>
92
+ <p:sp>
93
+ <p:nvSpPr>
94
+ <p:cNvPr id="3" name="Subtitle 2"/>
95
+ <p:cNvSpPr>
96
+ <a:spLocks noGrp="1"/>
97
+ </p:cNvSpPr>
98
+ <p:nvPr>
99
+ <p:ph idx="1" type="subTitle"/>
100
+ </p:nvPr>
101
+ </p:nvSpPr>
102
+ <p:spPr/>
103
+ <p:txBody>
104
+ <a:bodyPr/>
105
+ <a:lstStyle/>
106
+ <a:p>
107
+ <a:r>
108
+ <a:rPr lang="en-US" smtClean="0"/>
109
+ <a:t><%= property[:content] %></a:t>
110
+ </a:r>
111
+ <a:endParaRPr lang="en-US"/>
112
+ </a:p>
113
+ </p:txBody>
114
+ </p:sp>
115
+ <%elsif property[:type]== 'text'%>
116
+ <p:sp>
117
+ <p:nvSpPr>
118
+ <p:cNvPr id="5<%=index%>" />
119
+ <p:cNvSpPr txBox="1"/>
120
+ <p:nvPr/>
121
+ </p:nvSpPr>
122
+ <%if property[:coords].present? %>
123
+ <p:spPr>
124
+ <a:xfrm>
125
+ <a:off x="<%= pixle_to_pt(property[:coords][:x]).to_s %>" y="<%= pixle_to_pt(property[:coords][:y]).to_s %>"/>
126
+ <a:ext cx="<%= pixle_to_pt(property[:coords][:cx]).to_s %>" cy="<%= pixle_to_pt(property[:coords][:cy]).to_s %>"/>
127
+ </a:xfrm>
128
+ <a:prstGeom prst="rect">
129
+ <a:avLst/>
130
+ </a:prstGeom>
131
+ </p:spPr>
132
+ <% else %>
133
+ <p:spPr>
134
+ <a:xfrm>
135
+ <a:off x="<%= pixle_to_pt(450).to_s %>" y="<%= pixle_to_pt(250).to_s %>"/>
136
+ <a:ext cx="<%= pixle_to_pt(200).to_s %>" cy="<%= pixle_to_pt(200).to_s %>"/>
137
+ </a:xfrm>
138
+ <a:prstGeom prst="rect">
139
+ <a:avLst/>
140
+ </a:prstGeom>
141
+ </p:spPr>
142
+ <% end %>
143
+ <p:txBody>
144
+ <a:bodyPr wrap="square" rtlCol="0">
145
+ <a:spAutoFit/>
146
+ </a:bodyPr>
147
+ <a:lstStyle/>
148
+ <a:p>
149
+ <a:pPr algn="<%=property[:align].present? ? property[:align] == 'center' ? 'ctr' : property[:align] == 'right' ? 'r' : 'l' : 'ctr' %>"/>
150
+ <a:r>
151
+ <a:rPr dirty="0" b="<%=property[:bold] ? 1 : 0%>" i="<%=property[:italic] ? 1 : 0%>" lang="en-US" smtClean="0" sz="<%= property[:size].present? ? property[:size] * 100 : 1600%>">
152
+ <a:solidFill>
153
+ <a:schemeClr val="dk2" />
154
+ </a:solidFill>
155
+ <a:latin typeface="<%=property[:font].present? ? property[:font] : 'Arial' %>" pitchFamily="2" charset="77"/>
156
+ </a:rPr>
157
+ <a:t><%= property[:content] %></a:t>
158
+ </a:r>
159
+ </a:p>
160
+ </p:txBody>
161
+ </p:sp>
162
+ <%end%>
163
+ <% end %>
164
+ </p:spTree>
165
+ <p:extLst>
166
+ <p:ext uri="{BB962C8B-B14F-4D97-AF65-F5344CB8AC3E}">
167
+ <p14:creationId val="1474098577" xmlns:p14="http://schemas.microsoft.com/office/powerpoint/2010/main"/>
168
+ </p:ext>
169
+ </p:extLst>
170
+ </p:cSld>
171
+ <p:clrMapOvr>
172
+ <a:masterClrMapping/>
173
+ </p:clrMapOvr>
174
+ </p:sld>
@@ -0,0 +1,9 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2
+ <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
3
+ <Relationship Id="rId1" Target="../slideLayouts/slideLayout9.xml" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideLayout"/>
4
+ <% properties.each_with_index do |property, index| %>
5
+ <%if property[:type] == 'image'%>
6
+ <Relationship Id="rId<%= 2 + index %>" Target="../media/<%= URI.parse(property[:file_path].gsub(" ","")).path.split("/").last %>" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image"/>
7
+ <% end %>
8
+ <% end %>
9
+ </Relationships>