aspose_pdf_cloud 20.8.0 → 21.10.0

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