aspose_pdf_cloud 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (88) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +22 -0
  3. data/README.md +41 -0
  4. data/aspose_pdf_cloud.gemspec +26 -0
  5. data/lib/aspose_pdf_cloud.rb +91 -0
  6. data/lib/aspose_pdf_cloud/api/pdf_api.rb +3318 -0
  7. data/lib/aspose_pdf_cloud/api_client.rb +335 -0
  8. data/lib/aspose_pdf_cloud/api_error.rb +24 -0
  9. data/lib/aspose_pdf_cloud/configuration.rb +166 -0
  10. data/lib/aspose_pdf_cloud/models/annotation.rb +87 -0
  11. data/lib/aspose_pdf_cloud/models/annotation_response.rb +61 -0
  12. data/lib/aspose_pdf_cloud/models/annotations.rb +49 -0
  13. data/lib/aspose_pdf_cloud/models/annotations_response.rb +61 -0
  14. data/lib/aspose_pdf_cloud/models/append_document.rb +53 -0
  15. data/lib/aspose_pdf_cloud/models/attachment.rb +95 -0
  16. data/lib/aspose_pdf_cloud/models/attachment_response.rb +61 -0
  17. data/lib/aspose_pdf_cloud/models/attachments.rb +49 -0
  18. data/lib/aspose_pdf_cloud/models/attachments_response.rb +61 -0
  19. data/lib/aspose_pdf_cloud/models/barcode_response_list.rb +45 -0
  20. data/lib/aspose_pdf_cloud/models/base_object.rb +86 -0
  21. data/lib/aspose_pdf_cloud/models/base_response.rb +61 -0
  22. data/lib/aspose_pdf_cloud/models/bookmarks.rb +49 -0
  23. data/lib/aspose_pdf_cloud/models/bookmarks_response.rb +61 -0
  24. data/lib/aspose_pdf_cloud/models/color.rb +61 -0
  25. data/lib/aspose_pdf_cloud/models/document.rb +55 -0
  26. data/lib/aspose_pdf_cloud/models/document_pages_response.rb +61 -0
  27. data/lib/aspose_pdf_cloud/models/document_properties.rb +49 -0
  28. data/lib/aspose_pdf_cloud/models/document_properties_response.rb +61 -0
  29. data/lib/aspose_pdf_cloud/models/document_property.rb +63 -0
  30. data/lib/aspose_pdf_cloud/models/document_property_response.rb +61 -0
  31. data/lib/aspose_pdf_cloud/models/document_response.rb +61 -0
  32. data/lib/aspose_pdf_cloud/models/document_text_replace_response.rb +69 -0
  33. data/lib/aspose_pdf_cloud/models/field.rb +83 -0
  34. data/lib/aspose_pdf_cloud/models/field_response.rb +61 -0
  35. data/lib/aspose_pdf_cloud/models/fields.rb +49 -0
  36. data/lib/aspose_pdf_cloud/models/fields_response.rb +61 -0
  37. data/lib/aspose_pdf_cloud/models/image.rb +55 -0
  38. data/lib/aspose_pdf_cloud/models/image_response.rb +61 -0
  39. data/lib/aspose_pdf_cloud/models/images.rb +49 -0
  40. data/lib/aspose_pdf_cloud/models/images_response.rb +61 -0
  41. data/lib/aspose_pdf_cloud/models/link.rb +61 -0
  42. data/lib/aspose_pdf_cloud/models/link_annotation.rb +71 -0
  43. data/lib/aspose_pdf_cloud/models/link_annotation_response.rb +61 -0
  44. data/lib/aspose_pdf_cloud/models/link_annotations.rb +49 -0
  45. data/lib/aspose_pdf_cloud/models/link_annotations_response.rb +61 -0
  46. data/lib/aspose_pdf_cloud/models/link_element.rb +39 -0
  47. data/lib/aspose_pdf_cloud/models/merge_documents.rb +39 -0
  48. data/lib/aspose_pdf_cloud/models/page.rb +63 -0
  49. data/lib/aspose_pdf_cloud/models/page_response.rb +61 -0
  50. data/lib/aspose_pdf_cloud/models/page_text_replace_response.rb +69 -0
  51. data/lib/aspose_pdf_cloud/models/page_word_count.rb +45 -0
  52. data/lib/aspose_pdf_cloud/models/pages.rb +49 -0
  53. data/lib/aspose_pdf_cloud/models/rectangle.rb +61 -0
  54. data/lib/aspose_pdf_cloud/models/signature.rb +109 -0
  55. data/lib/aspose_pdf_cloud/models/split_result.rb +39 -0
  56. data/lib/aspose_pdf_cloud/models/split_result_document.rb +69 -0
  57. data/lib/aspose_pdf_cloud/models/split_result_response.rb +61 -0
  58. data/lib/aspose_pdf_cloud/models/stamp.rb +205 -0
  59. data/lib/aspose_pdf_cloud/models/text_format.rb +63 -0
  60. data/lib/aspose_pdf_cloud/models/text_format_response.rb +61 -0
  61. data/lib/aspose_pdf_cloud/models/text_item.rb +55 -0
  62. data/lib/aspose_pdf_cloud/models/text_item_response.rb +61 -0
  63. data/lib/aspose_pdf_cloud/models/text_items.rb +49 -0
  64. data/lib/aspose_pdf_cloud/models/text_items_response.rb +61 -0
  65. data/lib/aspose_pdf_cloud/models/text_replace.rb +53 -0
  66. data/lib/aspose_pdf_cloud/models/text_replace_list_request.rb +39 -0
  67. data/lib/aspose_pdf_cloud/models/text_state.rb +69 -0
  68. data/lib/aspose_pdf_cloud/models/tiff_export_options.rb +157 -0
  69. data/lib/aspose_pdf_cloud/models/word_count.rb +39 -0
  70. data/lib/aspose_pdf_cloud/models/word_count_response.rb +61 -0
  71. data/lib/aspose_pdf_cloud/version.rb +3 -0
  72. data/test/data/Sample-Annotation-Property.pdf +0 -0
  73. data/test/data/Sample-Annotation.pdf +0 -0
  74. data/test/data/Sample-Bookmark.pdf +0 -0
  75. data/test/data/Sample.pdf +0 -0
  76. data/test/data/SampleAttachment.pdf +0 -0
  77. data/test/data/SampleBarCodeImage.pdf +0 -0
  78. data/test/data/SampleImage.pdf +0 -0
  79. data/test/data/aspose-cloud.png +0 -0
  80. data/test/data/pkc7-sample.pfx +0 -0
  81. data/test/data/sample-field.pdf +0 -0
  82. data/test/data/sample-home.jpg +0 -0
  83. data/test/data/sample-input-2.pdf +0 -0
  84. data/test/data/sample-input.pdf +0 -0
  85. data/test/data/sample-merged.pdf +0 -0
  86. data/test/data/sample.tiff +0 -0
  87. data/test/pdf_tests.rb +623 -0
  88. metadata +216 -0
