aspose_pdf_cloud 20.12.0 → 21.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (409) 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/README.md +71 -51
  114. data/aspose_pdf_cloud.gemspec +53 -53
  115. data/docs/PdfApi.md +6 -102
  116. data/docs/TextReplace.md +1 -1
  117. data/lib/aspose_pdf_cloud/api/pdf_api.rb +29142 -29427
  118. data/lib/aspose_pdf_cloud/api_client.rb +1 -1
  119. data/lib/aspose_pdf_cloud/api_error.rb +47 -47
  120. data/lib/aspose_pdf_cloud/configuration.rb +172 -172
  121. data/lib/aspose_pdf_cloud/models/annotation.rb +318 -318
  122. data/lib/aspose_pdf_cloud/models/annotation_flags.rb +53 -53
  123. data/lib/aspose_pdf_cloud/models/annotation_info.rb +333 -333
  124. data/lib/aspose_pdf_cloud/models/annotation_state.rb +50 -50
  125. data/lib/aspose_pdf_cloud/models/annotation_type.rb +70 -70
  126. data/lib/aspose_pdf_cloud/models/annotations_info.rb +213 -213
  127. data/lib/aspose_pdf_cloud/models/annotations_info_response.rb +224 -224
  128. data/lib/aspose_pdf_cloud/models/antialiasing_processing_type.rb +44 -44
  129. data/lib/aspose_pdf_cloud/models/aspose_response.rb +214 -214
  130. data/lib/aspose_pdf_cloud/models/attachment.rb +276 -276
  131. data/lib/aspose_pdf_cloud/models/attachment_response.rb +224 -224
  132. data/lib/aspose_pdf_cloud/models/attachments.rb +213 -213
  133. data/lib/aspose_pdf_cloud/models/attachments_response.rb +224 -224
  134. data/lib/aspose_pdf_cloud/models/bookmark.rb +361 -361
  135. data/lib/aspose_pdf_cloud/models/bookmark_response.rb +224 -224
  136. data/lib/aspose_pdf_cloud/models/bookmarks.rb +213 -213
  137. data/lib/aspose_pdf_cloud/models/bookmarks_response.rb +224 -224
  138. data/lib/aspose_pdf_cloud/models/border.rb +249 -249
  139. data/lib/aspose_pdf_cloud/models/border_corner_style.rb +44 -44
  140. data/lib/aspose_pdf_cloud/models/border_effect.rb +44 -44
  141. data/lib/aspose_pdf_cloud/models/border_info.rb +239 -239
  142. data/lib/aspose_pdf_cloud/models/border_style.rb +47 -47
  143. data/lib/aspose_pdf_cloud/models/box_style.rb +48 -48
  144. data/lib/aspose_pdf_cloud/models/cap_style.rb +44 -44
  145. data/lib/aspose_pdf_cloud/models/caption_position.rb +44 -44
  146. data/lib/aspose_pdf_cloud/models/caret_annotation.rb +378 -378
  147. data/lib/aspose_pdf_cloud/models/caret_annotation_response.rb +224 -224
  148. data/lib/aspose_pdf_cloud/models/caret_annotations.rb +213 -213
  149. data/lib/aspose_pdf_cloud/models/caret_annotations_response.rb +224 -224
  150. data/lib/aspose_pdf_cloud/models/caret_symbol.rb +44 -44
  151. data/lib/aspose_pdf_cloud/models/cell.rb +353 -353
  152. data/lib/aspose_pdf_cloud/models/cell_recognized.rb +209 -209
  153. data/lib/aspose_pdf_cloud/models/check_box_field.rb +455 -455
  154. data/lib/aspose_pdf_cloud/models/check_box_field_response.rb +224 -224
  155. data/lib/aspose_pdf_cloud/models/check_box_fields.rb +213 -213
  156. data/lib/aspose_pdf_cloud/models/check_box_fields_response.rb +224 -224
  157. data/lib/aspose_pdf_cloud/models/choice_field.rb +418 -418
  158. data/lib/aspose_pdf_cloud/models/circle_annotation.rb +378 -378
  159. data/lib/aspose_pdf_cloud/models/circle_annotation_response.rb +224 -224
  160. data/lib/aspose_pdf_cloud/models/circle_annotations.rb +213 -213
  161. data/lib/aspose_pdf_cloud/models/circle_annotations_response.rb +224 -224
  162. data/lib/aspose_pdf_cloud/models/color.rb +249 -249
  163. data/lib/aspose_pdf_cloud/models/color_depth.rb +46 -46
  164. data/lib/aspose_pdf_cloud/models/column_adjustment.rb +45 -45
  165. data/lib/aspose_pdf_cloud/models/combo_box_field.rb +460 -460
  166. data/lib/aspose_pdf_cloud/models/combo_box_field_response.rb +224 -224
  167. data/lib/aspose_pdf_cloud/models/combo_box_fields.rb +213 -213
  168. data/lib/aspose_pdf_cloud/models/combo_box_fields_response.rb +224 -224
  169. data/lib/aspose_pdf_cloud/models/common_figure_annotation.rb +378 -378
  170. data/lib/aspose_pdf_cloud/models/compression_type.rb +47 -47
  171. data/lib/aspose_pdf_cloud/models/crypto_algorithm.rb +46 -46
  172. data/lib/aspose_pdf_cloud/models/dash.rb +219 -219
  173. data/lib/aspose_pdf_cloud/models/default_page_config.rb +209 -209
  174. data/lib/aspose_pdf_cloud/models/direction.rb +44 -44
  175. data/lib/aspose_pdf_cloud/models/disc_usage.rb +219 -219
  176. data/lib/aspose_pdf_cloud/models/display_properties.rb +291 -291
  177. data/lib/aspose_pdf_cloud/models/display_properties_response.rb +224 -224
  178. data/lib/aspose_pdf_cloud/models/doc_format.rb +44 -44
  179. data/lib/aspose_pdf_cloud/models/doc_mdp_access_permission_type.rb +45 -45
  180. data/lib/aspose_pdf_cloud/models/doc_recognition_mode.rb +44 -44
  181. data/lib/aspose_pdf_cloud/models/document.rb +231 -231
  182. data/lib/aspose_pdf_cloud/models/document_config.rb +234 -234
  183. data/lib/aspose_pdf_cloud/models/document_page_response.rb +224 -224
  184. data/lib/aspose_pdf_cloud/models/document_pages_response.rb +224 -224
  185. data/lib/aspose_pdf_cloud/models/document_privilege.rb +299 -299
  186. data/lib/aspose_pdf_cloud/models/document_properties.rb +213 -213
  187. data/lib/aspose_pdf_cloud/models/document_properties_response.rb +224 -224
  188. data/lib/aspose_pdf_cloud/models/document_property.rb +236 -236
  189. data/lib/aspose_pdf_cloud/models/document_property_response.rb +224 -224
  190. data/lib/aspose_pdf_cloud/models/document_response.rb +236 -236
  191. data/lib/aspose_pdf_cloud/models/epub_recognition_mode.rb +45 -45
  192. data/lib/aspose_pdf_cloud/models/error.rb +229 -229
  193. data/lib/aspose_pdf_cloud/models/error_details.rb +214 -214
  194. data/lib/aspose_pdf_cloud/models/field.rb +260 -260
  195. data/lib/aspose_pdf_cloud/models/field_response.rb +224 -224
  196. data/lib/aspose_pdf_cloud/models/field_type.rb +46 -46
  197. data/lib/aspose_pdf_cloud/models/fields.rb +218 -218
  198. data/lib/aspose_pdf_cloud/models/fields_response.rb +224 -224
  199. data/lib/aspose_pdf_cloud/models/file_attachment_annotation.rb +408 -408
  200. data/lib/aspose_pdf_cloud/models/file_attachment_annotation_response.rb +224 -224
  201. data/lib/aspose_pdf_cloud/models/file_attachment_annotations.rb +213 -213
  202. data/lib/aspose_pdf_cloud/models/file_attachment_annotations_response.rb +224 -224
  203. data/lib/aspose_pdf_cloud/models/file_icon.rb +46 -46
  204. data/lib/aspose_pdf_cloud/models/file_version.rb +274 -274
  205. data/lib/aspose_pdf_cloud/models/file_versions.rb +201 -201
  206. data/lib/aspose_pdf_cloud/models/files_list.rb +201 -201
  207. data/lib/aspose_pdf_cloud/models/files_upload_result.rb +213 -213
  208. data/lib/aspose_pdf_cloud/models/font_encoding_rules.rb +44 -44
  209. data/lib/aspose_pdf_cloud/models/font_saving_modes.rb +46 -46
  210. data/lib/aspose_pdf_cloud/models/font_styles.rb +46 -46
  211. data/lib/aspose_pdf_cloud/models/form_field.rb +398 -398
  212. data/lib/aspose_pdf_cloud/models/free_text_annotation.rb +403 -403
  213. data/lib/aspose_pdf_cloud/models/free_text_annotation_response.rb +224 -224
  214. data/lib/aspose_pdf_cloud/models/free_text_annotations.rb +213 -213
  215. data/lib/aspose_pdf_cloud/models/free_text_annotations_response.rb +224 -224
  216. data/lib/aspose_pdf_cloud/models/free_text_intent.rb +45 -45
  217. data/lib/aspose_pdf_cloud/models/graph_info.rb +301 -301
  218. data/lib/aspose_pdf_cloud/models/highlight_annotation.rb +370 -370
  219. data/lib/aspose_pdf_cloud/models/highlight_annotation_response.rb +224 -224
  220. data/lib/aspose_pdf_cloud/models/highlight_annotations.rb +213 -213
  221. data/lib/aspose_pdf_cloud/models/highlight_annotations_response.rb +224 -224
  222. data/lib/aspose_pdf_cloud/models/horizontal_alignment.rb +46 -46
  223. data/lib/aspose_pdf_cloud/models/html_document_type.rb +44 -44
  224. data/lib/aspose_pdf_cloud/models/html_markup_generation_modes.rb +44 -44
  225. data/lib/aspose_pdf_cloud/models/image.rb +266 -266
  226. data/lib/aspose_pdf_cloud/models/image_compression_version.rb +45 -45
  227. data/lib/aspose_pdf_cloud/models/image_encoding.rb +46 -46
  228. data/lib/aspose_pdf_cloud/models/image_footer.rb +341 -341
  229. data/lib/aspose_pdf_cloud/models/image_fragment.rb +283 -283
  230. data/lib/aspose_pdf_cloud/models/image_header.rb +341 -341
  231. data/lib/aspose_pdf_cloud/models/image_response.rb +224 -224
  232. data/lib/aspose_pdf_cloud/models/image_src_type.rb +44 -44
  233. data/lib/aspose_pdf_cloud/models/image_stamp.rb +361 -361
  234. data/lib/aspose_pdf_cloud/models/image_template.rb +301 -301
  235. data/lib/aspose_pdf_cloud/models/image_templates_request.rb +231 -231
  236. data/lib/aspose_pdf_cloud/models/images.rb +213 -213
  237. data/lib/aspose_pdf_cloud/models/images_response.rb +224 -224
  238. data/lib/aspose_pdf_cloud/models/ink_annotation.rb +380 -380
  239. data/lib/aspose_pdf_cloud/models/ink_annotation_response.rb +224 -224
  240. data/lib/aspose_pdf_cloud/models/ink_annotations.rb +213 -213
  241. data/lib/aspose_pdf_cloud/models/ink_annotations_response.rb +224 -224
  242. data/lib/aspose_pdf_cloud/models/justification.rb +45 -45
  243. data/lib/aspose_pdf_cloud/models/letters_positioning_methods.rb +44 -44
  244. data/lib/aspose_pdf_cloud/models/line_annotation.rb +488 -488
  245. data/lib/aspose_pdf_cloud/models/line_annotation_response.rb +224 -224
  246. data/lib/aspose_pdf_cloud/models/line_annotations.rb +213 -213
  247. data/lib/aspose_pdf_cloud/models/line_annotations_response.rb +224 -224
  248. data/lib/aspose_pdf_cloud/models/line_ending.rb +52 -52
  249. data/lib/aspose_pdf_cloud/models/line_intent.rb +45 -45
  250. data/lib/aspose_pdf_cloud/models/line_spacing.rb +44 -44
  251. data/lib/aspose_pdf_cloud/models/link.rb +229 -229
  252. data/lib/aspose_pdf_cloud/models/link_action_type.rb +48 -48
  253. data/lib/aspose_pdf_cloud/models/link_annotation.rb +294 -294
  254. data/lib/aspose_pdf_cloud/models/link_annotation_response.rb +224 -224
  255. data/lib/aspose_pdf_cloud/models/link_annotations.rb +213 -213
  256. data/lib/aspose_pdf_cloud/models/link_annotations_response.rb +224 -224
  257. data/lib/aspose_pdf_cloud/models/link_element.rb +201 -201
  258. data/lib/aspose_pdf_cloud/models/link_highlighting_mode.rb +47 -47
  259. data/lib/aspose_pdf_cloud/models/list_box_field.rb +462 -462
  260. data/lib/aspose_pdf_cloud/models/list_box_field_response.rb +224 -224
  261. data/lib/aspose_pdf_cloud/models/list_box_fields.rb +213 -213
  262. data/lib/aspose_pdf_cloud/models/list_box_fields_response.rb +224 -224
  263. data/lib/aspose_pdf_cloud/models/margin_info.rb +229 -229
  264. data/lib/aspose_pdf_cloud/models/markup_annotation.rb +358 -358
  265. data/lib/aspose_pdf_cloud/models/merge_documents.rb +206 -206
  266. data/lib/aspose_pdf_cloud/models/movie_annotation.rb +348 -348
  267. data/lib/aspose_pdf_cloud/models/movie_annotation_response.rb +224 -224
  268. data/lib/aspose_pdf_cloud/models/movie_annotations.rb +213 -213
  269. data/lib/aspose_pdf_cloud/models/movie_annotations_response.rb +224 -224
  270. data/lib/aspose_pdf_cloud/models/object_exist.rb +219 -219
  271. data/lib/aspose_pdf_cloud/models/optimize_options.rb +319 -319
  272. data/lib/aspose_pdf_cloud/models/option.rb +229 -229
  273. data/lib/aspose_pdf_cloud/models/output_format.rb +44 -44
  274. data/lib/aspose_pdf_cloud/models/page.rb +236 -236
  275. data/lib/aspose_pdf_cloud/models/page_layout.rb +49 -49
  276. data/lib/aspose_pdf_cloud/models/page_mode.rb +48 -48
  277. data/lib/aspose_pdf_cloud/models/page_number_stamp.rb +351 -351
  278. data/lib/aspose_pdf_cloud/models/page_word_count.rb +219 -219
  279. data/lib/aspose_pdf_cloud/models/pages.rb +213 -213
  280. data/lib/aspose_pdf_cloud/models/paragraph.rb +316 -316
  281. data/lib/aspose_pdf_cloud/models/parts_embedding_modes.rb +45 -45
  282. data/lib/aspose_pdf_cloud/models/pdf_a_type.rb +45 -45
  283. data/lib/aspose_pdf_cloud/models/pdf_page_stamp.rb +351 -351
  284. data/lib/aspose_pdf_cloud/models/permissions_flags.rb +50 -50
  285. data/lib/aspose_pdf_cloud/models/point.rb +219 -219
  286. data/lib/aspose_pdf_cloud/models/poly_annotation.rb +415 -415
  287. data/lib/aspose_pdf_cloud/models/poly_intent.rb +46 -46
  288. data/lib/aspose_pdf_cloud/models/poly_line_annotation.rb +415 -415
  289. data/lib/aspose_pdf_cloud/models/poly_line_annotation_response.rb +224 -224
  290. data/lib/aspose_pdf_cloud/models/poly_line_annotations.rb +213 -213
  291. data/lib/aspose_pdf_cloud/models/poly_line_annotations_response.rb +224 -224
  292. data/lib/aspose_pdf_cloud/models/polygon_annotation.rb +415 -415
  293. data/lib/aspose_pdf_cloud/models/polygon_annotation_response.rb +224 -224
  294. data/lib/aspose_pdf_cloud/models/polygon_annotations.rb +213 -213
  295. data/lib/aspose_pdf_cloud/models/polygon_annotations_response.rb +224 -224
  296. data/lib/aspose_pdf_cloud/models/popup_annotation.rb +328 -328
  297. data/lib/aspose_pdf_cloud/models/popup_annotation_response.rb +224 -224
  298. data/lib/aspose_pdf_cloud/models/popup_annotation_with_parent.rb +338 -338
  299. data/lib/aspose_pdf_cloud/models/popup_annotations.rb +213 -213
  300. data/lib/aspose_pdf_cloud/models/popup_annotations_response.rb +224 -224
  301. data/lib/aspose_pdf_cloud/models/position.rb +219 -219
  302. data/lib/aspose_pdf_cloud/models/radio_button_field.rb +452 -452
  303. data/lib/aspose_pdf_cloud/models/radio_button_field_response.rb +224 -224
  304. data/lib/aspose_pdf_cloud/models/radio_button_fields.rb +213 -213
  305. data/lib/aspose_pdf_cloud/models/radio_button_fields_response.rb +224 -224
  306. data/lib/aspose_pdf_cloud/models/radio_button_option_field.rb +418 -418
  307. data/lib/aspose_pdf_cloud/models/raster_images_saving_modes.rb +45 -45
  308. data/lib/aspose_pdf_cloud/models/rectangle.rb +249 -249
  309. data/lib/aspose_pdf_cloud/models/redaction_annotation.rb +380 -380
  310. data/lib/aspose_pdf_cloud/models/redaction_annotation_response.rb +224 -224
  311. data/lib/aspose_pdf_cloud/models/redaction_annotations.rb +213 -213
  312. data/lib/aspose_pdf_cloud/models/redaction_annotations_response.rb +224 -224
  313. data/lib/aspose_pdf_cloud/models/rotation.rb +46 -46
  314. data/lib/aspose_pdf_cloud/models/row.rb +306 -306
  315. data/lib/aspose_pdf_cloud/models/row_recognized.rb +211 -211
  316. data/lib/aspose_pdf_cloud/models/screen_annotation.rb +338 -338
  317. data/lib/aspose_pdf_cloud/models/screen_annotation_response.rb +224 -224
  318. data/lib/aspose_pdf_cloud/models/screen_annotations.rb +213 -213
  319. data/lib/aspose_pdf_cloud/models/screen_annotations_response.rb +224 -224
  320. data/lib/aspose_pdf_cloud/models/segment.rb +233 -233
  321. data/lib/aspose_pdf_cloud/models/shape_type.rb +45 -45
  322. data/lib/aspose_pdf_cloud/models/signature.rb +388 -388
  323. data/lib/aspose_pdf_cloud/models/signature_custom_appearance.rb +329 -329
  324. data/lib/aspose_pdf_cloud/models/signature_field.rb +408 -408
  325. data/lib/aspose_pdf_cloud/models/signature_field_response.rb +224 -224
  326. data/lib/aspose_pdf_cloud/models/signature_fields.rb +213 -213
  327. data/lib/aspose_pdf_cloud/models/signature_fields_response.rb +224 -224
  328. data/lib/aspose_pdf_cloud/models/signature_type.rb +45 -45
  329. data/lib/aspose_pdf_cloud/models/signature_verify_response.rb +229 -229
  330. data/lib/aspose_pdf_cloud/models/sound_annotation.rb +442 -442
  331. data/lib/aspose_pdf_cloud/models/sound_annotation_response.rb +224 -224
  332. data/lib/aspose_pdf_cloud/models/sound_annotations.rb +213 -213
  333. data/lib/aspose_pdf_cloud/models/sound_annotations_response.rb +224 -224
  334. data/lib/aspose_pdf_cloud/models/sound_encoding.rb +46 -46
  335. data/lib/aspose_pdf_cloud/models/sound_icon.rb +44 -44
  336. data/lib/aspose_pdf_cloud/models/split_result.rb +201 -201
  337. data/lib/aspose_pdf_cloud/models/split_result_document.rb +244 -244
  338. data/lib/aspose_pdf_cloud/models/split_result_response.rb +224 -224
  339. data/lib/aspose_pdf_cloud/models/square_annotation.rb +378 -378
  340. data/lib/aspose_pdf_cloud/models/square_annotation_response.rb +224 -224
  341. data/lib/aspose_pdf_cloud/models/square_annotations.rb +213 -213
  342. data/lib/aspose_pdf_cloud/models/square_annotations_response.rb +224 -224
  343. data/lib/aspose_pdf_cloud/models/squiggly_annotation.rb +370 -370
  344. data/lib/aspose_pdf_cloud/models/squiggly_annotation_response.rb +224 -224
  345. data/lib/aspose_pdf_cloud/models/squiggly_annotations.rb +213 -213
  346. data/lib/aspose_pdf_cloud/models/squiggly_annotations_response.rb +224 -224
  347. data/lib/aspose_pdf_cloud/models/stamp.rb +414 -414
  348. data/lib/aspose_pdf_cloud/models/stamp_annotation.rb +388 -388
  349. data/lib/aspose_pdf_cloud/models/stamp_annotation_response.rb +224 -224
  350. data/lib/aspose_pdf_cloud/models/stamp_annotations.rb +213 -213
  351. data/lib/aspose_pdf_cloud/models/stamp_annotations_response.rb +224 -224
  352. data/lib/aspose_pdf_cloud/models/stamp_base.rb +281 -281
  353. data/lib/aspose_pdf_cloud/models/stamp_icon.rb +56 -56
  354. data/lib/aspose_pdf_cloud/models/stamp_info.rb +276 -276
  355. data/lib/aspose_pdf_cloud/models/stamp_type.rb +46 -46
  356. data/lib/aspose_pdf_cloud/models/stamps_info.rb +213 -213
  357. data/lib/aspose_pdf_cloud/models/stamps_info_response.rb +224 -224
  358. data/lib/aspose_pdf_cloud/models/storage_exist.rb +204 -204
  359. data/lib/aspose_pdf_cloud/models/storage_file.rb +249 -249
  360. data/lib/aspose_pdf_cloud/models/strike_out_annotation.rb +370 -370
  361. data/lib/aspose_pdf_cloud/models/strike_out_annotation_response.rb +224 -224
  362. data/lib/aspose_pdf_cloud/models/strike_out_annotations.rb +213 -213
  363. data/lib/aspose_pdf_cloud/models/strike_out_annotations_response.rb +224 -224
  364. data/lib/aspose_pdf_cloud/models/table.rb +438 -438
  365. data/lib/aspose_pdf_cloud/models/table_broken.rb +45 -45
  366. data/lib/aspose_pdf_cloud/models/table_recognized.rb +243 -243
  367. data/lib/aspose_pdf_cloud/models/table_recognized_response.rb +224 -224
  368. data/lib/aspose_pdf_cloud/models/tables_recognized.rb +213 -213
  369. data/lib/aspose_pdf_cloud/models/tables_recognized_response.rb +224 -224
  370. data/lib/aspose_pdf_cloud/models/text_annotation.rb +388 -388
  371. data/lib/aspose_pdf_cloud/models/text_annotation_response.rb +224 -224
  372. data/lib/aspose_pdf_cloud/models/text_annotations.rb +213 -213
  373. data/lib/aspose_pdf_cloud/models/text_annotations_response.rb +224 -224
  374. data/lib/aspose_pdf_cloud/models/text_box_field.rb +458 -458
  375. data/lib/aspose_pdf_cloud/models/text_box_field_response.rb +224 -224
  376. data/lib/aspose_pdf_cloud/models/text_box_fields.rb +213 -213
  377. data/lib/aspose_pdf_cloud/models/text_box_fields_response.rb +224 -224
  378. data/lib/aspose_pdf_cloud/models/text_footer.rb +341 -341
  379. data/lib/aspose_pdf_cloud/models/text_header.rb +341 -341
  380. data/lib/aspose_pdf_cloud/models/text_horizontal_alignment.rb +48 -48
  381. data/lib/aspose_pdf_cloud/models/text_icon.rb +53 -53
  382. data/lib/aspose_pdf_cloud/models/text_line.rb +216 -216
  383. data/lib/aspose_pdf_cloud/models/text_rect.rb +269 -269
  384. data/lib/aspose_pdf_cloud/models/text_rects.rb +201 -201
  385. data/lib/aspose_pdf_cloud/models/text_rects_response.rb +224 -224
  386. data/lib/aspose_pdf_cloud/models/text_replace.rb +268 -292
  387. data/lib/aspose_pdf_cloud/models/text_replace_list_request.rb +236 -236
  388. data/lib/aspose_pdf_cloud/models/text_replace_response.rb +229 -229
  389. data/lib/aspose_pdf_cloud/models/text_stamp.rb +361 -361
  390. data/lib/aspose_pdf_cloud/models/text_state.rb +259 -259
  391. data/lib/aspose_pdf_cloud/models/text_style.rb +244 -244
  392. data/lib/aspose_pdf_cloud/models/timestamp_settings.rb +209 -209
  393. data/lib/aspose_pdf_cloud/models/underline_annotation.rb +370 -370
  394. data/lib/aspose_pdf_cloud/models/underline_annotation_response.rb +224 -224
  395. data/lib/aspose_pdf_cloud/models/underline_annotations.rb +213 -213
  396. data/lib/aspose_pdf_cloud/models/underline_annotations_response.rb +224 -224
  397. data/lib/aspose_pdf_cloud/models/vertical_alignment.rb +46 -46
  398. data/lib/aspose_pdf_cloud/models/word_count.rb +200 -200
  399. data/lib/aspose_pdf_cloud/models/word_count_response.rb +224 -224
  400. data/lib/aspose_pdf_cloud/models/wrap_mode.rb +45 -45
  401. data/lib/aspose_pdf_cloud/version.rb +24 -24
  402. data/lib/aspose_pdf_cloud.rb +325 -326
  403. data/test/pdf_tests.rb +1 -1
  404. data/test_data/FormDataXfdf_in.xfdf +21 -21
  405. data/test_data/TexExample.tex +304 -304
  406. data/test_data/sample.tex +105 -105
  407. metadata +117 -9
  408. data/docs/ApiInfo.md +0 -10
  409. data/lib/aspose_pdf_cloud/models/api_info.rb +0 -209
