aspose_pdf_cloud 20.9.0 → 21.10.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (410) hide show
  1. checksums.yaml +4 -4
  2. data/Examples/delete_annotation.rb +22 -0
  3. data/Examples/delete_document_annotations.rb +18 -0
  4. data/Examples/delete_page_annotations.rb +17 -0
  5. data/Examples/example_data/PdfWithAnnotations.pdf +0 -0
  6. data/Examples/get_carret_annotation.rb +20 -0
  7. data/Examples/get_circle_annotation.rb +21 -0
  8. data/Examples/get_circle_annotations.rb +17 -0
  9. data/Examples/get_document_annotations.rb +15 -0
  10. data/Examples/get_document_free_text_annotations.rb +17 -0
  11. data/Examples/get_document_highlight_annotations.rb +16 -0
  12. data/Examples/get_document_ink_annotations.rb +15 -0
  13. data/Examples/get_document_line_annotations.rb +16 -0
  14. data/Examples/get_document_movie_annotations.rb +16 -0
  15. data/Examples/get_document_polygon_annotations.rb +16 -0
  16. data/Examples/get_document_polyline_annotations.rb +17 -0
  17. data/Examples/get_document_popup_annotation_by_parent.rb +17 -0
  18. data/Examples/get_document_popup_annotations.rb +16 -0
  19. data/Examples/get_document_redaction_annotations.rb +16 -0
  20. data/Examples/get_document_screen_annotations.rb +17 -0
  21. data/Examples/get_document_sound_annotations.rb +18 -0
  22. data/Examples/get_document_squiggly_annotations.rb +18 -0
  23. data/Examples/get_document_stamp_annotations.rb +17 -0
  24. data/Examples/get_document_strike_out_annotation.rb +17 -0
  25. data/Examples/get_document_text_annotations.rb +17 -0
  26. data/Examples/get_document_underline_annotations.rb +17 -0
  27. data/Examples/get_documnet_carret_annotation.rb +17 -0
  28. data/Examples/get_file_attachment_annotation.rb +21 -0
  29. data/Examples/get_file_attachment_annotation_data.rb +21 -0
  30. data/Examples/get_file_attachment_annotations.rb +19 -0
  31. data/Examples/get_free_text_annotation.rb +20 -0
  32. data/Examples/get_hightlight_annotations.rb +20 -0
  33. data/Examples/get_ink_annotation.rb +21 -0
  34. data/Examples/get_line_annotation.rb +20 -0
  35. data/Examples/get_movie_annotation.rb +20 -0
  36. data/Examples/get_page_annotations.rb +19 -0
  37. data/Examples/get_page_carret_annotations.rb +17 -0
  38. data/Examples/get_page_file_attachment_annotations.rb +19 -0
  39. data/Examples/get_page_free_text_annotations.rb +18 -0
  40. data/Examples/get_page_highlight_annotations.rb +18 -0
  41. data/Examples/get_page_ink_annotations.rb +17 -0
  42. data/Examples/get_page_line_annotations.rb +17 -0
  43. data/Examples/get_page_movie_annotations.rb +18 -0
  44. data/Examples/get_page_polygon_annotations.rb +18 -0
  45. data/Examples/get_page_polyline_annotations.rb +21 -0
  46. data/Examples/get_page_redaction_annotations.rb +17 -0
  47. data/Examples/get_page_screen_annotations.rb +19 -0
  48. data/Examples/get_page_sound_annotations.rb +20 -0
  49. data/Examples/get_page_square_annotations.rb +18 -0
  50. data/Examples/get_page_squiggly_annotations.rb +17 -0
  51. data/Examples/get_page_stamp_annotations.rb +17 -0
  52. data/Examples/get_page_strikeout_annotations.rb +17 -0
  53. data/Examples/get_page_text_annotations.rb +17 -0
  54. data/Examples/get_page_underline_annotations.rb +17 -0
  55. data/Examples/get_polygon_annotation.rb +20 -0
  56. data/Examples/get_polyline_annotation.rb +22 -0
  57. data/Examples/get_redaction_annotation.rb +19 -0
  58. data/Examples/get_screen_annotation.rb +22 -0
  59. data/Examples/get_screen_annotation_data.rb +19 -0
  60. data/Examples/get_screen_annotations.rb +21 -0
  61. data/Examples/get_sound_annotation.rb +25 -0
  62. data/Examples/get_sound_annotation_data.rb +19 -0
  63. data/Examples/get_square_annotation.rb +19 -0
  64. data/Examples/get_squiggly_annotation.rb +19 -0
  65. data/Examples/get_stamp_annotation.rb +20 -0
  66. data/Examples/get_stamp_annotation_data.rb +20 -0
  67. data/Examples/get_strike_out_annotation.rb +19 -0
  68. data/Examples/get_text_annotation.rb +19 -0
  69. data/Examples/get_underline_annotation.rb +19 -0
  70. data/Examples/post_page_carret_annotations.rb +28 -0
  71. data/Examples/post_page_circle_annotations.rb +27 -0
  72. data/Examples/post_page_file_attachnment_annotations.rb +38 -0
  73. data/Examples/post_page_free_text_annotations.rb +35 -0
  74. data/Examples/post_page_hightlight_annotations.rb +32 -0
  75. data/Examples/post_page_ink_annotations.rb +39 -0
  76. data/Examples/post_page_line_annotations.rb +28 -0
  77. data/Examples/post_page_movie_annotations.rb +30 -0
  78. data/Examples/post_page_polygon_annotations.rb +33 -0
  79. data/Examples/post_page_polyline_annotations.rb +35 -0
  80. data/Examples/post_page_redaction_annotations.rb +28 -0
  81. data/Examples/post_page_screen_annotations.rb +31 -0
  82. data/Examples/post_page_sound_annotations.rb +35 -0
  83. data/Examples/post_page_square_annotations.rb +27 -0
  84. data/Examples/post_page_squiggly_annotations.rb +33 -0
  85. data/Examples/post_page_stamp_annotations.rb +34 -0
  86. data/Examples/post_page_strike_out_annotation.rb +33 -0
  87. data/Examples/post_page_text_annotations.rb +26 -0
  88. data/Examples/post_page_underline_annotations.rb +33 -0
  89. data/Examples/post_popup_annotation.rb +25 -0
  90. data/Examples/put_annotations_flatten.rb +20 -0
  91. data/Examples/put_carret_annotation.rb +30 -0
  92. data/Examples/put_circle_annotation.rb +29 -0
  93. data/Examples/put_file_attachment_annotation.rb +38 -0
  94. data/Examples/put_file_attachment_annotion_data_extract.rb +21 -0
  95. data/Examples/put_free_text_annotation.rb +38 -0
  96. data/Examples/put_highlight_annotation.rb +34 -0
  97. data/Examples/put_ink_annotation.rb +41 -0
  98. data/Examples/put_line_annotation.rb +30 -0
  99. data/Examples/put_movie_annotation.rb +31 -0
  100. data/Examples/put_polygon_annotation.rb +35 -0
  101. data/Examples/put_polyline_annotation.rb +36 -0
  102. data/Examples/put_redaction_annotation.rb +31 -0
  103. data/Examples/put_screen_annotation.rb +33 -0
  104. data/Examples/put_screen_annotation_data_extract.rb +19 -0
  105. data/Examples/put_sound_annotation.rb +42 -0
  106. data/Examples/put_sound_annotation_data_extract.rb +20 -0
  107. data/Examples/put_square_annotation.rb +28 -0
  108. data/Examples/put_squiggly_annotation.rb +35 -0
  109. data/Examples/put_stamp_annotation.rb +35 -0
  110. data/Examples/put_strike_out_annotation.rb +35 -0
  111. data/Examples/put_text_annotation.rb +29 -0
  112. data/Examples/put_underline_annotation.rb +35 -0
  113. data/LICENSE +1 -1
  114. data/README.md +65 -53
  115. data/aspose_pdf_cloud.gemspec +53 -53
  116. data/docs/PdfApi.md +6 -102
  117. data/docs/TextReplace.md +1 -1
  118. data/lib/aspose_pdf_cloud/api/pdf_api.rb +29142 -29427
  119. data/lib/aspose_pdf_cloud/api_client.rb +1 -1
  120. data/lib/aspose_pdf_cloud/api_error.rb +47 -47
  121. data/lib/aspose_pdf_cloud/configuration.rb +172 -172
  122. data/lib/aspose_pdf_cloud/models/annotation.rb +318 -318
  123. data/lib/aspose_pdf_cloud/models/annotation_flags.rb +53 -53
  124. data/lib/aspose_pdf_cloud/models/annotation_info.rb +333 -333
  125. data/lib/aspose_pdf_cloud/models/annotation_state.rb +50 -50
  126. data/lib/aspose_pdf_cloud/models/annotation_type.rb +70 -70
  127. data/lib/aspose_pdf_cloud/models/annotations_info.rb +213 -213
  128. data/lib/aspose_pdf_cloud/models/annotations_info_response.rb +224 -224
  129. data/lib/aspose_pdf_cloud/models/antialiasing_processing_type.rb +44 -44
  130. data/lib/aspose_pdf_cloud/models/aspose_response.rb +214 -214
  131. data/lib/aspose_pdf_cloud/models/attachment.rb +276 -276
  132. data/lib/aspose_pdf_cloud/models/attachment_response.rb +224 -224
  133. data/lib/aspose_pdf_cloud/models/attachments.rb +213 -213
  134. data/lib/aspose_pdf_cloud/models/attachments_response.rb +224 -224
  135. data/lib/aspose_pdf_cloud/models/bookmark.rb +361 -361
  136. data/lib/aspose_pdf_cloud/models/bookmark_response.rb +224 -224
  137. data/lib/aspose_pdf_cloud/models/bookmarks.rb +213 -213
  138. data/lib/aspose_pdf_cloud/models/bookmarks_response.rb +224 -224
  139. data/lib/aspose_pdf_cloud/models/border.rb +249 -249
  140. data/lib/aspose_pdf_cloud/models/border_corner_style.rb +44 -44
  141. data/lib/aspose_pdf_cloud/models/border_effect.rb +44 -44
  142. data/lib/aspose_pdf_cloud/models/border_info.rb +239 -239
  143. data/lib/aspose_pdf_cloud/models/border_style.rb +47 -47
  144. data/lib/aspose_pdf_cloud/models/box_style.rb +48 -48
  145. data/lib/aspose_pdf_cloud/models/cap_style.rb +44 -44
  146. data/lib/aspose_pdf_cloud/models/caption_position.rb +44 -44
  147. data/lib/aspose_pdf_cloud/models/caret_annotation.rb +378 -378
  148. data/lib/aspose_pdf_cloud/models/caret_annotation_response.rb +224 -224
  149. data/lib/aspose_pdf_cloud/models/caret_annotations.rb +213 -213
  150. data/lib/aspose_pdf_cloud/models/caret_annotations_response.rb +224 -224
  151. data/lib/aspose_pdf_cloud/models/caret_symbol.rb +44 -44
  152. data/lib/aspose_pdf_cloud/models/cell.rb +353 -353
  153. data/lib/aspose_pdf_cloud/models/cell_recognized.rb +209 -209
  154. data/lib/aspose_pdf_cloud/models/check_box_field.rb +455 -455
  155. data/lib/aspose_pdf_cloud/models/check_box_field_response.rb +224 -224
  156. data/lib/aspose_pdf_cloud/models/check_box_fields.rb +213 -213
  157. data/lib/aspose_pdf_cloud/models/check_box_fields_response.rb +224 -224
  158. data/lib/aspose_pdf_cloud/models/choice_field.rb +418 -418
  159. data/lib/aspose_pdf_cloud/models/circle_annotation.rb +378 -378
  160. data/lib/aspose_pdf_cloud/models/circle_annotation_response.rb +224 -224
  161. data/lib/aspose_pdf_cloud/models/circle_annotations.rb +213 -213
  162. data/lib/aspose_pdf_cloud/models/circle_annotations_response.rb +224 -224
  163. data/lib/aspose_pdf_cloud/models/color.rb +249 -249
  164. data/lib/aspose_pdf_cloud/models/color_depth.rb +46 -46
  165. data/lib/aspose_pdf_cloud/models/column_adjustment.rb +45 -45
  166. data/lib/aspose_pdf_cloud/models/combo_box_field.rb +460 -460
  167. data/lib/aspose_pdf_cloud/models/combo_box_field_response.rb +224 -224
  168. data/lib/aspose_pdf_cloud/models/combo_box_fields.rb +213 -213
  169. data/lib/aspose_pdf_cloud/models/combo_box_fields_response.rb +224 -224
  170. data/lib/aspose_pdf_cloud/models/common_figure_annotation.rb +378 -378
  171. data/lib/aspose_pdf_cloud/models/compression_type.rb +47 -47
  172. data/lib/aspose_pdf_cloud/models/crypto_algorithm.rb +46 -46
  173. data/lib/aspose_pdf_cloud/models/dash.rb +219 -219
  174. data/lib/aspose_pdf_cloud/models/default_page_config.rb +209 -209
  175. data/lib/aspose_pdf_cloud/models/direction.rb +44 -44
  176. data/lib/aspose_pdf_cloud/models/disc_usage.rb +219 -219
  177. data/lib/aspose_pdf_cloud/models/display_properties.rb +291 -291
  178. data/lib/aspose_pdf_cloud/models/display_properties_response.rb +224 -224
  179. data/lib/aspose_pdf_cloud/models/doc_format.rb +44 -44
  180. data/lib/aspose_pdf_cloud/models/doc_mdp_access_permission_type.rb +45 -45
  181. data/lib/aspose_pdf_cloud/models/doc_recognition_mode.rb +44 -44
  182. data/lib/aspose_pdf_cloud/models/document.rb +231 -231
  183. data/lib/aspose_pdf_cloud/models/document_config.rb +234 -234
  184. data/lib/aspose_pdf_cloud/models/document_page_response.rb +224 -224
  185. data/lib/aspose_pdf_cloud/models/document_pages_response.rb +224 -224
  186. data/lib/aspose_pdf_cloud/models/document_privilege.rb +299 -299
  187. data/lib/aspose_pdf_cloud/models/document_properties.rb +213 -213
  188. data/lib/aspose_pdf_cloud/models/document_properties_response.rb +224 -224
  189. data/lib/aspose_pdf_cloud/models/document_property.rb +236 -236
  190. data/lib/aspose_pdf_cloud/models/document_property_response.rb +224 -224
  191. data/lib/aspose_pdf_cloud/models/document_response.rb +236 -236
  192. data/lib/aspose_pdf_cloud/models/epub_recognition_mode.rb +45 -45
  193. data/lib/aspose_pdf_cloud/models/error.rb +229 -229
  194. data/lib/aspose_pdf_cloud/models/error_details.rb +214 -214
  195. data/lib/aspose_pdf_cloud/models/field.rb +260 -260
  196. data/lib/aspose_pdf_cloud/models/field_response.rb +224 -224
  197. data/lib/aspose_pdf_cloud/models/field_type.rb +46 -46
  198. data/lib/aspose_pdf_cloud/models/fields.rb +218 -218
  199. data/lib/aspose_pdf_cloud/models/fields_response.rb +224 -224
  200. data/lib/aspose_pdf_cloud/models/file_attachment_annotation.rb +408 -408
  201. data/lib/aspose_pdf_cloud/models/file_attachment_annotation_response.rb +224 -224
  202. data/lib/aspose_pdf_cloud/models/file_attachment_annotations.rb +213 -213
  203. data/lib/aspose_pdf_cloud/models/file_attachment_annotations_response.rb +224 -224
  204. data/lib/aspose_pdf_cloud/models/file_icon.rb +46 -46
  205. data/lib/aspose_pdf_cloud/models/file_version.rb +274 -274
  206. data/lib/aspose_pdf_cloud/models/file_versions.rb +201 -201
  207. data/lib/aspose_pdf_cloud/models/files_list.rb +201 -201
  208. data/lib/aspose_pdf_cloud/models/files_upload_result.rb +213 -213
  209. data/lib/aspose_pdf_cloud/models/font_encoding_rules.rb +44 -44
  210. data/lib/aspose_pdf_cloud/models/font_saving_modes.rb +46 -46
  211. data/lib/aspose_pdf_cloud/models/font_styles.rb +46 -46
  212. data/lib/aspose_pdf_cloud/models/form_field.rb +398 -398
  213. data/lib/aspose_pdf_cloud/models/free_text_annotation.rb +403 -403
  214. data/lib/aspose_pdf_cloud/models/free_text_annotation_response.rb +224 -224
  215. data/lib/aspose_pdf_cloud/models/free_text_annotations.rb +213 -213
  216. data/lib/aspose_pdf_cloud/models/free_text_annotations_response.rb +224 -224
  217. data/lib/aspose_pdf_cloud/models/free_text_intent.rb +45 -45
  218. data/lib/aspose_pdf_cloud/models/graph_info.rb +301 -301
  219. data/lib/aspose_pdf_cloud/models/highlight_annotation.rb +370 -370
  220. data/lib/aspose_pdf_cloud/models/highlight_annotation_response.rb +224 -224
  221. data/lib/aspose_pdf_cloud/models/highlight_annotations.rb +213 -213
  222. data/lib/aspose_pdf_cloud/models/highlight_annotations_response.rb +224 -224
  223. data/lib/aspose_pdf_cloud/models/horizontal_alignment.rb +46 -46
  224. data/lib/aspose_pdf_cloud/models/html_document_type.rb +44 -44
  225. data/lib/aspose_pdf_cloud/models/html_markup_generation_modes.rb +44 -44
  226. data/lib/aspose_pdf_cloud/models/image.rb +266 -266
  227. data/lib/aspose_pdf_cloud/models/image_compression_version.rb +45 -45
  228. data/lib/aspose_pdf_cloud/models/image_encoding.rb +46 -46
  229. data/lib/aspose_pdf_cloud/models/image_footer.rb +341 -341
  230. data/lib/aspose_pdf_cloud/models/image_fragment.rb +283 -283
  231. data/lib/aspose_pdf_cloud/models/image_header.rb +341 -341
  232. data/lib/aspose_pdf_cloud/models/image_response.rb +224 -224
  233. data/lib/aspose_pdf_cloud/models/image_src_type.rb +44 -44
  234. data/lib/aspose_pdf_cloud/models/image_stamp.rb +361 -361
  235. data/lib/aspose_pdf_cloud/models/image_template.rb +301 -301
  236. data/lib/aspose_pdf_cloud/models/image_templates_request.rb +231 -231
  237. data/lib/aspose_pdf_cloud/models/images.rb +213 -213
  238. data/lib/aspose_pdf_cloud/models/images_response.rb +224 -224
  239. data/lib/aspose_pdf_cloud/models/ink_annotation.rb +380 -380
  240. data/lib/aspose_pdf_cloud/models/ink_annotation_response.rb +224 -224
  241. data/lib/aspose_pdf_cloud/models/ink_annotations.rb +213 -213
  242. data/lib/aspose_pdf_cloud/models/ink_annotations_response.rb +224 -224
  243. data/lib/aspose_pdf_cloud/models/justification.rb +45 -45
  244. data/lib/aspose_pdf_cloud/models/letters_positioning_methods.rb +44 -44
  245. data/lib/aspose_pdf_cloud/models/line_annotation.rb +488 -488
  246. data/lib/aspose_pdf_cloud/models/line_annotation_response.rb +224 -224
  247. data/lib/aspose_pdf_cloud/models/line_annotations.rb +213 -213
  248. data/lib/aspose_pdf_cloud/models/line_annotations_response.rb +224 -224
  249. data/lib/aspose_pdf_cloud/models/line_ending.rb +52 -52
  250. data/lib/aspose_pdf_cloud/models/line_intent.rb +45 -45
  251. data/lib/aspose_pdf_cloud/models/line_spacing.rb +44 -44
  252. data/lib/aspose_pdf_cloud/models/link.rb +229 -229
  253. data/lib/aspose_pdf_cloud/models/link_action_type.rb +48 -48
  254. data/lib/aspose_pdf_cloud/models/link_annotation.rb +294 -294
  255. data/lib/aspose_pdf_cloud/models/link_annotation_response.rb +224 -224
  256. data/lib/aspose_pdf_cloud/models/link_annotations.rb +213 -213
  257. data/lib/aspose_pdf_cloud/models/link_annotations_response.rb +224 -224
  258. data/lib/aspose_pdf_cloud/models/link_element.rb +201 -201
  259. data/lib/aspose_pdf_cloud/models/link_highlighting_mode.rb +47 -47
  260. data/lib/aspose_pdf_cloud/models/list_box_field.rb +462 -462
  261. data/lib/aspose_pdf_cloud/models/list_box_field_response.rb +224 -224
  262. data/lib/aspose_pdf_cloud/models/list_box_fields.rb +213 -213
  263. data/lib/aspose_pdf_cloud/models/list_box_fields_response.rb +224 -224
  264. data/lib/aspose_pdf_cloud/models/margin_info.rb +229 -229
  265. data/lib/aspose_pdf_cloud/models/markup_annotation.rb +358 -358
  266. data/lib/aspose_pdf_cloud/models/merge_documents.rb +206 -206
  267. data/lib/aspose_pdf_cloud/models/movie_annotation.rb +348 -348
  268. data/lib/aspose_pdf_cloud/models/movie_annotation_response.rb +224 -224
  269. data/lib/aspose_pdf_cloud/models/movie_annotations.rb +213 -213
  270. data/lib/aspose_pdf_cloud/models/movie_annotations_response.rb +224 -224
  271. data/lib/aspose_pdf_cloud/models/object_exist.rb +219 -219
  272. data/lib/aspose_pdf_cloud/models/optimize_options.rb +319 -319
  273. data/lib/aspose_pdf_cloud/models/option.rb +229 -229
  274. data/lib/aspose_pdf_cloud/models/output_format.rb +44 -44
  275. data/lib/aspose_pdf_cloud/models/page.rb +236 -236
  276. data/lib/aspose_pdf_cloud/models/page_layout.rb +49 -49
  277. data/lib/aspose_pdf_cloud/models/page_mode.rb +48 -48
  278. data/lib/aspose_pdf_cloud/models/page_number_stamp.rb +351 -351
  279. data/lib/aspose_pdf_cloud/models/page_word_count.rb +219 -219
  280. data/lib/aspose_pdf_cloud/models/pages.rb +213 -213
  281. data/lib/aspose_pdf_cloud/models/paragraph.rb +316 -316
  282. data/lib/aspose_pdf_cloud/models/parts_embedding_modes.rb +45 -45
  283. data/lib/aspose_pdf_cloud/models/pdf_a_type.rb +45 -45
  284. data/lib/aspose_pdf_cloud/models/pdf_page_stamp.rb +351 -351
  285. data/lib/aspose_pdf_cloud/models/permissions_flags.rb +50 -50
  286. data/lib/aspose_pdf_cloud/models/point.rb +219 -219
  287. data/lib/aspose_pdf_cloud/models/poly_annotation.rb +415 -415
  288. data/lib/aspose_pdf_cloud/models/poly_intent.rb +46 -46
  289. data/lib/aspose_pdf_cloud/models/poly_line_annotation.rb +415 -415
  290. data/lib/aspose_pdf_cloud/models/poly_line_annotation_response.rb +224 -224
  291. data/lib/aspose_pdf_cloud/models/poly_line_annotations.rb +213 -213
  292. data/lib/aspose_pdf_cloud/models/poly_line_annotations_response.rb +224 -224
  293. data/lib/aspose_pdf_cloud/models/polygon_annotation.rb +415 -415
  294. data/lib/aspose_pdf_cloud/models/polygon_annotation_response.rb +224 -224
  295. data/lib/aspose_pdf_cloud/models/polygon_annotations.rb +213 -213
  296. data/lib/aspose_pdf_cloud/models/polygon_annotations_response.rb +224 -224
  297. data/lib/aspose_pdf_cloud/models/popup_annotation.rb +328 -328
  298. data/lib/aspose_pdf_cloud/models/popup_annotation_response.rb +224 -224
  299. data/lib/aspose_pdf_cloud/models/popup_annotation_with_parent.rb +338 -338
  300. data/lib/aspose_pdf_cloud/models/popup_annotations.rb +213 -213
  301. data/lib/aspose_pdf_cloud/models/popup_annotations_response.rb +224 -224
  302. data/lib/aspose_pdf_cloud/models/position.rb +219 -219
  303. data/lib/aspose_pdf_cloud/models/radio_button_field.rb +452 -452
  304. data/lib/aspose_pdf_cloud/models/radio_button_field_response.rb +224 -224
  305. data/lib/aspose_pdf_cloud/models/radio_button_fields.rb +213 -213
  306. data/lib/aspose_pdf_cloud/models/radio_button_fields_response.rb +224 -224
  307. data/lib/aspose_pdf_cloud/models/radio_button_option_field.rb +418 -418
  308. data/lib/aspose_pdf_cloud/models/raster_images_saving_modes.rb +45 -45
  309. data/lib/aspose_pdf_cloud/models/rectangle.rb +249 -249
  310. data/lib/aspose_pdf_cloud/models/redaction_annotation.rb +380 -380
  311. data/lib/aspose_pdf_cloud/models/redaction_annotation_response.rb +224 -224
  312. data/lib/aspose_pdf_cloud/models/redaction_annotations.rb +213 -213
  313. data/lib/aspose_pdf_cloud/models/redaction_annotations_response.rb +224 -224
  314. data/lib/aspose_pdf_cloud/models/rotation.rb +46 -46
  315. data/lib/aspose_pdf_cloud/models/row.rb +306 -306
  316. data/lib/aspose_pdf_cloud/models/row_recognized.rb +211 -211
  317. data/lib/aspose_pdf_cloud/models/screen_annotation.rb +338 -338
  318. data/lib/aspose_pdf_cloud/models/screen_annotation_response.rb +224 -224
  319. data/lib/aspose_pdf_cloud/models/screen_annotations.rb +213 -213
  320. data/lib/aspose_pdf_cloud/models/screen_annotations_response.rb +224 -224
  321. data/lib/aspose_pdf_cloud/models/segment.rb +233 -233
  322. data/lib/aspose_pdf_cloud/models/shape_type.rb +45 -45
  323. data/lib/aspose_pdf_cloud/models/signature.rb +388 -388
  324. data/lib/aspose_pdf_cloud/models/signature_custom_appearance.rb +329 -329
  325. data/lib/aspose_pdf_cloud/models/signature_field.rb +408 -408
  326. data/lib/aspose_pdf_cloud/models/signature_field_response.rb +224 -224
  327. data/lib/aspose_pdf_cloud/models/signature_fields.rb +213 -213
  328. data/lib/aspose_pdf_cloud/models/signature_fields_response.rb +224 -224
  329. data/lib/aspose_pdf_cloud/models/signature_type.rb +45 -45
  330. data/lib/aspose_pdf_cloud/models/signature_verify_response.rb +229 -229
  331. data/lib/aspose_pdf_cloud/models/sound_annotation.rb +442 -442
  332. data/lib/aspose_pdf_cloud/models/sound_annotation_response.rb +224 -224
  333. data/lib/aspose_pdf_cloud/models/sound_annotations.rb +213 -213
  334. data/lib/aspose_pdf_cloud/models/sound_annotations_response.rb +224 -224
  335. data/lib/aspose_pdf_cloud/models/sound_encoding.rb +46 -46
  336. data/lib/aspose_pdf_cloud/models/sound_icon.rb +44 -44
  337. data/lib/aspose_pdf_cloud/models/split_result.rb +201 -201
  338. data/lib/aspose_pdf_cloud/models/split_result_document.rb +244 -244
  339. data/lib/aspose_pdf_cloud/models/split_result_response.rb +224 -224
  340. data/lib/aspose_pdf_cloud/models/square_annotation.rb +378 -378
  341. data/lib/aspose_pdf_cloud/models/square_annotation_response.rb +224 -224
  342. data/lib/aspose_pdf_cloud/models/square_annotations.rb +213 -213
  343. data/lib/aspose_pdf_cloud/models/square_annotations_response.rb +224 -224
  344. data/lib/aspose_pdf_cloud/models/squiggly_annotation.rb +370 -370
  345. data/lib/aspose_pdf_cloud/models/squiggly_annotation_response.rb +224 -224
  346. data/lib/aspose_pdf_cloud/models/squiggly_annotations.rb +213 -213
  347. data/lib/aspose_pdf_cloud/models/squiggly_annotations_response.rb +224 -224
  348. data/lib/aspose_pdf_cloud/models/stamp.rb +414 -414
  349. data/lib/aspose_pdf_cloud/models/stamp_annotation.rb +388 -388
  350. data/lib/aspose_pdf_cloud/models/stamp_annotation_response.rb +224 -224
  351. data/lib/aspose_pdf_cloud/models/stamp_annotations.rb +213 -213
  352. data/lib/aspose_pdf_cloud/models/stamp_annotations_response.rb +224 -224
  353. data/lib/aspose_pdf_cloud/models/stamp_base.rb +281 -281
  354. data/lib/aspose_pdf_cloud/models/stamp_icon.rb +56 -56
  355. data/lib/aspose_pdf_cloud/models/stamp_info.rb +276 -276
  356. data/lib/aspose_pdf_cloud/models/stamp_type.rb +46 -46
  357. data/lib/aspose_pdf_cloud/models/stamps_info.rb +213 -213
  358. data/lib/aspose_pdf_cloud/models/stamps_info_response.rb +224 -224
  359. data/lib/aspose_pdf_cloud/models/storage_exist.rb +204 -204
  360. data/lib/aspose_pdf_cloud/models/storage_file.rb +249 -249
  361. data/lib/aspose_pdf_cloud/models/strike_out_annotation.rb +370 -370
  362. data/lib/aspose_pdf_cloud/models/strike_out_annotation_response.rb +224 -224
  363. data/lib/aspose_pdf_cloud/models/strike_out_annotations.rb +213 -213
  364. data/lib/aspose_pdf_cloud/models/strike_out_annotations_response.rb +224 -224
  365. data/lib/aspose_pdf_cloud/models/table.rb +438 -438
  366. data/lib/aspose_pdf_cloud/models/table_broken.rb +45 -45
  367. data/lib/aspose_pdf_cloud/models/table_recognized.rb +243 -243
  368. data/lib/aspose_pdf_cloud/models/table_recognized_response.rb +224 -224
  369. data/lib/aspose_pdf_cloud/models/tables_recognized.rb +213 -213
  370. data/lib/aspose_pdf_cloud/models/tables_recognized_response.rb +224 -224
  371. data/lib/aspose_pdf_cloud/models/text_annotation.rb +388 -388
  372. data/lib/aspose_pdf_cloud/models/text_annotation_response.rb +224 -224
  373. data/lib/aspose_pdf_cloud/models/text_annotations.rb +213 -213
  374. data/lib/aspose_pdf_cloud/models/text_annotations_response.rb +224 -224
  375. data/lib/aspose_pdf_cloud/models/text_box_field.rb +458 -458
  376. data/lib/aspose_pdf_cloud/models/text_box_field_response.rb +224 -224
  377. data/lib/aspose_pdf_cloud/models/text_box_fields.rb +213 -213
  378. data/lib/aspose_pdf_cloud/models/text_box_fields_response.rb +224 -224
  379. data/lib/aspose_pdf_cloud/models/text_footer.rb +341 -341
  380. data/lib/aspose_pdf_cloud/models/text_header.rb +341 -341
  381. data/lib/aspose_pdf_cloud/models/text_horizontal_alignment.rb +48 -48
  382. data/lib/aspose_pdf_cloud/models/text_icon.rb +53 -53
  383. data/lib/aspose_pdf_cloud/models/text_line.rb +216 -216
  384. data/lib/aspose_pdf_cloud/models/text_rect.rb +269 -269
  385. data/lib/aspose_pdf_cloud/models/text_rects.rb +201 -201
  386. data/lib/aspose_pdf_cloud/models/text_rects_response.rb +224 -224
  387. data/lib/aspose_pdf_cloud/models/text_replace.rb +268 -292
  388. data/lib/aspose_pdf_cloud/models/text_replace_list_request.rb +236 -236
  389. data/lib/aspose_pdf_cloud/models/text_replace_response.rb +229 -229
  390. data/lib/aspose_pdf_cloud/models/text_stamp.rb +361 -361
  391. data/lib/aspose_pdf_cloud/models/text_state.rb +259 -259
  392. data/lib/aspose_pdf_cloud/models/text_style.rb +244 -244
  393. data/lib/aspose_pdf_cloud/models/timestamp_settings.rb +209 -209
  394. data/lib/aspose_pdf_cloud/models/underline_annotation.rb +370 -370
  395. data/lib/aspose_pdf_cloud/models/underline_annotation_response.rb +224 -224
  396. data/lib/aspose_pdf_cloud/models/underline_annotations.rb +213 -213
  397. data/lib/aspose_pdf_cloud/models/underline_annotations_response.rb +224 -224
  398. data/lib/aspose_pdf_cloud/models/vertical_alignment.rb +46 -46
  399. data/lib/aspose_pdf_cloud/models/word_count.rb +200 -200
  400. data/lib/aspose_pdf_cloud/models/word_count_response.rb +224 -224
  401. data/lib/aspose_pdf_cloud/models/wrap_mode.rb +45 -45
  402. data/lib/aspose_pdf_cloud/version.rb +24 -24
  403. data/lib/aspose_pdf_cloud.rb +325 -326
  404. data/test/pdf_tests.rb +1 -1
  405. data/test_data/FormDataXfdf_in.xfdf +21 -21
  406. data/test_data/TexExample.tex +304 -304
  407. data/test_data/sample.tex +105 -105
  408. metadata +136 -22
  409. data/docs/ApiInfo.md +0 -10
  410. data/lib/aspose_pdf_cloud/models/api_info.rb +0 -209
