aspose_pdf_cloud 20.2.0 → 20.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +5 -4
- data/docs/Cell.md +3 -0
- data/docs/ImageFragment.md +15 -0
- data/docs/PdfApi.md +0 -3
- data/lib/aspose_pdf_cloud.rb +1 -0
- data/lib/aspose_pdf_cloud/api/pdf_api.rb +0 -9
- data/lib/aspose_pdf_cloud/models/cell.rb +36 -4
- data/lib/aspose_pdf_cloud/models/image_fragment.rb +283 -0
- data/lib/aspose_pdf_cloud/version.rb +1 -1
- data/test/pdf_tests.rb +115 -76
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1f4f395755c2160d5c2fde37eb255960fece4c95c0b9a4b4c4a83ec399fe1943
|
4
|
+
data.tar.gz: 40157c56345e6071e05d5eb23411aa3ceb058d41eaa61170e321070ebf794843
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c470535c09dc1070d2786dd6e118e84ec2e4b48d14ce04bf24912d400b599816ff9ae39ca4dc23fc9d61014116965191934b0e06c113ac373b2e2da92c5c3adc
|
7
|
+
data.tar.gz: 9ec85aaad2b5b33d29bb21aa7d6aaae554d04982c65a6ae75e1e3434db2f8b59c67cbe86aa88e5e813a2832424682f4ae9fc03cf68266da30db4e69439c8258e
|
data/README.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# Aspose.PDF Cloud
|
2
2
|
|
3
3
|
- API version: 3.0
|
4
|
-
- Package version: 20.
|
4
|
+
- Package version: 20.4.0
|
5
5
|
|
6
6
|
[Aspose.PDF Cloud](https://products.aspose.cloud/pdf) is a true REST API that enables you to perform a wide range of document processing operations including creation, manipulation, conversion and rendering of Pdf documents in the cloud.
|
7
7
|
|
@@ -24,15 +24,15 @@ gem build aspose_pdf_cloud.gemspec
|
|
24
24
|
Then either install the gem locally:
|
25
25
|
|
26
26
|
```shell
|
27
|
-
gem install ./aspose_pdf_cloud-20.
|
27
|
+
gem install ./aspose_pdf_cloud-20.4.0.gem
|
28
28
|
```
|
29
|
-
(for development, run `gem install --dev ./aspose_pdf_cloud-20.
|
29
|
+
(for development, run `gem install --dev ./aspose_pdf_cloud-20.4.0.gem` to install the development dependencies)
|
30
30
|
|
31
31
|
or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
|
32
32
|
|
33
33
|
Finally add this to the Gemfile:
|
34
34
|
|
35
|
-
gem 'aspose_pdf_cloud', '~> 20.
|
35
|
+
gem 'aspose_pdf_cloud', '~> 20.4.0'
|
36
36
|
|
37
37
|
### Install from Git
|
38
38
|
|
@@ -498,6 +498,7 @@ Class | Method | HTTP request | Description
|
|
498
498
|
- [AsposePdfCloud::HorizontalAlignment](docs/HorizontalAlignment.md)
|
499
499
|
- [AsposePdfCloud::HtmlDocumentType](docs/HtmlDocumentType.md)
|
500
500
|
- [AsposePdfCloud::HtmlMarkupGenerationModes](docs/HtmlMarkupGenerationModes.md)
|
501
|
+
- [AsposePdfCloud::ImageFragment](docs/ImageFragment.md)
|
501
502
|
- [AsposePdfCloud::ImageSrcType](docs/ImageSrcType.md)
|
502
503
|
- [AsposePdfCloud::ImageTemplate](docs/ImageTemplate.md)
|
503
504
|
- [AsposePdfCloud::ImageTemplatesRequest](docs/ImageTemplatesRequest.md)
|
data/docs/Cell.md
CHANGED
@@ -9,6 +9,7 @@ Name | Type | Description | Notes
|
|
9
9
|
**border** | [**BorderInfo**](BorderInfo.md) | Gets or sets the border. | [optional]
|
10
10
|
**background_color** | [**Color**](Color.md) | Gets or sets the background color. | [optional]
|
11
11
|
**background_image_file** | **String** | Gets or sets the background image file. | [optional]
|
12
|
+
**background_image_storage_file** | **String** | Gets or sets path of the background image file from storage. | [optional]
|
12
13
|
**alignment** | [**HorizontalAlignment**](HorizontalAlignment.md) | Gets or sets the alignment. | [optional]
|
13
14
|
**default_cell_text_state** | [**TextState**](TextState.md) | Gets or sets the default cell text state. | [optional]
|
14
15
|
**paragraphs** | [**Array<TextRect>**](TextRect.md) | Gets or sets the cell's formatted text. | [optional]
|
@@ -17,5 +18,7 @@ Name | Type | Description | Notes
|
|
17
18
|
**col_span** | **Integer** | Gets or sets the column span. | [optional]
|
18
19
|
**row_span** | **Integer** | Gets or sets the row span. | [optional]
|
19
20
|
**width** | **Float** | Gets or sets the column width. | [optional]
|
21
|
+
**html_fragment** | **String** | Gets or sets Html fragment. | [optional]
|
22
|
+
**images** | [**Array<ImageFragment>**](ImageFragment.md) | Gets or sets ImageFragment list. | [optional]
|
20
23
|
|
21
24
|
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# AsposePdfCloud::ImageFragment
|
2
|
+
Represents Image Fragment DTO.
|
3
|
+
|
4
|
+
## Properties
|
5
|
+
Name | Type | Description | Notes
|
6
|
+
------------ | ------------- | ------------- | -------------
|
7
|
+
**image_file** | **String** | Gets or sets full storage path of image. |
|
8
|
+
**fix_width** | **Float** | Gets or sets fix width of the image. | [optional]
|
9
|
+
**fix_height** | **Float** | Gets or sets fix height of the image. | [optional]
|
10
|
+
**horizontal_alignment** | [**HorizontalAlignment**](HorizontalAlignment.md) | Gets or sets horizontal alignment of the image. | [optional]
|
11
|
+
**vertical_alignment** | [**VerticalAlignment**](VerticalAlignment.md) | Gets or sets vertical alignment of the image. | [optional]
|
12
|
+
**image_scale** | **Float** | Gets or sets ImageScale of the image. | [optional]
|
13
|
+
**margin** | [**MarginInfo**](MarginInfo.md) | Gets or sets Margin of the image. | [optional]
|
14
|
+
|
15
|
+
|
data/docs/PdfApi.md
CHANGED
@@ -4000,7 +4000,6 @@ Converts PDF document (located on storage) to LaTeX format and returns resulting
|
|
4000
4000
|
Name | Type | Description | Notes
|
4001
4001
|
------------- | ------------- | ------------- | -------------
|
4002
4002
|
**name** | **String**| The document name. |
|
4003
|
-
**pages_count** | **Integer**| Pages count. | [optional]
|
4004
4003
|
**folder** | **String**| The document folder. | [optional]
|
4005
4004
|
**storage** | **String**| The document storage. | [optional]
|
4006
4005
|
|
@@ -8043,7 +8042,6 @@ Converts PDF document (in request content) to LaTeX format and uploads resulting
|
|
8043
8042
|
Name | Type | Description | Notes
|
8044
8043
|
------------- | ------------- | ------------- | -------------
|
8045
8044
|
**out_path** | **String**| Full resulting filename (ex. /folder1/folder2/result.tex) |
|
8046
|
-
**pages_count** | **Integer**| Pages count. | [optional]
|
8047
8045
|
**storage** | **String**| The document storage. | [optional]
|
8048
8046
|
**file** | **File**| A file to be converted. | [optional]
|
8049
8047
|
|
@@ -8424,7 +8422,6 @@ Name | Type | Description | Notes
|
|
8424
8422
|
------------- | ------------- | ------------- | -------------
|
8425
8423
|
**name** | **String**| The document name. |
|
8426
8424
|
**out_path** | **String**| Full resulting filename (ex. /folder1/folder2/result.tex) |
|
8427
|
-
**pages_count** | **Integer**| Pages count. | [optional]
|
8428
8425
|
**folder** | **String**| The document folder. | [optional]
|
8429
8426
|
**storage** | **String**| The document storage. | [optional]
|
8430
8427
|
|
data/lib/aspose_pdf_cloud.rb
CHANGED
@@ -72,6 +72,7 @@ require_relative 'aspose_pdf_cloud/models/graph_info'
|
|
72
72
|
require_relative 'aspose_pdf_cloud/models/horizontal_alignment'
|
73
73
|
require_relative 'aspose_pdf_cloud/models/html_document_type'
|
74
74
|
require_relative 'aspose_pdf_cloud/models/html_markup_generation_modes'
|
75
|
+
require_relative 'aspose_pdf_cloud/models/image_fragment'
|
75
76
|
require_relative 'aspose_pdf_cloud/models/image_src_type'
|
76
77
|
require_relative 'aspose_pdf_cloud/models/image_template'
|
77
78
|
require_relative 'aspose_pdf_cloud/models/image_templates_request'
|
@@ -11222,7 +11222,6 @@ module AsposePdfCloud
|
|
11222
11222
|
#
|
11223
11223
|
# @param name The document name.
|
11224
11224
|
# @param [Hash] opts the optional parameters
|
11225
|
-
# @option opts [Integer] :pages_count Pages count.
|
11226
11225
|
# @option opts [String] :folder The document folder.
|
11227
11226
|
# @option opts [String] :storage The document storage.
|
11228
11227
|
# @return [File]
|
@@ -11243,7 +11242,6 @@ module AsposePdfCloud
|
|
11243
11242
|
#
|
11244
11243
|
# @param name The document name.
|
11245
11244
|
# @param [Hash] opts the optional parameters
|
11246
|
-
# @option opts [Integer] :pages_count Pages count.
|
11247
11245
|
# @option opts [String] :folder The document folder.
|
11248
11246
|
# @option opts [String] :storage The document storage.
|
11249
11247
|
# @return [Array<(File, Fixnum, Hash)>] File data, response status code and response headers
|
@@ -11260,7 +11258,6 @@ module AsposePdfCloud
|
|
11260
11258
|
|
11261
11259
|
# query parameters
|
11262
11260
|
query_params = {}
|
11263
|
-
query_params[:'pagesCount'] = opts[:'pages_count'] if !opts[:'pages_count'].nil?
|
11264
11261
|
query_params[:'folder'] = opts[:'folder'] if !opts[:'folder'].nil?
|
11265
11262
|
query_params[:'storage'] = opts[:'storage'] if !opts[:'storage'].nil?
|
11266
11263
|
|
@@ -23991,7 +23988,6 @@ module AsposePdfCloud
|
|
23991
23988
|
#
|
23992
23989
|
# @param out_path Full resulting filename (ex. /folder1/folder2/result.tex)
|
23993
23990
|
# @param [Hash] opts the optional parameters
|
23994
|
-
# @option opts [Integer] :pages_count Pages count.
|
23995
23991
|
# @option opts [String] :storage The document storage.
|
23996
23992
|
# @option opts [File] :file A file to be converted.
|
23997
23993
|
# @return [AsposeResponse]
|
@@ -24012,7 +24008,6 @@ module AsposePdfCloud
|
|
24012
24008
|
#
|
24013
24009
|
# @param out_path Full resulting filename (ex. /folder1/folder2/result.tex)
|
24014
24010
|
# @param [Hash] opts the optional parameters
|
24015
|
-
# @option opts [Integer] :pages_count Pages count.
|
24016
24011
|
# @option opts [String] :storage The document storage.
|
24017
24012
|
# @option opts [File] :file A file to be converted.
|
24018
24013
|
# @return [Array<(AsposeResponse, Fixnum, Hash)>] AsposeResponse data, response status code and response headers
|
@@ -24030,7 +24025,6 @@ module AsposePdfCloud
|
|
24030
24025
|
# query parameters
|
24031
24026
|
query_params = {}
|
24032
24027
|
query_params[:'outPath'] = out_path
|
24033
|
-
query_params[:'pagesCount'] = opts[:'pages_count'] if !opts[:'pages_count'].nil?
|
24034
24028
|
query_params[:'storage'] = opts[:'storage'] if !opts[:'storage'].nil?
|
24035
24029
|
|
24036
24030
|
# header parameters
|
@@ -25214,7 +25208,6 @@ module AsposePdfCloud
|
|
25214
25208
|
# @param name The document name.
|
25215
25209
|
# @param out_path Full resulting filename (ex. /folder1/folder2/result.tex)
|
25216
25210
|
# @param [Hash] opts the optional parameters
|
25217
|
-
# @option opts [Integer] :pages_count Pages count.
|
25218
25211
|
# @option opts [String] :folder The document folder.
|
25219
25212
|
# @option opts [String] :storage The document storage.
|
25220
25213
|
# @return [AsposeResponse]
|
@@ -25236,7 +25229,6 @@ module AsposePdfCloud
|
|
25236
25229
|
# @param name The document name.
|
25237
25230
|
# @param out_path Full resulting filename (ex. /folder1/folder2/result.tex)
|
25238
25231
|
# @param [Hash] opts the optional parameters
|
25239
|
-
# @option opts [Integer] :pages_count Pages count.
|
25240
25232
|
# @option opts [String] :folder The document folder.
|
25241
25233
|
# @option opts [String] :storage The document storage.
|
25242
25234
|
# @return [Array<(AsposeResponse, Fixnum, Hash)>] AsposeResponse data, response status code and response headers
|
@@ -25258,7 +25250,6 @@ module AsposePdfCloud
|
|
25258
25250
|
# query parameters
|
25259
25251
|
query_params = {}
|
25260
25252
|
query_params[:'outPath'] = out_path
|
25261
|
-
query_params[:'pagesCount'] = opts[:'pages_count'] if !opts[:'pages_count'].nil?
|
25262
25253
|
query_params[:'folder'] = opts[:'folder'] if !opts[:'folder'].nil?
|
25263
25254
|
query_params[:'storage'] = opts[:'storage'] if !opts[:'storage'].nil?
|
25264
25255
|
|
@@ -40,6 +40,9 @@ module AsposePdfCloud
|
|
40
40
|
# Gets or sets the background image file.
|
41
41
|
attr_accessor :background_image_file
|
42
42
|
|
43
|
+
# Gets or sets path of the background image file from storage.
|
44
|
+
attr_accessor :background_image_storage_file
|
45
|
+
|
43
46
|
# Gets or sets the alignment.
|
44
47
|
attr_accessor :alignment
|
45
48
|
|
@@ -64,6 +67,12 @@ module AsposePdfCloud
|
|
64
67
|
# Gets or sets the column width.
|
65
68
|
attr_accessor :width
|
66
69
|
|
70
|
+
# Gets or sets Html fragment.
|
71
|
+
attr_accessor :html_fragment
|
72
|
+
|
73
|
+
# Gets or sets ImageFragment list.
|
74
|
+
attr_accessor :images
|
75
|
+
|
67
76
|
|
68
77
|
# Attribute mapping from ruby-style variable name to JSON key.
|
69
78
|
def self.attribute_map
|
@@ -73,6 +82,7 @@ module AsposePdfCloud
|
|
73
82
|
:'border' => :'Border',
|
74
83
|
:'background_color' => :'BackgroundColor',
|
75
84
|
:'background_image_file' => :'BackgroundImageFile',
|
85
|
+
:'background_image_storage_file' => :'BackgroundImageStorageFile',
|
76
86
|
:'alignment' => :'Alignment',
|
77
87
|
:'default_cell_text_state' => :'DefaultCellTextState',
|
78
88
|
:'paragraphs' => :'Paragraphs',
|
@@ -80,7 +90,9 @@ module AsposePdfCloud
|
|
80
90
|
:'vertical_alignment' => :'VerticalAlignment',
|
81
91
|
:'col_span' => :'ColSpan',
|
82
92
|
:'row_span' => :'RowSpan',
|
83
|
-
:'width' => :'Width'
|
93
|
+
:'width' => :'Width',
|
94
|
+
:'html_fragment' => :'HtmlFragment',
|
95
|
+
:'images' => :'Images'
|
84
96
|
}
|
85
97
|
end
|
86
98
|
|
@@ -92,6 +104,7 @@ module AsposePdfCloud
|
|
92
104
|
:'border' => :'BorderInfo',
|
93
105
|
:'background_color' => :'Color',
|
94
106
|
:'background_image_file' => :'String',
|
107
|
+
:'background_image_storage_file' => :'String',
|
95
108
|
:'alignment' => :'HorizontalAlignment',
|
96
109
|
:'default_cell_text_state' => :'TextState',
|
97
110
|
:'paragraphs' => :'Array<TextRect>',
|
@@ -99,7 +112,9 @@ module AsposePdfCloud
|
|
99
112
|
:'vertical_alignment' => :'VerticalAlignment',
|
100
113
|
:'col_span' => :'Integer',
|
101
114
|
:'row_span' => :'Integer',
|
102
|
-
:'width' => :'Float'
|
115
|
+
:'width' => :'Float',
|
116
|
+
:'html_fragment' => :'String',
|
117
|
+
:'images' => :'Array<ImageFragment>'
|
103
118
|
}
|
104
119
|
end
|
105
120
|
|
@@ -131,6 +146,10 @@ module AsposePdfCloud
|
|
131
146
|
self.background_image_file = attributes[:'BackgroundImageFile']
|
132
147
|
end
|
133
148
|
|
149
|
+
if attributes.has_key?(:'BackgroundImageStorageFile')
|
150
|
+
self.background_image_storage_file = attributes[:'BackgroundImageStorageFile']
|
151
|
+
end
|
152
|
+
|
134
153
|
if attributes.has_key?(:'Alignment')
|
135
154
|
self.alignment = attributes[:'Alignment']
|
136
155
|
end
|
@@ -165,6 +184,16 @@ module AsposePdfCloud
|
|
165
184
|
self.width = attributes[:'Width']
|
166
185
|
end
|
167
186
|
|
187
|
+
if attributes.has_key?(:'HtmlFragment')
|
188
|
+
self.html_fragment = attributes[:'HtmlFragment']
|
189
|
+
end
|
190
|
+
|
191
|
+
if attributes.has_key?(:'Images')
|
192
|
+
if (value = attributes[:'Images']).is_a?(Array)
|
193
|
+
self.images = value
|
194
|
+
end
|
195
|
+
end
|
196
|
+
|
168
197
|
end
|
169
198
|
|
170
199
|
# Show invalid properties with the reasons. Usually used together with valid?
|
@@ -190,6 +219,7 @@ module AsposePdfCloud
|
|
190
219
|
border == o.border &&
|
191
220
|
background_color == o.background_color &&
|
192
221
|
background_image_file == o.background_image_file &&
|
222
|
+
background_image_storage_file == o.background_image_storage_file &&
|
193
223
|
alignment == o.alignment &&
|
194
224
|
default_cell_text_state == o.default_cell_text_state &&
|
195
225
|
paragraphs == o.paragraphs &&
|
@@ -197,7 +227,9 @@ module AsposePdfCloud
|
|
197
227
|
vertical_alignment == o.vertical_alignment &&
|
198
228
|
col_span == o.col_span &&
|
199
229
|
row_span == o.row_span &&
|
200
|
-
width == o.width
|
230
|
+
width == o.width &&
|
231
|
+
html_fragment == o.html_fragment &&
|
232
|
+
images == o.images
|
201
233
|
end
|
202
234
|
|
203
235
|
# @see the `==` method
|
@@ -209,7 +241,7 @@ module AsposePdfCloud
|
|
209
241
|
# Calculates hash code according to all attributes.
|
210
242
|
# @return [Fixnum] Hash code
|
211
243
|
def hash
|
212
|
-
[is_no_border, margin, border, background_color, background_image_file, alignment, default_cell_text_state, paragraphs, is_word_wrapped, vertical_alignment, col_span, row_span, width].hash
|
244
|
+
[is_no_border, margin, border, background_color, background_image_file, background_image_storage_file, alignment, default_cell_text_state, paragraphs, is_word_wrapped, vertical_alignment, col_span, row_span, width, html_fragment, images].hash
|
213
245
|
end
|
214
246
|
|
215
247
|
# Builds the object from hash
|
@@ -0,0 +1,283 @@
|
|
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 Image Fragment DTO.
|
27
|
+
class ImageFragment
|
28
|
+
# Gets or sets full storage path of image.
|
29
|
+
attr_accessor :image_file
|
30
|
+
|
31
|
+
# Gets or sets fix width of the image.
|
32
|
+
attr_accessor :fix_width
|
33
|
+
|
34
|
+
# Gets or sets fix height of the image.
|
35
|
+
attr_accessor :fix_height
|
36
|
+
|
37
|
+
# Gets or sets horizontal alignment of the image.
|
38
|
+
attr_accessor :horizontal_alignment
|
39
|
+
|
40
|
+
# Gets or sets vertical alignment of the image.
|
41
|
+
attr_accessor :vertical_alignment
|
42
|
+
|
43
|
+
# Gets or sets ImageScale of the image.
|
44
|
+
attr_accessor :image_scale
|
45
|
+
|
46
|
+
# Gets or sets Margin of the image.
|
47
|
+
attr_accessor :margin
|
48
|
+
|
49
|
+
|
50
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
51
|
+
def self.attribute_map
|
52
|
+
{
|
53
|
+
:'image_file' => :'ImageFile',
|
54
|
+
:'fix_width' => :'FixWidth',
|
55
|
+
:'fix_height' => :'FixHeight',
|
56
|
+
:'horizontal_alignment' => :'HorizontalAlignment',
|
57
|
+
:'vertical_alignment' => :'VerticalAlignment',
|
58
|
+
:'image_scale' => :'ImageScale',
|
59
|
+
:'margin' => :'Margin'
|
60
|
+
}
|
61
|
+
end
|
62
|
+
|
63
|
+
# Attribute type mapping.
|
64
|
+
def self.swagger_types
|
65
|
+
{
|
66
|
+
:'image_file' => :'String',
|
67
|
+
:'fix_width' => :'Float',
|
68
|
+
:'fix_height' => :'Float',
|
69
|
+
:'horizontal_alignment' => :'HorizontalAlignment',
|
70
|
+
:'vertical_alignment' => :'VerticalAlignment',
|
71
|
+
:'image_scale' => :'Float',
|
72
|
+
:'margin' => :'MarginInfo'
|
73
|
+
}
|
74
|
+
end
|
75
|
+
|
76
|
+
# Initializes the object
|
77
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
78
|
+
def initialize(attributes = {})
|
79
|
+
return unless attributes.is_a?(Hash)
|
80
|
+
|
81
|
+
# convert string to symbol for hash key
|
82
|
+
attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
|
83
|
+
|
84
|
+
if attributes.has_key?(:'ImageFile')
|
85
|
+
self.image_file = attributes[:'ImageFile']
|
86
|
+
end
|
87
|
+
|
88
|
+
if attributes.has_key?(:'FixWidth')
|
89
|
+
self.fix_width = attributes[:'FixWidth']
|
90
|
+
end
|
91
|
+
|
92
|
+
if attributes.has_key?(:'FixHeight')
|
93
|
+
self.fix_height = attributes[:'FixHeight']
|
94
|
+
end
|
95
|
+
|
96
|
+
if attributes.has_key?(:'HorizontalAlignment')
|
97
|
+
self.horizontal_alignment = attributes[:'HorizontalAlignment']
|
98
|
+
end
|
99
|
+
|
100
|
+
if attributes.has_key?(:'VerticalAlignment')
|
101
|
+
self.vertical_alignment = attributes[:'VerticalAlignment']
|
102
|
+
end
|
103
|
+
|
104
|
+
if attributes.has_key?(:'ImageScale')
|
105
|
+
self.image_scale = attributes[:'ImageScale']
|
106
|
+
end
|
107
|
+
|
108
|
+
if attributes.has_key?(:'Margin')
|
109
|
+
self.margin = attributes[:'Margin']
|
110
|
+
end
|
111
|
+
|
112
|
+
end
|
113
|
+
|
114
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
115
|
+
# @return Array for valid properies with the reasons
|
116
|
+
def list_invalid_properties
|
117
|
+
invalid_properties = Array.new
|
118
|
+
if @image_file.nil?
|
119
|
+
invalid_properties.push("invalid value for 'image_file', image_file cannot be nil.")
|
120
|
+
end
|
121
|
+
|
122
|
+
if @image_file.to_s.length < 1
|
123
|
+
invalid_properties.push("invalid value for 'image_file', the character length must be great than or equal to 1.")
|
124
|
+
end
|
125
|
+
|
126
|
+
return invalid_properties
|
127
|
+
end
|
128
|
+
|
129
|
+
# Check to see if the all the properties in the model are valid
|
130
|
+
# @return true if the model is valid
|
131
|
+
def valid?
|
132
|
+
return false if @image_file.nil?
|
133
|
+
return false if @image_file.to_s.length < 1
|
134
|
+
return true
|
135
|
+
end
|
136
|
+
|
137
|
+
# Custom attribute writer method with validation
|
138
|
+
# @param [Object] image_file Value to be assigned
|
139
|
+
def image_file=(image_file)
|
140
|
+
if image_file.nil?
|
141
|
+
fail ArgumentError, "image_file cannot be nil"
|
142
|
+
end
|
143
|
+
|
144
|
+
if image_file.to_s.length < 1
|
145
|
+
fail ArgumentError, "invalid value for 'image_file', the character length must be great than or equal to 1."
|
146
|
+
end
|
147
|
+
|
148
|
+
@image_file = image_file
|
149
|
+
end
|
150
|
+
|
151
|
+
# Checks equality by comparing each attribute.
|
152
|
+
# @param [Object] Object to be compared
|
153
|
+
def ==(o)
|
154
|
+
return true if self.equal?(o)
|
155
|
+
self.class == o.class &&
|
156
|
+
image_file == o.image_file &&
|
157
|
+
fix_width == o.fix_width &&
|
158
|
+
fix_height == o.fix_height &&
|
159
|
+
horizontal_alignment == o.horizontal_alignment &&
|
160
|
+
vertical_alignment == o.vertical_alignment &&
|
161
|
+
image_scale == o.image_scale &&
|
162
|
+
margin == o.margin
|
163
|
+
end
|
164
|
+
|
165
|
+
# @see the `==` method
|
166
|
+
# @param [Object] Object to be compared
|
167
|
+
def eql?(o)
|
168
|
+
self == o
|
169
|
+
end
|
170
|
+
|
171
|
+
# Calculates hash code according to all attributes.
|
172
|
+
# @return [Fixnum] Hash code
|
173
|
+
def hash
|
174
|
+
[image_file, fix_width, fix_height, horizontal_alignment, vertical_alignment, image_scale, margin].hash
|
175
|
+
end
|
176
|
+
|
177
|
+
# Builds the object from hash
|
178
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
179
|
+
# @return [Object] Returns the model itself
|
180
|
+
def build_from_hash(attributes)
|
181
|
+
return nil unless attributes.is_a?(Hash)
|
182
|
+
self.class.swagger_types.each_pair do |key, type|
|
183
|
+
if type =~ /\AArray<(.*)>/i
|
184
|
+
# check to ensure the input is an array given that the the attribute
|
185
|
+
# is documented as an array but the input is not
|
186
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
187
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
|
188
|
+
end
|
189
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
190
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
191
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
192
|
+
end
|
193
|
+
|
194
|
+
self
|
195
|
+
end
|
196
|
+
|
197
|
+
# Deserializes the data based on type
|
198
|
+
# @param string type Data type
|
199
|
+
# @param string value Value to be deserialized
|
200
|
+
# @return [Object] Deserialized data
|
201
|
+
def _deserialize(type, value)
|
202
|
+
case type.to_sym
|
203
|
+
when :DateTime
|
204
|
+
DateTime.parse(value)
|
205
|
+
when :Date
|
206
|
+
Date.parse(value)
|
207
|
+
when :String
|
208
|
+
value.to_s
|
209
|
+
when :Integer
|
210
|
+
value.to_i
|
211
|
+
when :Float
|
212
|
+
value.to_f
|
213
|
+
when :BOOLEAN
|
214
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
215
|
+
true
|
216
|
+
else
|
217
|
+
false
|
218
|
+
end
|
219
|
+
when :Object
|
220
|
+
# generic object (usually a Hash), return directly
|
221
|
+
value
|
222
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
223
|
+
inner_type = Regexp.last_match[:inner_type]
|
224
|
+
value.map { |v| _deserialize(inner_type, v) }
|
225
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
226
|
+
k_type = Regexp.last_match[:k_type]
|
227
|
+
v_type = Regexp.last_match[:v_type]
|
228
|
+
{}.tap do |hash|
|
229
|
+
value.each do |k, v|
|
230
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
231
|
+
end
|
232
|
+
end
|
233
|
+
else # model
|
234
|
+
temp_model = AsposePdfCloud.const_get(type).new
|
235
|
+
temp_model.build_from_hash(value)
|
236
|
+
end
|
237
|
+
end
|
238
|
+
|
239
|
+
# Returns the string representation of the object
|
240
|
+
# @return [String] String presentation of the object
|
241
|
+
def to_s
|
242
|
+
to_hash.to_s
|
243
|
+
end
|
244
|
+
|
245
|
+
# to_body is an alias to to_hash (backward compatibility)
|
246
|
+
# @return [Hash] Returns the object in the form of hash
|
247
|
+
def to_body
|
248
|
+
to_hash
|
249
|
+
end
|
250
|
+
|
251
|
+
# Returns the object in the form of hash
|
252
|
+
# @return [Hash] Returns the object in the form of hash
|
253
|
+
def to_hash
|
254
|
+
hash = {}
|
255
|
+
self.class.attribute_map.each_pair do |attr, param|
|
256
|
+
value = self.send(attr)
|
257
|
+
next if value.nil?
|
258
|
+
hash[param] = _to_hash(value)
|
259
|
+
end
|
260
|
+
hash
|
261
|
+
end
|
262
|
+
|
263
|
+
# Outputs non-array value in the form of hash
|
264
|
+
# For object, use to_hash. Otherwise, just return the value
|
265
|
+
# @param [Object] value Any valid value
|
266
|
+
# @return [Hash] Returns the value in the form of hash
|
267
|
+
def _to_hash(value)
|
268
|
+
if value.is_a?(Array)
|
269
|
+
value.compact.map{ |v| _to_hash(v) }
|
270
|
+
elsif value.is_a?(Hash)
|
271
|
+
{}.tap do |hash|
|
272
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
273
|
+
end
|
274
|
+
elsif value.respond_to? :to_hash
|
275
|
+
value.to_hash
|
276
|
+
else
|
277
|
+
value
|
278
|
+
end
|
279
|
+
end
|
280
|
+
|
281
|
+
end
|
282
|
+
|
283
|
+
end
|
data/test/pdf_tests.rb
CHANGED
@@ -389,82 +389,121 @@ class PdfTests < Minitest::Test
|
|
389
389
|
end
|
390
390
|
|
391
391
|
def __draw_table
|
392
|
-
|
393
|
-
|
394
|
-
|
395
|
-
|
396
|
-
|
397
|
-
|
398
|
-
|
399
|
-
|
400
|
-
|
401
|
-
|
402
|
-
|
403
|
-
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
|
421
|
-
|
422
|
-
|
423
|
-
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
|
428
|
-
|
429
|
-
|
430
|
-
|
431
|
-
|
432
|
-
|
433
|
-
|
434
|
-
|
435
|
-
|
436
|
-
|
437
|
-
|
438
|
-
|
439
|
-
|
440
|
-
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
449
|
-
|
450
|
-
|
451
|
-
|
452
|
-
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
|
467
|
-
|
392
|
+
colorBlack = Color.new({:A => 0xFF, :R => 0, :G => 0, :B => 0})
|
393
|
+
borderGraphInfo = GraphInfo.new({:Color => colorBlack, :LineWidth => 1})
|
394
|
+
image = 'Penguins.jpg'
|
395
|
+
table = Table.new({
|
396
|
+
:Top => 100,
|
397
|
+
:ColumnWidths => '150 300',
|
398
|
+
:IsBordersIncluded => true,
|
399
|
+
:DefaultCellTextState => TextState.new({:FontSize => 11, :ForegroundColor => Color.new({:A => 255, :R => 0, :G => 255, :B => 0})}),
|
400
|
+
:Margin => MarginInfo.new({
|
401
|
+
:Bottom => 10,
|
402
|
+
:Left => 10,
|
403
|
+
:Right => 10,
|
404
|
+
:Top => 10
|
405
|
+
}),
|
406
|
+
:Border => BorderInfo.new({
|
407
|
+
:Top => borderGraphInfo,
|
408
|
+
:Left => borderGraphInfo
|
409
|
+
}),
|
410
|
+
:DefaultCellBorder => BorderInfo.new({
|
411
|
+
:Right => borderGraphInfo,
|
412
|
+
}),
|
413
|
+
:DefaultCellPadding => MarginInfo.new({
|
414
|
+
:Top => 5,
|
415
|
+
:Left => 5,
|
416
|
+
:Right => 5,
|
417
|
+
:Bottom => 5,
|
418
|
+
}),
|
419
|
+
:Rows => [
|
420
|
+
Row.new({
|
421
|
+
:MinRowHeight => 100,
|
422
|
+
:Border => BorderInfo.new({
|
423
|
+
:Bottom => borderGraphInfo,
|
424
|
+
}),
|
425
|
+
:Cells => [
|
426
|
+
Cell.new({
|
427
|
+
:Paragraphs => [
|
428
|
+
TextRect.new({
|
429
|
+
:Text => 'BackgroundImageStorageFile field, from storage file',
|
430
|
+
:HorizontalAlignment => HorizontalAlignment::CENTER,
|
431
|
+
:TextState => TextState.new({:FontSize => 10, :ForegroundColor => Color.new({:A => 0xff, :R => 0x3d, :G => 0x8e, :B =>0xc4})}),
|
432
|
+
})
|
433
|
+
]
|
434
|
+
}),
|
435
|
+
Cell.new({
|
436
|
+
:BackgroundColor => colorBlack,
|
437
|
+
:BackgroundImageStorageFile => "#{@temp_folder}/#{image}"
|
438
|
+
})
|
439
|
+
]
|
440
|
+
}),
|
441
|
+
Row.new({
|
442
|
+
:MinRowHeight => 100,
|
443
|
+
:Border => BorderInfo.new({:Bottom => borderGraphInfo}),
|
444
|
+
:Cells => [
|
445
|
+
Cell.new({
|
446
|
+
:Paragraphs => [
|
447
|
+
TextRect.new({
|
448
|
+
:Text => 'HtmlFragment',
|
449
|
+
:HorizontalAlignment => HorizontalAlignment::CENTER,
|
450
|
+
:TextState => TextState.new({
|
451
|
+
:FontSize => 10,
|
452
|
+
:ForegroundColor => Color.new({:A => 255, :R => 0x3d, :G => 0x8e, :B => 0xc4}),
|
453
|
+
})
|
454
|
+
})
|
455
|
+
]
|
456
|
+
}),
|
457
|
+
Cell.new({:HtmlFragment => '<ul><li>First</li><li>Second</li></ul>'}),
|
458
|
+
]
|
459
|
+
}),
|
460
|
+
Row.new({
|
461
|
+
:FixedRowHeight => 100,
|
462
|
+
:Border => BorderInfo.new({:Bottom => borderGraphInfo}),
|
463
|
+
:Cells => [
|
464
|
+
Cell.new({
|
465
|
+
:Paragraphs => [
|
466
|
+
TextRect.new({:Text => 'FixedRowHeight = 100'}),
|
467
|
+
TextRect.new({
|
468
|
+
:Text => 'Images field, from storage file, without Margin and Size',
|
469
|
+
:HorizontalAlignment => HorizontalAlignment::CENTER,
|
470
|
+
:TextState => TextState.new({:FontSize => 10, :ForegroundColor => Color.new({:A => 255, :R => 0x3d, :G => 0x8e, :B => 0xc4})}),
|
471
|
+
})
|
472
|
+
]
|
473
|
+
}),
|
474
|
+
Cell.new({
|
475
|
+
:BackgroundColor => colorBlack,
|
476
|
+
:Images => [ImageFragment.new({ImageFile: "#{@temp_folder}/#{image}"})]
|
477
|
+
})
|
478
|
+
]
|
479
|
+
}),
|
480
|
+
Row.new({
|
481
|
+
:FixedRowHeight => 100,
|
482
|
+
:Border => BorderInfo.new({:Bottom => borderGraphInfo}),
|
483
|
+
:Cells => [
|
484
|
+
Cell.new({
|
485
|
+
:Paragraphs => [
|
486
|
+
TextRect.new({:Text => 'FixedRowHeight = 100'}),
|
487
|
+
TextRect.new({
|
488
|
+
:Text => 'Images field, from storage file, with no Margin and Size = 150x50',
|
489
|
+
:HorizontalAlignment => HorizontalAlignment::CENTER,
|
490
|
+
:TextState => TextState.new({:FontSize => 10, :ForegroundColor => Color.new({:A => 255, :R => 0x3d, :G => 0x8e, :B => 0xc4})})
|
491
|
+
})
|
492
|
+
]
|
493
|
+
}),
|
494
|
+
Cell.new({
|
495
|
+
:BackgroundColor => colorBlack,
|
496
|
+
:Images => [
|
497
|
+
ImageFragment.new({
|
498
|
+
:ImageFile => "#{@temp_folder}/#{image}",
|
499
|
+
:ImageScale => 0.1
|
500
|
+
})
|
501
|
+
]
|
502
|
+
})
|
503
|
+
]
|
504
|
+
})
|
505
|
+
]
|
506
|
+
})
|
468
507
|
table
|
469
508
|
end
|
470
509
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aspose_pdf_cloud
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 20.
|
4
|
+
version: 20.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Aspose PDF Cloud
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-04-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: json
|
@@ -176,6 +176,7 @@ files:
|
|
176
176
|
- docs/HtmlMarkupGenerationModes.md
|
177
177
|
- docs/Image.md
|
178
178
|
- docs/ImageFooter.md
|
179
|
+
- docs/ImageFragment.md
|
179
180
|
- docs/ImageHeader.md
|
180
181
|
- docs/ImageResponse.md
|
181
182
|
- docs/ImageSrcType.md
|
@@ -458,6 +459,7 @@ files:
|
|
458
459
|
- lib/aspose_pdf_cloud/models/html_markup_generation_modes.rb
|
459
460
|
- lib/aspose_pdf_cloud/models/image.rb
|
460
461
|
- lib/aspose_pdf_cloud/models/image_footer.rb
|
462
|
+
- lib/aspose_pdf_cloud/models/image_fragment.rb
|
461
463
|
- lib/aspose_pdf_cloud/models/image_header.rb
|
462
464
|
- lib/aspose_pdf_cloud/models/image_response.rb
|
463
465
|
- lib/aspose_pdf_cloud/models/image_src_type.rb
|