@@ -1,414 +1,414 @@
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 stamps.
27
- class Stamp
28
- # Gets the stamp type.
29
- attr_accessor :type
30
-
31
- # Sets or gets a bool value that indicates the content is stamped as background. If the value is true, the stamp content is layed at the bottom. By defalt, the value is false, the stamp content is layed at the top.
32
- attr_accessor :background
33
-
34
- # Gets or sets bottom margin of stamp.
35
- attr_accessor :bottom_margin
36
-
37
- # Gets or sets Horizontal alignment of stamp on the page.
38
- attr_accessor :horizontal_alignment
39
-
40
- # Gets or sets left margin of stamp.
41
- attr_accessor :left_margin
42
-
43
- # Gets or sets a value to indicate the stamp opacity. The value is from 0.0 to 1.0. By default the value is 1.0.
44
- attr_accessor :opacity
45
-
46
- # Gets or sets right margin of stamp.
47
- attr_accessor :right_margin
48
-
49
- # Sets or gets the rotation of stamp content according Rotation values. Note. This property is for set angles which are multiples of 90 degrees (0, 90, 180, 270 degrees). To set arbitrary angle use RotateAngle property. If angle set by ArbitraryAngle is not multiple of 90 then Rotate property returns Rotation.None.
50
- attr_accessor :rotate
51
-
52
- # Gets or sets rotate angle of stamp in degrees. This property allows to set arbitrary rotate angle.
53
- attr_accessor :rotate_angle
54
-
55
- # Gets or sets top margin of stamp.
56
- attr_accessor :top_margin
57
-
58
- # Gets or sets vertical alignment of stamp on page.
59
- attr_accessor :vertical_alignment
60
-
61
- # Horizontal stamp coordinate, starting from the left.
62
- attr_accessor :x_indent
63
-
64
- # Vertical stamp coordinate, starting from the bottom.
65
- attr_accessor :y_indent
66
-
67
- # Zooming factor of the stamp. Allows to scale stamp.
68
- attr_accessor :zoom
69
-
70
- # Alignment of the text inside the stamp.
71
- attr_accessor :text_alignment
72
-
73
- # Gets or sets string value which is used as stamp on the page.
74
- attr_accessor :value
75
-
76
- # Gets text properties of the stamp. See TextState for details.
77
- attr_accessor :text_state
78
-
79
- # Gets or sets the file name.
80
- attr_accessor :file_name
81
-
82
- # Gets or sets image width. Setting this property allos to scal image horizontally.
83
- attr_accessor :width
84
-
85
- # Gets or sets image height. Setting this image allows to scale image vertically.
86
- attr_accessor :height
87
-
88
- # Gets or sets the index of the page.
89
- attr_accessor :page_index
90
-
91
- # Gets or sets value of the number of starting page. Other pages will be numbered starting from this value.
92
- attr_accessor :starting_number
93
-
94
-
95
- # Attribute mapping from ruby-style variable name to JSON key.
96
- def self.attribute_map
97
- {
98
- :'type' => :'Type',
99
- :'background' => :'Background',
100
- :'bottom_margin' => :'BottomMargin',
101
- :'horizontal_alignment' => :'HorizontalAlignment',
102
- :'left_margin' => :'LeftMargin',
103
- :'opacity' => :'Opacity',
104
- :'right_margin' => :'RightMargin',
105
- :'rotate' => :'Rotate',
106
- :'rotate_angle' => :'RotateAngle',
107
- :'top_margin' => :'TopMargin',
108
- :'vertical_alignment' => :'VerticalAlignment',
109
- :'x_indent' => :'XIndent',
110
- :'y_indent' => :'YIndent',
111
- :'zoom' => :'Zoom',
112
- :'text_alignment' => :'TextAlignment',
113
- :'value' => :'Value',
114
- :'text_state' => :'TextState',
115
- :'file_name' => :'FileName',
116
- :'width' => :'Width',
117
- :'height' => :'Height',
118
- :'page_index' => :'PageIndex',
119
- :'starting_number' => :'StartingNumber'
120
- }
121
- end
122
-
123
- # Attribute type mapping.
124
- def self.swagger_types
125
- {
126
- :'type' => :'StampType',
127
- :'background' => :'BOOLEAN',
128
- :'bottom_margin' => :'Float',
129
- :'horizontal_alignment' => :'HorizontalAlignment',
130
- :'left_margin' => :'Float',
131
- :'opacity' => :'Float',
132
- :'right_margin' => :'Float',
133
- :'rotate' => :'Rotation',
134
- :'rotate_angle' => :'Float',
135
- :'top_margin' => :'Float',
136
- :'vertical_alignment' => :'VerticalAlignment',
137
- :'x_indent' => :'Float',
138
- :'y_indent' => :'Float',
139
- :'zoom' => :'Float',
140
- :'text_alignment' => :'HorizontalAlignment',
141
- :'value' => :'String',
142
- :'text_state' => :'TextState',
143
- :'file_name' => :'String',
144
- :'width' => :'Float',
145
- :'height' => :'Float',
146
- :'page_index' => :'Integer',
147
- :'starting_number' => :'Integer'
148
- }
149
- end
150
-
151
- # Initializes the object
152
- # @param [Hash] attributes Model attributes in the form of hash
153
- def initialize(attributes = {})
154
- return unless attributes.is_a?(Hash)
155
-
156
- # convert string to symbol for hash key
157
- attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
158
-
159
- if attributes.has_key?(:'Type')
160
- self.type = attributes[:'Type']
161
- end
162
-
163
- if attributes.has_key?(:'Background')
164
- self.background = attributes[:'Background']
165
- end
166
-
167
- if attributes.has_key?(:'BottomMargin')
168
- self.bottom_margin = attributes[:'BottomMargin']
169
- end
170
-
171
- if attributes.has_key?(:'HorizontalAlignment')
172
- self.horizontal_alignment = attributes[:'HorizontalAlignment']
173
- end
174
-
175
- if attributes.has_key?(:'LeftMargin')
176
- self.left_margin = attributes[:'LeftMargin']
177
- end
178
-
179
- if attributes.has_key?(:'Opacity')
180
- self.opacity = attributes[:'Opacity']
181
- end
182
-
183
- if attributes.has_key?(:'RightMargin')
184
- self.right_margin = attributes[:'RightMargin']
185
- end
186
-
187
- if attributes.has_key?(:'Rotate')
188
- self.rotate = attributes[:'Rotate']
189
- end
190
-
191
- if attributes.has_key?(:'RotateAngle')
192
- self.rotate_angle = attributes[:'RotateAngle']
193
- end
194
-
195
- if attributes.has_key?(:'TopMargin')
196
- self.top_margin = attributes[:'TopMargin']
197
- end
198
-
199
- if attributes.has_key?(:'VerticalAlignment')
200
- self.vertical_alignment = attributes[:'VerticalAlignment']
201
- end
202
-
203
- if attributes.has_key?(:'XIndent')
204
- self.x_indent = attributes[:'XIndent']
205
- end
206
-
207
- if attributes.has_key?(:'YIndent')
208
- self.y_indent = attributes[:'YIndent']
209
- end
210
-
211
- if attributes.has_key?(:'Zoom')
212
- self.zoom = attributes[:'Zoom']
213
- end
214
-
215
- if attributes.has_key?(:'TextAlignment')
216
- self.text_alignment = attributes[:'TextAlignment']
217
- end
218
-
219
- if attributes.has_key?(:'Value')
220
- self.value = attributes[:'Value']
221
- end
222
-
223
- if attributes.has_key?(:'TextState')
224
- self.text_state = attributes[:'TextState']
225
- end
226
-
227
- if attributes.has_key?(:'FileName')
228
- self.file_name = attributes[:'FileName']
229
- end
230
-
231
- if attributes.has_key?(:'Width')
232
- self.width = attributes[:'Width']
233
- end
234
-
235
- if attributes.has_key?(:'Height')
236
- self.height = attributes[:'Height']
237
- end
238
-
239
- if attributes.has_key?(:'PageIndex')
240
- self.page_index = attributes[:'PageIndex']
241
- end
242
-
243
- if attributes.has_key?(:'StartingNumber')
244
- self.starting_number = attributes[:'StartingNumber']
245
- end
246
-
247
- end
248
-
249
- # Show invalid properties with the reasons. Usually used together with valid?
250
- # @return Array for valid properies with the reasons
251
- def list_invalid_properties
252
- invalid_properties = Array.new
253
- if @type.nil?
254
- invalid_properties.push("invalid value for 'type', type cannot be nil.")
255
- end
256
-
257
- return invalid_properties
258
- end
259
-
260
- # Check to see if the all the properties in the model are valid
261
- # @return true if the model is valid
262
- def valid?
263
- return false if @type.nil?
264
- return true
265
- end
266
-
267
- # Checks equality by comparing each attribute.
268
- # @param [Object] Object to be compared
269
- def ==(o)
270
- return true if self.equal?(o)
271
- self.class == o.class &&
272
- type == o.type &&
273
- background == o.background &&
274
- bottom_margin == o.bottom_margin &&
275
- horizontal_alignment == o.horizontal_alignment &&
276
- left_margin == o.left_margin &&
277
- opacity == o.opacity &&
278
- right_margin == o.right_margin &&
279
- rotate == o.rotate &&
280
- rotate_angle == o.rotate_angle &&
281
- top_margin == o.top_margin &&
282
- vertical_alignment == o.vertical_alignment &&
283
- x_indent == o.x_indent &&
284
- y_indent == o.y_indent &&
285
- zoom == o.zoom &&
286
- text_alignment == o.text_alignment &&
287
- value == o.value &&
288
- text_state == o.text_state &&
289
- file_name == o.file_name &&
290
- width == o.width &&
291
- height == o.height &&
292
- page_index == o.page_index &&
293
- starting_number == o.starting_number
294
- end
295
-
296
- # @see the `==` method
297
- # @param [Object] Object to be compared
298
- def eql?(o)
299
- self == o
300
- end
301
-
302
- # Calculates hash code according to all attributes.
303
- # @return [Fixnum] Hash code
304
- def hash
305
- [type, background, bottom_margin, horizontal_alignment, left_margin, opacity, right_margin, rotate, rotate_angle, top_margin, vertical_alignment, x_indent, y_indent, zoom, text_alignment, value, text_state, file_name, width, height, page_index, starting_number].hash
306
- end
307
-
308
- # Builds the object from hash
309
- # @param [Hash] attributes Model attributes in the form of hash
310
- # @return [Object] Returns the model itself
311
- def build_from_hash(attributes)
312
- return nil unless attributes.is_a?(Hash)
313
- self.class.swagger_types.each_pair do |key, type|
314
- if type =~ /\AArray<(.*)>/i
315
- # check to ensure the input is an array given that the the attribute
316
- # is documented as an array but the input is not
317
- if attributes[self.class.attribute_map[key]].is_a?(Array)
318
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
319
- end
320
- elsif !attributes[self.class.attribute_map[key]].nil?
321
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
322
- end # or else data not found in attributes(hash), not an issue as the data can be optional
323
- end
324
-
325
- self
326
- end
327
-
328
- # Deserializes the data based on type
329
- # @param string type Data type
330
- # @param string value Value to be deserialized
331
- # @return [Object] Deserialized data
332
- def _deserialize(type, value)
333
- case type.to_sym
334
- when :DateTime
335
- DateTime.parse(value)
336
- when :Date
337
- Date.parse(value)
338
- when :String
339
- value.to_s
340
- when :Integer
341
- value.to_i
342
- when :Float
343
- value.to_f
344
- when :BOOLEAN
345
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
346
- true
347
- else
348
- false
349
- end
350
- when :Object
351
- # generic object (usually a Hash), return directly
352
- value
353
- when /\AArray<(?<inner_type>.+)>\z/
354
- inner_type = Regexp.last_match[:inner_type]
355
- value.map { |v| _deserialize(inner_type, v) }
356
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
357
- k_type = Regexp.last_match[:k_type]
358
- v_type = Regexp.last_match[:v_type]
359
- {}.tap do |hash|
360
- value.each do |k, v|
361
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
362
- end
363
- end
364
- else # model
365
- temp_model = AsposePdfCloud.const_get(type).new
366
- temp_model.build_from_hash(value)
367
- end
368
- end
369
-
370
- # Returns the string representation of the object
371
- # @return [String] String presentation of the object
372
- def to_s
373
- to_hash.to_s
374
- end
375
-
376
- # to_body is an alias to to_hash (backward compatibility)
377
- # @return [Hash] Returns the object in the form of hash
378
- def to_body
379
- to_hash
380
- end
381
-
382
- # Returns the object in the form of hash
383
- # @return [Hash] Returns the object in the form of hash
384
- def to_hash
385
- hash = {}
386
- self.class.attribute_map.each_pair do |attr, param|
387
- value = self.send(attr)
388
- next if value.nil?
389
- hash[param] = _to_hash(value)
390
- end
391
- hash
392
- end
393
-
394
- # Outputs non-array value in the form of hash
395
- # For object, use to_hash. Otherwise, just return the value
396
- # @param [Object] value Any valid value
397
- # @return [Hash] Returns the value in the form of hash
398
- def _to_hash(value)
399
- if value.is_a?(Array)
400
- value.compact.map{ |v| _to_hash(v) }
401
- elsif value.is_a?(Hash)
402
- {}.tap do |hash|
403
- value.each { |k, v| hash[k] = _to_hash(v) }
404
- end
405
- elsif value.respond_to? :to_hash
406
- value.to_hash
407
- else
408
- value
409
- end
410
- end
411
-
412
- end
413
-
414
- 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 stamps.
27
+ class Stamp
28
+ # Gets the stamp type.
29
+ attr_accessor :type
30
+
31
+ # Sets or gets a bool value that indicates the content is stamped as background. If the value is true, the stamp content is layed at the bottom. By defalt, the value is false, the stamp content is layed at the top.
32
+ attr_accessor :background
33
+
34
+ # Gets or sets bottom margin of stamp.
35
+ attr_accessor :bottom_margin
36
+
37
+ # Gets or sets Horizontal alignment of stamp on the page.
38
+ attr_accessor :horizontal_alignment
39
+
40
+ # Gets or sets left margin of stamp.
41
+ attr_accessor :left_margin
42
+
43
+ # Gets or sets a value to indicate the stamp opacity. The value is from 0.0 to 1.0. By default the value is 1.0.
44
+ attr_accessor :opacity
45
+
46
+ # Gets or sets right margin of stamp.
47
+ attr_accessor :right_margin
48
+
49
+ # Sets or gets the rotation of stamp content according Rotation values. Note. This property is for set angles which are multiples of 90 degrees (0, 90, 180, 270 degrees). To set arbitrary angle use RotateAngle property. If angle set by ArbitraryAngle is not multiple of 90 then Rotate property returns Rotation.None.
50
+ attr_accessor :rotate
51
+
52
+ # Gets or sets rotate angle of stamp in degrees. This property allows to set arbitrary rotate angle.
53
+ attr_accessor :rotate_angle
54
+
55
+ # Gets or sets top margin of stamp.
56
+ attr_accessor :top_margin
57
+
58
+ # Gets or sets vertical alignment of stamp on page.
59
+ attr_accessor :vertical_alignment
60
+
61
+ # Horizontal stamp coordinate, starting from the left.
62
+ attr_accessor :x_indent
63
+
64
+ # Vertical stamp coordinate, starting from the bottom.
65
+ attr_accessor :y_indent
66
+
67
+ # Zooming factor of the stamp. Allows to scale stamp.
68
+ attr_accessor :zoom
69
+
70
+ # Alignment of the text inside the stamp.
71
+ attr_accessor :text_alignment
72
+
73
+ # Gets or sets string value which is used as stamp on the page.
74
+ attr_accessor :value
75
+
76
+ # Gets text properties of the stamp. See TextState for details.
77
+ attr_accessor :text_state
78
+
79
+ # Gets or sets the file name.
80
+ attr_accessor :file_name
81
+
82
+ # Gets or sets image width. Setting this property allos to scal image horizontally.
83
+ attr_accessor :width
84
+
85
+ # Gets or sets image height. Setting this image allows to scale image vertically.
86
+ attr_accessor :height
87
+
88
+ # Gets or sets the index of the page.
89
+ attr_accessor :page_index
90
+
91
+ # Gets or sets value of the number of starting page. Other pages will be numbered starting from this value.
92
+ attr_accessor :starting_number
93
+
94
+
95
+ # Attribute mapping from ruby-style variable name to JSON key.
96
+ def self.attribute_map
97
+ {
98
+ :'type' => :'Type',
99
+ :'background' => :'Background',
100
+ :'bottom_margin' => :'BottomMargin',
101
+ :'horizontal_alignment' => :'HorizontalAlignment',
102
+ :'left_margin' => :'LeftMargin',
103
+ :'opacity' => :'Opacity',
104
+ :'right_margin' => :'RightMargin',
105
+ :'rotate' => :'Rotate',
106
+ :'rotate_angle' => :'RotateAngle',
107
+ :'top_margin' => :'TopMargin',
108
+ :'vertical_alignment' => :'VerticalAlignment',
109
+ :'x_indent' => :'XIndent',
110
+ :'y_indent' => :'YIndent',
111
+ :'zoom' => :'Zoom',
112
+ :'text_alignment' => :'TextAlignment',
113
+ :'value' => :'Value',
114
+ :'text_state' => :'TextState',
115
+ :'file_name' => :'FileName',
116
+ :'width' => :'Width',
117
+ :'height' => :'Height',
118
+ :'page_index' => :'PageIndex',
119
+ :'starting_number' => :'StartingNumber'
120
+ }
121
+ end
122
+
123
+ # Attribute type mapping.
124
+ def self.swagger_types
125
+ {
126
+ :'type' => :'StampType',
127
+ :'background' => :'BOOLEAN',
128
+ :'bottom_margin' => :'Float',
129
+ :'horizontal_alignment' => :'HorizontalAlignment',
130
+ :'left_margin' => :'Float',
131
+ :'opacity' => :'Float',
132
+ :'right_margin' => :'Float',
133
+ :'rotate' => :'Rotation',
134
+ :'rotate_angle' => :'Float',
135
+ :'top_margin' => :'Float',
136
+ :'vertical_alignment' => :'VerticalAlignment',
137
+ :'x_indent' => :'Float',
138
+ :'y_indent' => :'Float',
139
+ :'zoom' => :'Float',
140
+ :'text_alignment' => :'HorizontalAlignment',
141
+ :'value' => :'String',
142
+ :'text_state' => :'TextState',
143
+ :'file_name' => :'String',
144
+ :'width' => :'Float',
145
+ :'height' => :'Float',
146
+ :'page_index' => :'Integer',
147
+ :'starting_number' => :'Integer'
148
+ }
149
+ end
150
+
151
+ # Initializes the object
152
+ # @param [Hash] attributes Model attributes in the form of hash
153
+ def initialize(attributes = {})
154
+ return unless attributes.is_a?(Hash)
155
+
156
+ # convert string to symbol for hash key
157
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
158
+
159
+ if attributes.has_key?(:'Type')
160
+ self.type = attributes[:'Type']
161
+ end
162
+
163
+ if attributes.has_key?(:'Background')
164
+ self.background = attributes[:'Background']
165
+ end
166
+
167
+ if attributes.has_key?(:'BottomMargin')
168
+ self.bottom_margin = attributes[:'BottomMargin']
169
+ end
170
+
171
+ if attributes.has_key?(:'HorizontalAlignment')
172
+ self.horizontal_alignment = attributes[:'HorizontalAlignment']
173
+ end
174
+
175
+ if attributes.has_key?(:'LeftMargin')
176
+ self.left_margin = attributes[:'LeftMargin']
177
+ end
178
+
179
+ if attributes.has_key?(:'Opacity')
180
+ self.opacity = attributes[:'Opacity']
181
+ end
182
+
183
+ if attributes.has_key?(:'RightMargin')
184
+ self.right_margin = attributes[:'RightMargin']
185
+ end
186
+
187
+ if attributes.has_key?(:'Rotate')
188
+ self.rotate = attributes[:'Rotate']
189
+ end
190
+
191
+ if attributes.has_key?(:'RotateAngle')
192
+ self.rotate_angle = attributes[:'RotateAngle']
193
+ end
194
+
195
+ if attributes.has_key?(:'TopMargin')
196
+ self.top_margin = attributes[:'TopMargin']
197
+ end
198
+
199
+ if attributes.has_key?(:'VerticalAlignment')
200
+ self.vertical_alignment = attributes[:'VerticalAlignment']
201
+ end
202
+
203
+ if attributes.has_key?(:'XIndent')
204
+ self.x_indent = attributes[:'XIndent']
205
+ end
206
+
207
+ if attributes.has_key?(:'YIndent')
208
+ self.y_indent = attributes[:'YIndent']
209
+ end
210
+
211
+ if attributes.has_key?(:'Zoom')
212
+ self.zoom = attributes[:'Zoom']
213
+ end
214
+
215
+ if attributes.has_key?(:'TextAlignment')
216
+ self.text_alignment = attributes[:'TextAlignment']
217
+ end
218
+
219
+ if attributes.has_key?(:'Value')
220
+ self.value = attributes[:'Value']
221
+ end
222
+
223
+ if attributes.has_key?(:'TextState')
224
+ self.text_state = attributes[:'TextState']
225
+ end
226
+
227
+ if attributes.has_key?(:'FileName')
228
+ self.file_name = attributes[:'FileName']
229
+ end
230
+
231
+ if attributes.has_key?(:'Width')
232
+ self.width = attributes[:'Width']
233
+ end
234
+
235
+ if attributes.has_key?(:'Height')
236
+ self.height = attributes[:'Height']
237
+ end
238
+
239
+ if attributes.has_key?(:'PageIndex')
240
+ self.page_index = attributes[:'PageIndex']
241
+ end
242
+
243
+ if attributes.has_key?(:'StartingNumber')
244
+ self.starting_number = attributes[:'StartingNumber']
245
+ end
246
+
247
+ end
248
+
249
+ # Show invalid properties with the reasons. Usually used together with valid?
250
+ # @return Array for valid properies with the reasons
251
+ def list_invalid_properties
252
+ invalid_properties = Array.new
253
+ if @type.nil?
254
+ invalid_properties.push("invalid value for 'type', type cannot be nil.")
255
+ end
256
+
257
+ return invalid_properties
258
+ end
259
+
260
+ # Check to see if the all the properties in the model are valid
261
+ # @return true if the model is valid
262
+ def valid?
263
+ return false if @type.nil?
264
+ return true
265
+ end
266
+
267
+ # Checks equality by comparing each attribute.
268
+ # @param [Object] Object to be compared
269
+ def ==(o)
270
+ return true if self.equal?(o)
271
+ self.class == o.class &&
272
+ type == o.type &&
273
+ background == o.background &&
274
+ bottom_margin == o.bottom_margin &&
275
+ horizontal_alignment == o.horizontal_alignment &&
276
+ left_margin == o.left_margin &&
277
+ opacity == o.opacity &&
278
+ right_margin == o.right_margin &&
279
+ rotate == o.rotate &&
280
+ rotate_angle == o.rotate_angle &&
281
+ top_margin == o.top_margin &&
282
+ vertical_alignment == o.vertical_alignment &&
283
+ x_indent == o.x_indent &&
284
+ y_indent == o.y_indent &&
285
+ zoom == o.zoom &&
286
+ text_alignment == o.text_alignment &&
287
+ value == o.value &&
288
+ text_state == o.text_state &&
289
+ file_name == o.file_name &&
290
+ width == o.width &&
291
+ height == o.height &&
292
+ page_index == o.page_index &&
293
+ starting_number == o.starting_number
294
+ end
295
+
296
+ # @see the `==` method
297
+ # @param [Object] Object to be compared
298
+ def eql?(o)
299
+ self == o
300
+ end
301
+
302
+ # Calculates hash code according to all attributes.
303
+ # @return [Fixnum] Hash code
304
+ def hash
305
+ [type, background, bottom_margin, horizontal_alignment, left_margin, opacity, right_margin, rotate, rotate_angle, top_margin, vertical_alignment, x_indent, y_indent, zoom, text_alignment, value, text_state, file_name, width, height, page_index, starting_number].hash
306
+ end
307
+
308
+ # Builds the object from hash
309
+ # @param [Hash] attributes Model attributes in the form of hash
310
+ # @return [Object] Returns the model itself
311
+ def build_from_hash(attributes)
312
+ return nil unless attributes.is_a?(Hash)
313
+ self.class.swagger_types.each_pair do |key, type|
314
+ if type =~ /\AArray<(.*)>/i
315
+ # check to ensure the input is an array given that the the attribute
316
+ # is documented as an array but the input is not
317
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
318
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
319
+ end
320
+ elsif !attributes[self.class.attribute_map[key]].nil?
321
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
322
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
323
+ end
324
+
325
+ self
326
+ end
327
+
328
+ # Deserializes the data based on type
329
+ # @param string type Data type
330
+ # @param string value Value to be deserialized
331
+ # @return [Object] Deserialized data
332
+ def _deserialize(type, value)
333
+ case type.to_sym
334
+ when :DateTime
335
+ DateTime.parse(value)
336
+ when :Date
337
+ Date.parse(value)
338
+ when :String
339
+ value.to_s
340
+ when :Integer
341
+ value.to_i
342
+ when :Float
343
+ value.to_f
344
+ when :BOOLEAN
345
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
346
+ true
347
+ else
348
+ false
349
+ end
350
+ when :Object
351
+ # generic object (usually a Hash), return directly
352
+ value
353
+ when /\AArray<(?<inner_type>.+)>\z/
354
+ inner_type = Regexp.last_match[:inner_type]
355
+ value.map { |v| _deserialize(inner_type, v) }
356
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
357
+ k_type = Regexp.last_match[:k_type]
358
+ v_type = Regexp.last_match[:v_type]
359
+ {}.tap do |hash|
360
+ value.each do |k, v|
361
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
362
+ end
363
+ end
364
+ else # model
365
+ temp_model = AsposePdfCloud.const_get(type).new
366
+ temp_model.build_from_hash(value)
367
+ end
368
+ end
369
+
370
+ # Returns the string representation of the object
371
+ # @return [String] String presentation of the object
372
+ def to_s
373
+ to_hash.to_s
374
+ end
375
+
376
+ # to_body is an alias to to_hash (backward compatibility)
377
+ # @return [Hash] Returns the object in the form of hash
378
+ def to_body
379
+ to_hash
380
+ end
381
+
382
+ # Returns the object in the form of hash
383
+ # @return [Hash] Returns the object in the form of hash
384
+ def to_hash
385
+ hash = {}
386
+ self.class.attribute_map.each_pair do |attr, param|
387
+ value = self.send(attr)
388
+ next if value.nil?
389
+ hash[param] = _to_hash(value)
390
+ end
391
+ hash
392
+ end
393
+
394
+ # Outputs non-array value in the form of hash
395
+ # For object, use to_hash. Otherwise, just return the value
396
+ # @param [Object] value Any valid value
397
+ # @return [Hash] Returns the value in the form of hash
398
+ def _to_hash(value)
399
+ if value.is_a?(Array)
400
+ value.compact.map{ |v| _to_hash(v) }
401
+ elsif value.is_a?(Hash)
402
+ {}.tap do |hash|
403
+ value.each { |k, v| hash[k] = _to_hash(v) }
404
+ end
405
+ elsif value.respond_to? :to_hash
406
+ value.to_hash
407
+ else
408
+ value
409
+ end
410
+ end
411
+
412
+ end
413
+
414
+ end