@@ -1,319 +1,319 @@
1
- =begin
2
- --------------------------------------------------------------------------------------------------------------------
3
- Copyright (c) 2020 Aspose.PDF Cloud
4
- Permission is hereby granted, free of charge, to any person obtaining a copy
5
- of this software and associated documentation files (the "Software"), to deal
6
- in the Software without restriction, including without limitation the rights
7
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
- copies of the Software, and to permit persons to whom the Software is
9
- furnished to do so, subject to the following conditions:
10
- The above copyright notice and this permission notice shall be included in all
11
- copies or substantial portions of the Software.
12
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
14
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
15
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
16
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
17
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
- SOFTWARE.
19
- --------------------------------------------------------------------------------------------------------------------
20
- =end
21
-
22
- require 'date'
23
- require 'time'
24
-
25
- module AsposePdfCloud
26
- # Represents Pdf optimize options.
27
- class OptimizeOptions
28
- # If true page contents will be reused when document is optimized for equal pages.
29
- attr_accessor :allow_reuse_page_content
30
-
31
- # If this flag is set to true images will be compressed in the document. Compression level is specified with ImageQuality property.
32
- attr_accessor :compress_images
33
-
34
- # Specifies level of image compression when CompressImages flag is used.
35
- attr_accessor :image_quality
36
-
37
- # If this flag is set to true, Resource streams will be analyzed. If duplicate streams are found (i.e. if stream contents is equal), then thees streams will be stored as one object. This allows to decrease document size in some cases (for example, when same document was concatenated multiple times).
38
- attr_accessor :link_duplcate_streams
39
-
40
- # If this flag is set to true, all document objects will be checked and unused objects (i.e. objects which does not have any reference) are removed from document.
41
- attr_accessor :remove_unused_objects
42
-
43
- # If this flag set to true, every resource is checked on it's usage. If resource is never used, then resources is removed. This may decrease document size for example when pages were extracted from document.
44
- attr_accessor :remove_unused_streams
45
-
46
- # Make fonts not embedded if set to true.
47
- attr_accessor :unembed_fonts
48
-
49
- # If this flag set to true and CompressImages is true images will be resized if image resolution is greater then specified MaxResolution parameter.
50
- attr_accessor :resize_images
51
-
52
- # Specifies maximum resolution of images. If image has higher resolution it will be scaled.
53
- attr_accessor :max_resolution
54
-
55
- # Fonts will be converted into subsets if set to true.
56
- attr_accessor :subset_fonts
57
-
58
- # Remove private information (page piece info).
59
- attr_accessor :remove_private_info
60
-
61
- # Image encode which will be used.
62
- attr_accessor :image_encoding
63
-
64
- # Version of compression algorithm. Possible values are: \"Standard\" - standard compression, \"Fast\" - fast (improved compression which is faster then standard but may be applicable not for all images), \"Mixed\" - mixed (standard compression is applied to images which can not be compressed by faster algorithm, this may give best compression but more slow then \"Fast\" algorithm. Version \"Fast\" is not applicable for resizing images (standard method will be used). Default is \"Standard\".
65
- attr_accessor :image_compression_version
66
-
67
-
68
- # Attribute mapping from ruby-style variable name to JSON key.
69
- def self.attribute_map
70
- {
71
- :'allow_reuse_page_content' => :'AllowReusePageContent',
72
- :'compress_images' => :'CompressImages',
73
- :'image_quality' => :'ImageQuality',
74
- :'link_duplcate_streams' => :'LinkDuplcateStreams',
75
- :'remove_unused_objects' => :'RemoveUnusedObjects',
76
- :'remove_unused_streams' => :'RemoveUnusedStreams',
77
- :'unembed_fonts' => :'UnembedFonts',
78
- :'resize_images' => :'ResizeImages',
79
- :'max_resolution' => :'MaxResolution',
80
- :'subset_fonts' => :'SubsetFonts',
81
- :'remove_private_info' => :'RemovePrivateInfo',
82
- :'image_encoding' => :'ImageEncoding',
83
- :'image_compression_version' => :'ImageCompressionVersion'
84
- }
85
- end
86
-
87
- # Attribute type mapping.
88
- def self.swagger_types
89
- {
90
- :'allow_reuse_page_content' => :'BOOLEAN',
91
- :'compress_images' => :'BOOLEAN',
92
- :'image_quality' => :'Integer',
93
- :'link_duplcate_streams' => :'BOOLEAN',
94
- :'remove_unused_objects' => :'BOOLEAN',
95
- :'remove_unused_streams' => :'BOOLEAN',
96
- :'unembed_fonts' => :'BOOLEAN',
97
- :'resize_images' => :'BOOLEAN',
98
- :'max_resolution' => :'Integer',
99
- :'subset_fonts' => :'BOOLEAN',
100
- :'remove_private_info' => :'BOOLEAN',
101
- :'image_encoding' => :'ImageEncoding',
102
- :'image_compression_version' => :'ImageCompressionVersion'
103
- }
104
- end
105
-
106
- # Initializes the object
107
- # @param [Hash] attributes Model attributes in the form of hash
108
- def initialize(attributes = {})
109
- return unless attributes.is_a?(Hash)
110
-
111
- # convert string to symbol for hash key
112
- attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
113
-
114
- if attributes.has_key?(:'AllowReusePageContent')
115
- self.allow_reuse_page_content = attributes[:'AllowReusePageContent']
116
- end
117
-
118
- if attributes.has_key?(:'CompressImages')
119
- self.compress_images = attributes[:'CompressImages']
120
- end
121
-
122
- if attributes.has_key?(:'ImageQuality')
123
- self.image_quality = attributes[:'ImageQuality']
124
- end
125
-
126
- if attributes.has_key?(:'LinkDuplcateStreams')
127
- self.link_duplcate_streams = attributes[:'LinkDuplcateStreams']
128
- end
129
-
130
- if attributes.has_key?(:'RemoveUnusedObjects')
131
- self.remove_unused_objects = attributes[:'RemoveUnusedObjects']
132
- end
133
-
134
- if attributes.has_key?(:'RemoveUnusedStreams')
135
- self.remove_unused_streams = attributes[:'RemoveUnusedStreams']
136
- end
137
-
138
- if attributes.has_key?(:'UnembedFonts')
139
- self.unembed_fonts = attributes[:'UnembedFonts']
140
- end
141
-
142
- if attributes.has_key?(:'ResizeImages')
143
- self.resize_images = attributes[:'ResizeImages']
144
- end
145
-
146
- if attributes.has_key?(:'MaxResolution')
147
- self.max_resolution = attributes[:'MaxResolution']
148
- end
149
-
150
- if attributes.has_key?(:'SubsetFonts')
151
- self.subset_fonts = attributes[:'SubsetFonts']
152
- end
153
-
154
- if attributes.has_key?(:'RemovePrivateInfo')
155
- self.remove_private_info = attributes[:'RemovePrivateInfo']
156
- end
157
-
158
- if attributes.has_key?(:'ImageEncoding')
159
- self.image_encoding = attributes[:'ImageEncoding']
160
- end
161
-
162
- if attributes.has_key?(:'ImageCompressionVersion')
163
- self.image_compression_version = attributes[:'ImageCompressionVersion']
164
- end
165
-
166
- end
167
-
168
- # Show invalid properties with the reasons. Usually used together with valid?
169
- # @return Array for valid properies with the reasons
170
- def list_invalid_properties
171
- invalid_properties = Array.new
172
- return invalid_properties
173
- end
174
-
175
- # Check to see if the all the properties in the model are valid
176
- # @return true if the model is valid
177
- def valid?
178
- return true
179
- end
180
-
181
- # Checks equality by comparing each attribute.
182
- # @param [Object] Object to be compared
183
- def ==(o)
184
- return true if self.equal?(o)
185
- self.class == o.class &&
186
- allow_reuse_page_content == o.allow_reuse_page_content &&
187
- compress_images == o.compress_images &&
188
- image_quality == o.image_quality &&
189
- link_duplcate_streams == o.link_duplcate_streams &&
190
- remove_unused_objects == o.remove_unused_objects &&
191
- remove_unused_streams == o.remove_unused_streams &&
192
- unembed_fonts == o.unembed_fonts &&
193
- resize_images == o.resize_images &&
194
- max_resolution == o.max_resolution &&
195
- subset_fonts == o.subset_fonts &&
196
- remove_private_info == o.remove_private_info &&
197
- image_encoding == o.image_encoding &&
198
- image_compression_version == o.image_compression_version
199
- end
200
-
201
- # @see the `==` method
202
- # @param [Object] Object to be compared
203
- def eql?(o)
204
- self == o
205
- end
206
-
207
- # Calculates hash code according to all attributes.
208
- # @return [Fixnum] Hash code
209
- def hash
210
- [allow_reuse_page_content, compress_images, image_quality, link_duplcate_streams, remove_unused_objects, remove_unused_streams, unembed_fonts, resize_images, max_resolution, subset_fonts, remove_private_info, image_encoding, image_compression_version].hash
211
- end
212
-
213
- # Builds the object from hash
214
- # @param [Hash] attributes Model attributes in the form of hash
215
- # @return [Object] Returns the model itself
216
- def build_from_hash(attributes)
217
- return nil unless attributes.is_a?(Hash)
218
- self.class.swagger_types.each_pair do |key, type|
219
- if type =~ /\AArray<(.*)>/i
220
- # check to ensure the input is an array given that the the attribute
221
- # is documented as an array but the input is not
222
- if attributes[self.class.attribute_map[key]].is_a?(Array)
223
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
224
- end
225
- elsif !attributes[self.class.attribute_map[key]].nil?
226
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
227
- end # or else data not found in attributes(hash), not an issue as the data can be optional
228
- end
229
-
230
- self
231
- end
232
-
233
- # Deserializes the data based on type
234
- # @param string type Data type
235
- # @param string value Value to be deserialized
236
- # @return [Object] Deserialized data
237
- def _deserialize(type, value)
238
- case type.to_sym
239
- when :DateTime
240
- DateTime.parse(value)
241
- when :Date
242
- Date.parse(value)
243
- when :String
244
- value.to_s
245
- when :Integer
246
- value.to_i
247
- when :Float
248
- value.to_f
249
- when :BOOLEAN
250
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
251
- true
252
- else
253
- false
254
- end
255
- when :Object
256
- # generic object (usually a Hash), return directly
257
- value
258
- when /\AArray<(?<inner_type>.+)>\z/
259
- inner_type = Regexp.last_match[:inner_type]
260
- value.map { |v| _deserialize(inner_type, v) }
261
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
262
- k_type = Regexp.last_match[:k_type]
263
- v_type = Regexp.last_match[:v_type]
264
- {}.tap do |hash|
265
- value.each do |k, v|
266
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
267
- end
268
- end
269
- else # model
270
- temp_model = AsposePdfCloud.const_get(type).new
271
- temp_model.build_from_hash(value)
272
- end
273
- end
274
-
275
- # Returns the string representation of the object
276
- # @return [String] String presentation of the object
277
- def to_s
278
- to_hash.to_s
279
- end
280
-
281
- # to_body is an alias to to_hash (backward compatibility)
282
- # @return [Hash] Returns the object in the form of hash
283
- def to_body
284
- to_hash
285
- end
286
-
287
- # Returns the object in the form of hash
288
- # @return [Hash] Returns the object in the form of hash
289
- def to_hash
290
- hash = {}
291
- self.class.attribute_map.each_pair do |attr, param|
292
- value = self.send(attr)
293
- next if value.nil?
294
- hash[param] = _to_hash(value)
295
- end
296
- hash
297
- end
298
-
299
- # Outputs non-array value in the form of hash
300
- # For object, use to_hash. Otherwise, just return the value
301
- # @param [Object] value Any valid value
302
- # @return [Hash] Returns the value in the form of hash
303
- def _to_hash(value)
304
- if value.is_a?(Array)
305
- value.compact.map{ |v| _to_hash(v) }
306
- elsif value.is_a?(Hash)
307
- {}.tap do |hash|
308
- value.each { |k, v| hash[k] = _to_hash(v) }
309
- end
310
- elsif value.respond_to? :to_hash
311
- value.to_hash
312
- else
313
- value
314
- end
315
- end
316
-
317
- end
318
-
319
- end
1
+ =begin
2
+ --------------------------------------------------------------------------------------------------------------------
3
+ Copyright (c) 2021 Aspose.PDF Cloud
4
+ Permission is hereby granted, free of charge, to any person obtaining a copy
5
+ of this software and associated documentation files (the "Software"), to deal
6
+ in the Software without restriction, including without limitation the rights
7
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
+ copies of the Software, and to permit persons to whom the Software is
9
+ furnished to do so, subject to the following conditions:
10
+ The above copyright notice and this permission notice shall be included in all
11
+ copies or substantial portions of the Software.
12
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
14
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
15
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
16
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
17
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
+ SOFTWARE.
19
+ --------------------------------------------------------------------------------------------------------------------
20
+ =end
21
+
22
+ require 'date'
23
+ require 'time'
24
+
25
+ module AsposePdfCloud
26
+ # Represents Pdf optimize options.
27
+ class OptimizeOptions
28
+ # If true page contents will be reused when document is optimized for equal pages.
29
+ attr_accessor :allow_reuse_page_content
30
+
31
+ # If this flag is set to true images will be compressed in the document. Compression level is specified with ImageQuality property.
32
+ attr_accessor :compress_images
33
+
34
+ # Specifies level of image compression when CompressImages flag is used.
35
+ attr_accessor :image_quality
36
+
37
+ # If this flag is set to true, Resource streams will be analyzed. If duplicate streams are found (i.e. if stream contents is equal), then thees streams will be stored as one object. This allows to decrease document size in some cases (for example, when same document was concatenated multiple times).
38
+ attr_accessor :link_duplcate_streams
39
+
40
+ # If this flag is set to true, all document objects will be checked and unused objects (i.e. objects which does not have any reference) are removed from document.
41
+ attr_accessor :remove_unused_objects
42
+
43
+ # If this flag set to true, every resource is checked on it's usage. If resource is never used, then resources is removed. This may decrease document size for example when pages were extracted from document.
44
+ attr_accessor :remove_unused_streams
45
+
46
+ # Make fonts not embedded if set to true.
47
+ attr_accessor :unembed_fonts
48
+
49
+ # If this flag set to true and CompressImages is true images will be resized if image resolution is greater then specified MaxResolution parameter.
50
+ attr_accessor :resize_images
51
+
52
+ # Specifies maximum resolution of images. If image has higher resolution it will be scaled.
53
+ attr_accessor :max_resolution
54
+
55
+ # Fonts will be converted into subsets if set to true.
56
+ attr_accessor :subset_fonts
57
+
58
+ # Remove private information (page piece info).
59
+ attr_accessor :remove_private_info
60
+
61
+ # Image encode which will be used.
62
+ attr_accessor :image_encoding
63
+
64
+ # Version of compression algorithm. Possible values are: \"Standard\" - standard compression, \"Fast\" - fast (improved compression which is faster then standard but may be applicable not for all images), \"Mixed\" - mixed (standard compression is applied to images which can not be compressed by faster algorithm, this may give best compression but more slow then \"Fast\" algorithm. Version \"Fast\" is not applicable for resizing images (standard method will be used). Default is \"Standard\".
65
+ attr_accessor :image_compression_version
66
+
67
+
68
+ # Attribute mapping from ruby-style variable name to JSON key.
69
+ def self.attribute_map
70
+ {
71
+ :'allow_reuse_page_content' => :'AllowReusePageContent',
72
+ :'compress_images' => :'CompressImages',
73
+ :'image_quality' => :'ImageQuality',
74
+ :'link_duplcate_streams' => :'LinkDuplcateStreams',
75
+ :'remove_unused_objects' => :'RemoveUnusedObjects',
76
+ :'remove_unused_streams' => :'RemoveUnusedStreams',
77
+ :'unembed_fonts' => :'UnembedFonts',
78
+ :'resize_images' => :'ResizeImages',
79
+ :'max_resolution' => :'MaxResolution',
80
+ :'subset_fonts' => :'SubsetFonts',
81
+ :'remove_private_info' => :'RemovePrivateInfo',
82
+ :'image_encoding' => :'ImageEncoding',
83
+ :'image_compression_version' => :'ImageCompressionVersion'
84
+ }
85
+ end
86
+
87
+ # Attribute type mapping.
88
+ def self.swagger_types
89
+ {
90
+ :'allow_reuse_page_content' => :'BOOLEAN',
91
+ :'compress_images' => :'BOOLEAN',
92
+ :'image_quality' => :'Integer',
93
+ :'link_duplcate_streams' => :'BOOLEAN',
94
+ :'remove_unused_objects' => :'BOOLEAN',
95
+ :'remove_unused_streams' => :'BOOLEAN',
96
+ :'unembed_fonts' => :'BOOLEAN',
97
+ :'resize_images' => :'BOOLEAN',
98
+ :'max_resolution' => :'Integer',
99
+ :'subset_fonts' => :'BOOLEAN',
100
+ :'remove_private_info' => :'BOOLEAN',
101
+ :'image_encoding' => :'ImageEncoding',
102
+ :'image_compression_version' => :'ImageCompressionVersion'
103
+ }
104
+ end
105
+
106
+ # Initializes the object
107
+ # @param [Hash] attributes Model attributes in the form of hash
108
+ def initialize(attributes = {})
109
+ return unless attributes.is_a?(Hash)
110
+
111
+ # convert string to symbol for hash key
112
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
113
+
114
+ if attributes.has_key?(:'AllowReusePageContent')
115
+ self.allow_reuse_page_content = attributes[:'AllowReusePageContent']
116
+ end
117
+
118
+ if attributes.has_key?(:'CompressImages')
119
+ self.compress_images = attributes[:'CompressImages']
120
+ end
121
+
122
+ if attributes.has_key?(:'ImageQuality')
123
+ self.image_quality = attributes[:'ImageQuality']
124
+ end
125
+
126
+ if attributes.has_key?(:'LinkDuplcateStreams')
127
+ self.link_duplcate_streams = attributes[:'LinkDuplcateStreams']
128
+ end
129
+
130
+ if attributes.has_key?(:'RemoveUnusedObjects')
131
+ self.remove_unused_objects = attributes[:'RemoveUnusedObjects']
132
+ end
133
+
134
+ if attributes.has_key?(:'RemoveUnusedStreams')
135
+ self.remove_unused_streams = attributes[:'RemoveUnusedStreams']
136
+ end
137
+
138
+ if attributes.has_key?(:'UnembedFonts')
139
+ self.unembed_fonts = attributes[:'UnembedFonts']
140
+ end
141
+
142
+ if attributes.has_key?(:'ResizeImages')
143
+ self.resize_images = attributes[:'ResizeImages']
144
+ end
145
+
146
+ if attributes.has_key?(:'MaxResolution')
147
+ self.max_resolution = attributes[:'MaxResolution']
148
+ end
149
+
150
+ if attributes.has_key?(:'SubsetFonts')
151
+ self.subset_fonts = attributes[:'SubsetFonts']
152
+ end
153
+
154
+ if attributes.has_key?(:'RemovePrivateInfo')
155
+ self.remove_private_info = attributes[:'RemovePrivateInfo']
156
+ end
157
+
158
+ if attributes.has_key?(:'ImageEncoding')
159
+ self.image_encoding = attributes[:'ImageEncoding']
160
+ end
161
+
162
+ if attributes.has_key?(:'ImageCompressionVersion')
163
+ self.image_compression_version = attributes[:'ImageCompressionVersion']
164
+ end
165
+
166
+ end
167
+
168
+ # Show invalid properties with the reasons. Usually used together with valid?
169
+ # @return Array for valid properies with the reasons
170
+ def list_invalid_properties
171
+ invalid_properties = Array.new
172
+ return invalid_properties
173
+ end
174
+
175
+ # Check to see if the all the properties in the model are valid
176
+ # @return true if the model is valid
177
+ def valid?
178
+ return true
179
+ end
180
+
181
+ # Checks equality by comparing each attribute.
182
+ # @param [Object] Object to be compared
183
+ def ==(o)
184
+ return true if self.equal?(o)
185
+ self.class == o.class &&
186
+ allow_reuse_page_content == o.allow_reuse_page_content &&
187
+ compress_images == o.compress_images &&
188
+ image_quality == o.image_quality &&
189
+ link_duplcate_streams == o.link_duplcate_streams &&
190
+ remove_unused_objects == o.remove_unused_objects &&
191
+ remove_unused_streams == o.remove_unused_streams &&
192
+ unembed_fonts == o.unembed_fonts &&
193
+ resize_images == o.resize_images &&
194
+ max_resolution == o.max_resolution &&
195
+ subset_fonts == o.subset_fonts &&
196
+ remove_private_info == o.remove_private_info &&
197
+ image_encoding == o.image_encoding &&
198
+ image_compression_version == o.image_compression_version
199
+ end
200
+
201
+ # @see the `==` method
202
+ # @param [Object] Object to be compared
203
+ def eql?(o)
204
+ self == o
205
+ end
206
+
207
+ # Calculates hash code according to all attributes.
208
+ # @return [Fixnum] Hash code
209
+ def hash
210
+ [allow_reuse_page_content, compress_images, image_quality, link_duplcate_streams, remove_unused_objects, remove_unused_streams, unembed_fonts, resize_images, max_resolution, subset_fonts, remove_private_info, image_encoding, image_compression_version].hash
211
+ end
212
+
213
+ # Builds the object from hash
214
+ # @param [Hash] attributes Model attributes in the form of hash
215
+ # @return [Object] Returns the model itself
216
+ def build_from_hash(attributes)
217
+ return nil unless attributes.is_a?(Hash)
218
+ self.class.swagger_types.each_pair do |key, type|
219
+ if type =~ /\AArray<(.*)>/i
220
+ # check to ensure the input is an array given that the the attribute
221
+ # is documented as an array but the input is not
222
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
223
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
224
+ end
225
+ elsif !attributes[self.class.attribute_map[key]].nil?
226
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
227
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
228
+ end
229
+
230
+ self
231
+ end
232
+
233
+ # Deserializes the data based on type
234
+ # @param string type Data type
235
+ # @param string value Value to be deserialized
236
+ # @return [Object] Deserialized data
237
+ def _deserialize(type, value)
238
+ case type.to_sym
239
+ when :DateTime
240
+ DateTime.parse(value)
241
+ when :Date
242
+ Date.parse(value)
243
+ when :String
244
+ value.to_s
245
+ when :Integer
246
+ value.to_i
247
+ when :Float
248
+ value.to_f
249
+ when :BOOLEAN
250
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
251
+ true
252
+ else
253
+ false
254
+ end
255
+ when :Object
256
+ # generic object (usually a Hash), return directly
257
+ value
258
+ when /\AArray<(?<inner_type>.+)>\z/
259
+ inner_type = Regexp.last_match[:inner_type]
260
+ value.map { |v| _deserialize(inner_type, v) }
261
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
262
+ k_type = Regexp.last_match[:k_type]
263
+ v_type = Regexp.last_match[:v_type]
264
+ {}.tap do |hash|
265
+ value.each do |k, v|
266
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
267
+ end
268
+ end
269
+ else # model
270
+ temp_model = AsposePdfCloud.const_get(type).new
271
+ temp_model.build_from_hash(value)
272
+ end
273
+ end
274
+
275
+ # Returns the string representation of the object
276
+ # @return [String] String presentation of the object
277
+ def to_s
278
+ to_hash.to_s
279
+ end
280
+
281
+ # to_body is an alias to to_hash (backward compatibility)
282
+ # @return [Hash] Returns the object in the form of hash
283
+ def to_body
284
+ to_hash
285
+ end
286
+
287
+ # Returns the object in the form of hash
288
+ # @return [Hash] Returns the object in the form of hash
289
+ def to_hash
290
+ hash = {}
291
+ self.class.attribute_map.each_pair do |attr, param|
292
+ value = self.send(attr)
293
+ next if value.nil?
294
+ hash[param] = _to_hash(value)
295
+ end
296
+ hash
297
+ end
298
+
299
+ # Outputs non-array value in the form of hash
300
+ # For object, use to_hash. Otherwise, just return the value
301
+ # @param [Object] value Any valid value
302
+ # @return [Hash] Returns the value in the form of hash
303
+ def _to_hash(value)
304
+ if value.is_a?(Array)
305
+ value.compact.map{ |v| _to_hash(v) }
306
+ elsif value.is_a?(Hash)
307
+ {}.tap do |hash|
308
+ value.each { |k, v| hash[k] = _to_hash(v) }
309
+ end
310
+ elsif value.respond_to? :to_hash
311
+ value.to_hash
312
+ else
313
+ value
314
+ end
315
+ end
316
+
317
+ end
318
+
319
+ end