@@ -0,0 +1,39 @@
1
+ module AsposePDFCloud
2
+ #
3
+ class WordCount < BaseObject
4
+ attr_accessor :list
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ #
10
+ :'list' => :'List'
11
+
12
+ }
13
+ end
14
+
15
+ # attribute type
16
+ def self.swagger_types
17
+ {
18
+ :'list' => :'Array<PageWordCount>'
19
+
20
+ }
21
+ end
22
+
23
+ def initialize(attributes = {})
24
+ return if !attributes.is_a?(Hash) || attributes.empty?
25
+
26
+ # convert string to symbol for hash key
27
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
28
+
29
+
30
+ if attributes[:'List']
31
+ if (value = attributes[:'List']).is_a?(Array)
32
+ self.list = value
33
+ end
34
+ end
35
+
36
+ end
37
+
38
+ end
39
+ end
@@ -0,0 +1,61 @@
1
+ module AsposePDFCloud
2
+ #
3
+ class WordCountResponse < BaseObject
4
+ attr_accessor :words_per_page, :status, :code
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ #
10
+ :'words_per_page' => :'WordsPerPage',
11
+
12
+ #
13
+ :'status' => :'Status',
14
+
15
+ #
16
+ :'code' => :'Code'
17
+
18
+ }
19
+ end
20
+
21
+ # attribute type
22
+ def self.swagger_types
23
+ {
24
+ :'words_per_page' => :'WordCount',
25
+ :'status' => :'String',
26
+ :'code' => :'String'
27
+
28
+ }
29
+ end
30
+
31
+ def initialize(attributes = {})
32
+ return if !attributes.is_a?(Hash) || attributes.empty?
33
+
34
+ # convert string to symbol for hash key
35
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
36
+
37
+
38
+ if attributes[:'WordsPerPage']
39
+ self.words_per_page = attributes[:'WordsPerPage']
40
+ end
41
+
42
+ if attributes[:'Status']
43
+ self.status = attributes[:'Status']
44
+ end
45
+
46
+ if attributes[:'Code']
47
+ self.code = attributes[:'Code']
48
+ end
49
+
50
+ end
51
+
52
+ def status=(status)
53
+ allowed_values = ["Continue", "SwitchingProtocols", "OK", "Created", "Accepted", "NonAuthoritativeInformation", "NoContent", "ResetContent", "PartialContent", "MultipleChoices", "Ambiguous", "MovedPermanently", "Moved", "Found", "Redirect", "SeeOther", "RedirectMethod", "NotModified", "UseProxy", "Unused", "TemporaryRedirect", "RedirectKeepVerb", "BadRequest", "Unauthorized", "PaymentRequired", "Forbidden", "NotFound", "MethodNotAllowed", "NotAcceptable", "ProxyAuthenticationRequired", "RequestTimeout", "Conflict", "Gone", "LengthRequired", "PreconditionFailed", "RequestEntityTooLarge", "RequestUriTooLong", "UnsupportedMediaType", "RequestedRangeNotSatisfiable", "ExpectationFailed", "UpgradeRequired", "InternalServerError", "NotImplemented", "BadGateway", "ServiceUnavailable", "GatewayTimeout", "HttpVersionNotSupported"]
54
+ if status && !allowed_values.include?(status)
55
+ fail "invalid value for 'status', must be one of #{allowed_values}"
56
+ end
57
+ @status = status
58
+ end
59
+
60
+ end
61
+ end
@@ -0,0 +1,3 @@
1
+ module AsposePDFCloud
2
+ VERSION = "1.0.0"
3
+ end
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -0,0 +1,623 @@
1
+ require "minitest/autorun"
2
+ require "minitest/unit"
3
+
4
+ require_relative '../lib/aspose_pdf_cloud'
5
+
6
+ class PDFTests < Minitest::Test
7
+ include MiniTest::Assertions
8
+ include AsposePDFCloud
9
+ include AsposeStorageCloud
10
+
11
+ def setup
12
+ #Get App key and App SID from https://cloud.aspose.com
13
+ AsposeApp.app_key_and_sid("", "")
14
+ @pdf_api = PdfApi.new
15
+ end
16
+
17
+ def teardown
18
+ end
19
+
20
+ def upload_file(file_name)
21
+ @storage_api = StorageApi.new
22
+ response = @storage_api.put_create(file_name, File.open("data/" << file_name,"r") { |io| io.read } )
23
+ assert(response, message="Failed to upload {file_name} file.")
24
+ end
25
+
26
+ def test_put_convert_document
27
+ file_name = "Sample.pdf"
28
+
29
+ response = @pdf_api.put_convert_document(File.open("data/" << file_name,"r") { |io| io.read }, {format: "tiff"})
30
+ assert(response, message="Failed to convert document from request content to format specified")
31
+ end
32
+
33
+ def test_get_document_with_format
34
+ file_name = "Sample.pdf"
35
+ upload_file(file_name)
36
+
37
+ format = "doc"
38
+ response = @pdf_api.get_document_with_format(file_name, format)
39
+ assert(response, message="Failed to convert document to specified format")
40
+ end
41
+
42
+ def test_put_create_document
43
+ file_name = "newPDFFile.pdf"
44
+ response = @pdf_api.put_create_document(file_name)
45
+ assert(response, message="Failed to create new document")
46
+ end
47
+
48
+ def test_put_document_save_as_tiff
49
+ file_name = "Sample.pdf"
50
+ upload_file(file_name)
51
+ result_file = "sample.tiff"
52
+ upload_file(result_file)
53
+
54
+ tiff_export_options = TiffExportOptions.new
55
+ tiff_export_options.result_file = result_file;
56
+
57
+ response = @pdf_api.put_document_save_as_tiff(file_name, tiff_export_options)
58
+ assert(response, message="Failed to save document as Tiff image")
59
+ end
60
+
61
+ def test_post_append_document
62
+ file_name = "Sample.pdf"
63
+ upload_file(file_name)
64
+ append_file_name = "sample-input.pdf"
65
+ upload_file(append_file_name)
66
+
67
+ append_document = AppendDocument.new
68
+ append_document.document = append_file_name;
69
+ append_document.start_page = 2
70
+ append_document.end_page = 3
71
+
72
+ response = @pdf_api.post_append_document(file_name, append_document)
73
+ assert(response, message="Failed to append document to existing one.")
74
+ end
75
+
76
+ def test_get_document_attachments
77
+ file_name = "SampleAttachment.pdf"
78
+ upload_file(file_name)
79
+
80
+ response = @pdf_api.get_document_attachments(file_name)
81
+ assert(response, message="Failed to read document attachments info.")
82
+ end
83
+
84
+ def test_get_document_attachment_by_index
85
+ file_name = "SampleAttachment.pdf"
86
+ upload_file(file_name)
87
+
88
+ attachment_index = 1
89
+ response = @pdf_api.get_document_attachment_by_index(file_name, attachment_index)
90
+ assert(response, message="Failed to read document attachment info by its index")
91
+ end
92
+
93
+ def test_get_download_document_attachment_by_index
94
+ file_name = "SampleAttachment.pdf"
95
+ upload_file(file_name)
96
+
97
+ attachment_index = 1
98
+ response = @pdf_api.get_download_document_attachment_by_index(file_name, attachment_index)
99
+ assert(response, message="Failed to download document attachment content by its index")
100
+ end
101
+
102
+ def test_get_document_bookmarks
103
+ file_name = "Sample-Bookmark.pdf"
104
+ upload_file(file_name)
105
+
106
+ response = @pdf_api.get_document_bookmarks(file_name)
107
+ assert(response, message="Failed to read document bookmarks")
108
+ end
109
+
110
+ def test_get_document_bookmarks_children
111
+ file_name = "Sample-Bookmark.pdf"
112
+ upload_file(file_name)
113
+
114
+ bookmark_path = "1"
115
+ response = @pdf_api.get_document_bookmarks_children(file_name, bookmark_path)
116
+ assert(response, message="Failed to read document bookmark/bookmarks (including children).")
117
+ end
118
+
119
+ def test_get_document_properties
120
+ file_name = "Sample-Annotation.pdf"
121
+ upload_file(file_name)
122
+
123
+ response = @pdf_api.get_document_properties(file_name)
124
+ assert(response, message="Failed to read document properties")
125
+ end
126
+
127
+ def test_delete_properties
128
+ file_name = "Sample-Annotation.pdf"
129
+ upload_file(file_name)
130
+
131
+ response = @pdf_api.delete_properties(file_name)
132
+ assert(response, message="Failed to delete document properties.")
133
+ end
134
+
135
+ def test_get_document_property
136
+ file_name = "Sample-Annotation.pdf"
137
+ upload_file(file_name)
138
+
139
+ property_name = "author"
140
+ response = @pdf_api.get_document_property(file_name, property_name)
141
+ assert(response, message="Failed to read document property by name.")
142
+ end
143
+
144
+ def test_put_set_property
145
+ file_name = "Sample-Annotation.pdf"
146
+ upload_file(file_name)
147
+
148
+ property_name = "AsposeDev"
149
+ document_property = DocumentProperty.new
150
+ document_property.name = property_name
151
+ document_property.value = "Elon"
152
+ document_property.built_in = false
153
+
154
+ response = @pdf_api.put_set_property(file_name, property_name, document_property)
155
+ assert(response, message="Failed to add/update document property.")
156
+ end
157
+
158
+ def test_delete_property
159
+ file_name = "Sample-Annotation-Property.pdf"
160
+ upload_file(file_name)
161
+
162
+ property_name = "AsposeDev"
163
+ response = @pdf_api.delete_property(file_name, property_name)
164
+ assert(response, message="Failed to delete document property.")
165
+ end
166
+
167
+ def test_get_fields
168
+ file_name = "sample-field.pdf"
169
+ upload_file(file_name)
170
+
171
+ response = @pdf_api.get_fields(file_name)
172
+ assert(response, message="Failed to get document fields.")
173
+ end
174
+
175
+ def test_put_update_fields
176
+ file_name = "sample-field.pdf"
177
+ upload_file(file_name)
178
+
179
+ field = Field.new
180
+ field.name = "textbox1";
181
+ field.values = ["Aspose"]
182
+
183
+ fields = Fields.new
184
+ fields.list = [field]
185
+
186
+ response = @pdf_api.put_update_fields(file_name, fields)
187
+ assert(response, message="Failed to update fields.")
188
+ end
189
+
190
+ def test_post_create_field
191
+ file_name = "sample-field.pdf"
192
+ upload_file(file_name)
193
+
194
+ field = Field.new
195
+ field.name = "checkBoxField2"
196
+ field.values = ["1"]
197
+ field.type = "Boolean"
198
+
199
+ rect = Rectangle.new
200
+ rect.x = 100
201
+ rect.y = 100
202
+ rect.height = 100
203
+ rect.width = 200
204
+
205
+ field.rect = rect
206
+
207
+ page = 1
208
+ response = @pdf_api.post_create_field(file_name, page, field)
209
+ assert(response, message="Failed to create field.")
210
+ end
211
+
212
+ def test_get_field
213
+ file_name = "sample-field.pdf"
214
+ upload_file(file_name)
215
+
216
+ field_name = "textbox1"
217
+ response = @pdf_api.get_field(file_name, field_name)
218
+ assert(response, message="Failed to get document field by name.")
219
+ end
220
+
221
+ def test_put_update_field
222
+ file_name = "sample-field.pdf"
223
+ upload_file(file_name)
224
+
225
+ field_name = "textbox1"
226
+
227
+ field = Field.new
228
+ field.name = field_name
229
+ field.values = ["Aspose"]
230
+
231
+ response = @pdf_api.put_update_field(file_name, field, field_name)
232
+ assert(response, message="Failed to update field.")
233
+ end
234
+
235
+ def test_put_merge_documents
236
+ upload_file("Sample.pdf")
237
+ upload_file("sample-input.pdf")
238
+
239
+ merge_documents = MergeDocuments.new
240
+ merge_documents.list = ["Sample.pdf", "sample-input.pdf"]
241
+
242
+ response = @pdf_api.put_merge_documents("sample-merged.pdf", merge_documents)
243
+ assert(response, message="Failed to merge a list of documents")
244
+ end
245
+
246
+ def test_get_pages
247
+ file_name = "Sample-Annotation.pdf"
248
+ upload_file(file_name)
249
+
250
+ response = @pdf_api.get_pages(file_name)
251
+ assert(response, message="Failed to read document pages info")
252
+ end
253
+
254
+ def test_put_add_new_page
255
+ file_name = "sample-input.pdf"
256
+ upload_file(file_name)
257
+
258
+ response = @pdf_api.put_add_new_page(file_name)
259
+ assert(response, message="Failed to add new page to end of the document")
260
+ end
261
+
262
+ def test_get_words_per_page
263
+ file_name = "Sample-Annotation.pdf"
264
+ upload_file(file_name)
265
+
266
+ response = @pdf_api.get_words_per_page(file_name)
267
+ assert(response, message="Failed to get number of words per document page.")
268
+ end
269
+
270
+ def test_get_page_with_format
271
+ file_name = "Sample-Annotation.pdf"
272
+ upload_file(file_name)
273
+
274
+ page_number = 1
275
+ format = "png"
276
+ response = @pdf_api.get_page_with_format(file_name, page_number, format)
277
+ assert(response, message="Failed to get page in specified format.")
278
+ end
279
+
280
+ def test_delete_page
281
+ file_name = "sample-input.pdf"
282
+ upload_file(file_name)
283
+
284
+ page_number = 1
285
+ response = @pdf_api.delete_page(file_name, page_number)
286
+ assert(response, message="Failed to delete document page by its number.")
287
+ end
288
+
289
+ def test_get_page_annotations
290
+ file_name = "Sample-Annotation.pdf"
291
+ upload_file(file_name)
292
+
293
+ page_number = 1
294
+ response = @pdf_api.get_page_annotations(file_name, page_number)
295
+ assert(response, message="Failed to read document page annotations.")
296
+ end
297
+
298
+ def test_get_page_annotation
299
+ file_name = "Sample-Annotation.pdf"
300
+ upload_file(file_name)
301
+
302
+ page_number = 1
303
+ annotation_number = 1
304
+ response = @pdf_api.get_page_annotation(file_name, page_number, annotation_number)
305
+ assert(response, message="Failed to read document page annotation by its number.")
306
+ end
307
+
308
+ def test_get_fragments
309
+ file_name = "sample-input.pdf"
310
+ upload_file(file_name)
311
+
312
+ page_number = 1
313
+ response = @pdf_api.get_fragments(file_name, page_number)
314
+ assert(response, message="Failed to read page fragments.")
315
+ end
316
+
317
+ def test_get_fragment
318
+ file_name = "sample-input.pdf"
319
+ upload_file(file_name)
320
+
321
+ page_number = 1
322
+ fragment_number = 1
323
+ response = @pdf_api.get_fragment(file_name, page_number, fragment_number)
324
+ assert(response, message="Failed to read page fragment.")
325
+ end
326
+
327
+ def test_get_segments
328
+ file_name = "sample-input.pdf"
329
+ upload_file(file_name)
330
+
331
+ page_number = 1
332
+ fragment_number = 1
333
+ response = @pdf_api.get_segments(file_name, page_number, fragment_number)
334
+ assert(response, message="Failed to read fragment segments.")
335
+ end
336
+
337
+ def test_get_segment
338
+ file_name = "sample-input.pdf"
339
+ upload_file(file_name)
340
+
341
+ page_number = 1
342
+ fragment_number = 1
343
+ segment_number = 1
344
+ response = @pdf_api.get_segment(file_name, page_number, fragment_number, segment_number)
345
+ assert(response, message="Failed to read segment.")
346
+ end
347
+
348
+ def test_get_segment_text_format
349
+ file_name = "sample-input.pdf"
350
+ upload_file(file_name)
351
+
352
+ page_number = 1
353
+ fragment_number = 1
354
+ segment_number = 1
355
+ response = @pdf_api.get_segment_text_format(file_name, page_number, fragment_number, segment_number)
356
+ assert(response, message="Failed to read segment text format.")
357
+ end
358
+
359
+ def test_get_fragment_text_format
360
+ file_name = "sample-input.pdf"
361
+ upload_file(file_name)
362
+
363
+ page_number = 1
364
+ fragment_number = 1
365
+ response = @pdf_api.get_fragment_text_format(file_name, page_number, fragment_number)
366
+ assert(response, message="Failed to read page fragment text format.")
367
+ end
368
+
369
+ def test_get_images
370
+ file_name = "SampleImage.pdf"
371
+ upload_file(file_name)
372
+
373
+ page_number = 1
374
+ response = @pdf_api.get_images(file_name, page_number)
375
+ assert(response, message="Failed to read document images.")
376
+ end
377
+
378
+ def test_get_image_with_format
379
+ file_name = "SampleImage.pdf"
380
+ upload_file(file_name)
381
+
382
+ page_number = 1
383
+ image_number = 1
384
+ format = "jpeg"
385
+ response = @pdf_api.get_image_with_format(file_name, page_number, image_number, format)
386
+ assert(response, message="Failed to get image in specified format.")
387
+ end
388
+
389
+ def test_post_replace_image
390
+ file_name = "SampleImage.pdf"
391
+ upload_file(file_name)
392
+ image_file_name = "aspose-cloud.png"
393
+ upload_file(image_file_name)
394
+
395
+ page_number = 1
396
+ image_number = 1
397
+ response = @pdf_api.post_replace_image(file_name, page_number, image_number, {image_file: image_file_name})
398
+ assert(response, message="Failed to replace document image.")
399
+ end
400
+
401
+ def test_get_extract_barcodes
402
+ file_name = "SampleBarCodeImage.pdf"
403
+ upload_file(file_name)
404
+
405
+ page_number = 1
406
+ image_number = 1
407
+ response = @pdf_api.get_extract_barcodes(file_name, page_number, image_number)
408
+ assert(response, message="Failed to recognize barcodes.")
409
+ end
410
+
411
+ def test_get_page_link_annotations
412
+ file_name = "Sample-Bookmark.pdf"
413
+ upload_file(file_name)
414
+
415
+ page_number = 1
416
+ response = @pdf_api.get_page_link_annotations(file_name, page_number)
417
+ assert(response, message="Failed to read document page link annotations.")
418
+ end
419
+
420
+ def test_get_page_link_annotation_by_index
421
+ file_name = "Sample-Bookmark.pdf"
422
+ upload_file(file_name)
423
+
424
+ page_number = 1
425
+ link_index = 1
426
+ response = @pdf_api.get_page_link_annotation_by_index(file_name, page_number, link_index)
427
+ assert(response, message="Failed to read document page link annotation by its index.")
428
+ end
429
+
430
+ def test_post_move_page
431
+ file_name = "sample-merged.pdf"
432
+ upload_file(file_name)
433
+
434
+ page_number = 1
435
+ new_index = 1
436
+ response = @pdf_api.post_move_page(file_name, page_number, new_index)
437
+ assert(response, message="Failed to move page to new position.")
438
+ end
439
+
440
+ def test_post_page_replace_text
441
+ file_name = "sample-input.pdf"
442
+ upload_file(file_name)
443
+
444
+ page_number = 1
445
+ text_replace = TextReplace.new
446
+ text_replace.old_value = "Sample PDF"
447
+ text_replace.new_value = "Sample Aspose PDF"
448
+ response = @pdf_api.post_page_replace_text(file_name, page_number, text_replace)
449
+ assert(response, message="Failed to replace text")
450
+ end
451
+
452
+ def test_post_page_replace_text_list
453
+ file_name = "sample-input.pdf"
454
+ upload_file(file_name)
455
+
456
+ page_number = 1
457
+ text_replace_list_request = TextReplaceListRequest.new
458
+ text_request_1 = TextReplace.new
459
+ text_request_1.old_value = "Sample"
460
+ text_request_1.new_value = "Sample Aspose"
461
+ text_request_2 = TextReplace.new
462
+ text_request_2.old_value = "PDF"
463
+ text_request_2.new_value = "PDF Document"
464
+ text_replace_list_request.text_replaces = [text_request_1, text_request_2]
465
+
466
+ response = @pdf_api.post_page_replace_text_list(file_name, page_number, text_replace_list_request)
467
+ assert(response, message="Failed to replace text")
468
+ end
469
+
470
+ def test_post_sign_page
471
+ file_name = "sample-input.pdf"
472
+ upload_file(file_name)
473
+
474
+ signature_file_name = "pkc7-sample.pfx"
475
+ upload_file(signature_file_name)
476
+
477
+ page_number = 1
478
+ signature = Signature.new
479
+ signature.authority = "Alexey"
480
+ signature.location = "London"
481
+ signature.contact = "alexey@aspose.com"
482
+ signature.date = "10/25/2015 2:46:00.000 PM"
483
+ signature.form_field_name = "Signature1"
484
+ signature.password = "aspose"
485
+ rectangle = Rectangle.new
486
+ rectangle.x = 100
487
+ rectangle.y = 100
488
+ rectangle.height = 100
489
+ rectangle.width = 200
490
+ signature.rectangle = rectangle
491
+ signature.signature_path = signature_file_name
492
+ signature.signature_type = "PKCS7"
493
+ signature.visible = true
494
+
495
+ response = @pdf_api.post_sign_page(file_name, page_number, signature)
496
+ assert(response, message="Failed to sign page.")
497
+ end
498
+
499
+ def test_put_page_add_stamp
500
+ file_name = "sample-input.pdf"
501
+ upload_file(file_name)
502
+
503
+ page_number = 1
504
+ stamp = Stamp.new
505
+ stamp.value = "Aspose"
506
+ stamp.background = true
507
+ stamp.type = "Text"
508
+
509
+ response = @pdf_api.put_page_add_stamp(file_name, page_number, stamp)
510
+ assert(response, message="Failed to add page stamp.")
511
+ end
512
+
513
+ def test_get_page_text_items
514
+ file_name = "Sample-Annotation.pdf"
515
+ upload_file(file_name)
516
+
517
+ page_number = 1
518
+ response = @pdf_api.get_page_text_items(file_name, page_number)
519
+ assert(response, message="Failed to read page text items.")
520
+ end
521
+
522
+ def test_post_document_replace_text
523
+ file_name = "sample-input.pdf"
524
+ upload_file(file_name)
525
+
526
+ text_replace = TextReplace.new
527
+ text_replace.old_value = "Sample PDF"
528
+ text_replace.new_value = "Sample Aspose PDF"
529
+
530
+ response = @pdf_api.post_document_replace_text(file_name, text_replace)
531
+ assert(response, message="Failed to replace document's text.")
532
+ end
533
+
534
+ def test_post_document_replace_text_list
535
+ file_name = "Sample-Annotation.pdf"
536
+ upload_file(file_name)
537
+
538
+ text_replace_list_request = TextReplaceListRequest.new
539
+ text_replace_1 = TextReplace.new
540
+ text_replace_1.old_value = "Sample"
541
+ text_replace_1.new_value = "Sample Aspose"
542
+ text_replace_1.regex = false
543
+ text_replace_2 = TextReplace.new
544
+ text_replace_2.old_value = "PDF"
545
+ text_replace_2.new_value = "PDF Document"
546
+ text_replace_2.regex = false
547
+ text_replace_list_request.text_replaces = [text_replace_1, text_replace_2]
548
+
549
+ response = @pdf_api.post_document_replace_text_list(file_name, text_replace_list_request)
550
+ assert(response, message="Failed to replace document's text")
551
+ end
552
+
553
+ def test_post_sign_document
554
+ file_name = "sample-input-2.pdf"
555
+ upload_file(file_name)
556
+ signature_file_name = "pkc7-sample.pfx"
557
+ upload_file(signature_file_name)
558
+
559
+ signature = Signature.new
560
+ signature.authority = "Alexey"
561
+ signature.location = "London"
562
+ signature.contact = "alexey@aspose.com"
563
+ signature.date = "10/25/2015 2:46:00.000 PM"
564
+ signature.form_field_name = "Signature1"
565
+ signature.password = "aspose"
566
+ rectangle = Rectangle.new
567
+ rectangle.x = 100
568
+ rectangle.y = 100
569
+ rectangle.height = 100
570
+ rectangle.width = 200
571
+ signature.rectangle = rectangle
572
+ signature.signature_path = signature_file_name
573
+ signature.signature_type = "PKCS7"
574
+ signature.visible = true
575
+
576
+ response = @pdf_api.post_sign_document(file_name, signature)
577
+ assert(response, message="Failed to sign document.")
578
+ end
579
+
580
+ def test_post_split_document
581
+ file_name = "sample-input.pdf"
582
+ upload_file(file_name)
583
+
584
+ response = @pdf_api.post_split_document(file_name, {format: "pdf", from: 1, to: 2})
585
+ assert(response, message="Failed to split document to parts.")
586
+ end
587
+
588
+ def test_get_text_items
589
+ file_name = "Sample-Annotation.pdf"
590
+ upload_file(file_name)
591
+
592
+ response = @pdf_api.get_text_items(file_name)
593
+ assert(response, message="Failed to read document text items.")
594
+ end
595
+
596
+ def test_get_page
597
+ file_name = "sample-input.pdf"
598
+ upload_file(file_name)
599
+
600
+ page_number = 1
601
+ response = @pdf_api.get_page(file_name, page_number)
602
+ assert(response, message="Failed to read document page info.")
603
+ end
604
+
605
+ def test_get_document
606
+ file_name = "Sample.pdf"
607
+ upload_file(file_name)
608
+
609
+ response = @pdf_api.get_document(file_name)
610
+ assert(response, message="Failed to read common document info.")
611
+ end
612
+
613
+ def test_get_image
614
+ file_name = "SampleImage.pdf"
615
+ upload_file(file_name)
616
+
617
+ page_number = 1
618
+ image_number = 1
619
+ response = @pdf_api.get_image(file_name, page_number, image_number)
620
+ assert(response, message="Failed to read document image by number.")
621
+ end
622
+
623
+ end