pdfcrowd 6.0.0 → 6.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/pdfcrowd.rb +113 -91
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cdfb803513e340c4d125a04c7af3c2bb2aa9d7ada652a9636c965eacf964d4cc
|
4
|
+
data.tar.gz: 3f66c527fc9db82d72e2576a240b1a435ee7a72edb60d31f4fc4c012d2457617
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9fa86e54a212cfb73b338ec55b30411c054cf58827fa619dab8b7aca68e3e7e1fb6e8bb0d451919c8d6f3020223d7d2333fdba8d7442de16fd040ee3227bae25
|
7
|
+
data.tar.gz: a96652ca6a25ce06aba4fad0f9643a5ce12b5825aa7af87618d5d9e0b9436436a3d7ce012d4516671164bc4bf12dd7cebf60e28c4b33cad16a4a2ca4215872e5
|
data/lib/pdfcrowd.rb
CHANGED
@@ -530,7 +530,7 @@ end
|
|
530
530
|
module Pdfcrowd
|
531
531
|
HOST = ENV["PDFCROWD_HOST"] || 'api.pdfcrowd.com'
|
532
532
|
MULTIPART_BOUNDARY = '----------ThIs_Is_tHe_bOUnDary_$'
|
533
|
-
CLIENT_VERSION = '6.
|
533
|
+
CLIENT_VERSION = '6.1.0'
|
534
534
|
|
535
535
|
class ConnectionHelper
|
536
536
|
def initialize(user_name, api_key)
|
@@ -541,7 +541,7 @@ module Pdfcrowd
|
|
541
541
|
|
542
542
|
setProxy(nil, nil, nil, nil)
|
543
543
|
setUseHttp(false)
|
544
|
-
setUserAgent('pdfcrowd_ruby_client/6.
|
544
|
+
setUserAgent('pdfcrowd_ruby_client/6.1.0 (https://pdfcrowd.com)')
|
545
545
|
|
546
546
|
@retry_count = 1
|
547
547
|
@converter_version = '24.04'
|
@@ -1096,15 +1096,6 @@ module Pdfcrowd
|
|
1096
1096
|
self
|
1097
1097
|
end
|
1098
1098
|
|
1099
|
-
# Set an offset between physical and logical page numbers.
|
1100
|
-
#
|
1101
|
-
# * +offset+ - Integer specifying page offset.
|
1102
|
-
# * *Returns* - The converter object.
|
1103
|
-
def setPageNumberingOffset(offset)
|
1104
|
-
@fields['page_numbering_offset'] = offset
|
1105
|
-
self
|
1106
|
-
end
|
1107
|
-
|
1108
1099
|
# Set the viewport width for formatting the HTML content when generating a PDF. By specifying a viewport width, you can control how the content is rendered, ensuring it mimics the appearance on various devices or matches specific design requirements.
|
1109
1100
|
#
|
1110
1101
|
# * +width+ - The width of the viewport. The value must be "balanced", "small", "medium", "large", "extra-large", or a number in the range 96-65000.
|
@@ -1144,86 +1135,6 @@ module Pdfcrowd
|
|
1144
1135
|
self
|
1145
1136
|
end
|
1146
1137
|
|
1147
|
-
# Set the top left X coordinate of the content area. It is relative to the top left X coordinate of the print area.
|
1148
|
-
#
|
1149
|
-
# * +x+ - The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt". It may contain a negative value.
|
1150
|
-
# * *Returns* - The converter object.
|
1151
|
-
def setContentAreaX(x)
|
1152
|
-
unless /(?i)^0$|^\-?[0-9]*\.?[0-9]+(pt|px|mm|cm|in)$/.match(x)
|
1153
|
-
raise Error.new(Pdfcrowd.create_invalid_value_message(x, "setContentAreaX", "html-to-pdf", "The value must be specified in inches \"in\", millimeters \"mm\", centimeters \"cm\", pixels \"px\", or points \"pt\". It may contain a negative value.", "set_content_area_x"), 470);
|
1154
|
-
end
|
1155
|
-
|
1156
|
-
@fields['content_area_x'] = x
|
1157
|
-
self
|
1158
|
-
end
|
1159
|
-
|
1160
|
-
# Set the top left Y coordinate of the content area. It is relative to the top left Y coordinate of the print area.
|
1161
|
-
#
|
1162
|
-
# * +y+ - The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt". It may contain a negative value.
|
1163
|
-
# * *Returns* - The converter object.
|
1164
|
-
def setContentAreaY(y)
|
1165
|
-
unless /(?i)^0$|^\-?[0-9]*\.?[0-9]+(pt|px|mm|cm|in)$/.match(y)
|
1166
|
-
raise Error.new(Pdfcrowd.create_invalid_value_message(y, "setContentAreaY", "html-to-pdf", "The value must be specified in inches \"in\", millimeters \"mm\", centimeters \"cm\", pixels \"px\", or points \"pt\". It may contain a negative value.", "set_content_area_y"), 470);
|
1167
|
-
end
|
1168
|
-
|
1169
|
-
@fields['content_area_y'] = y
|
1170
|
-
self
|
1171
|
-
end
|
1172
|
-
|
1173
|
-
# Set the width of the content area. It should be at least 1 inch.
|
1174
|
-
#
|
1175
|
-
# * +width+ - The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt".
|
1176
|
-
# * *Returns* - The converter object.
|
1177
|
-
def setContentAreaWidth(width)
|
1178
|
-
unless /(?i)^0$|^[0-9]*\.?[0-9]+(pt|px|mm|cm|in)$/.match(width)
|
1179
|
-
raise Error.new(Pdfcrowd.create_invalid_value_message(width, "setContentAreaWidth", "html-to-pdf", "The value must be specified in inches \"in\", millimeters \"mm\", centimeters \"cm\", pixels \"px\", or points \"pt\".", "set_content_area_width"), 470);
|
1180
|
-
end
|
1181
|
-
|
1182
|
-
@fields['content_area_width'] = width
|
1183
|
-
self
|
1184
|
-
end
|
1185
|
-
|
1186
|
-
# Set the height of the content area. It should be at least 1 inch.
|
1187
|
-
#
|
1188
|
-
# * +height+ - The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt".
|
1189
|
-
# * *Returns* - The converter object.
|
1190
|
-
def setContentAreaHeight(height)
|
1191
|
-
unless /(?i)^0$|^[0-9]*\.?[0-9]+(pt|px|mm|cm|in)$/.match(height)
|
1192
|
-
raise Error.new(Pdfcrowd.create_invalid_value_message(height, "setContentAreaHeight", "html-to-pdf", "The value must be specified in inches \"in\", millimeters \"mm\", centimeters \"cm\", pixels \"px\", or points \"pt\".", "set_content_area_height"), 470);
|
1193
|
-
end
|
1194
|
-
|
1195
|
-
@fields['content_area_height'] = height
|
1196
|
-
self
|
1197
|
-
end
|
1198
|
-
|
1199
|
-
# Set the content area position and size. The content area enables to specify a web page area to be converted.
|
1200
|
-
#
|
1201
|
-
# * +x+ - Set the top left X coordinate of the content area. It is relative to the top left X coordinate of the print area. The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt". It may contain a negative value.
|
1202
|
-
# * +y+ - Set the top left Y coordinate of the content area. It is relative to the top left Y coordinate of the print area. The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt". It may contain a negative value.
|
1203
|
-
# * +width+ - Set the width of the content area. It should be at least 1 inch. The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt".
|
1204
|
-
# * +height+ - Set the height of the content area. It should be at least 1 inch. The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt".
|
1205
|
-
# * *Returns* - The converter object.
|
1206
|
-
def setContentArea(x, y, width, height)
|
1207
|
-
setContentAreaX(x)
|
1208
|
-
setContentAreaY(y)
|
1209
|
-
setContentAreaWidth(width)
|
1210
|
-
setContentAreaHeight(height)
|
1211
|
-
self
|
1212
|
-
end
|
1213
|
-
|
1214
|
-
# Specifies behavior in presence of CSS @page rules. It may affect the page size, margins and orientation.
|
1215
|
-
#
|
1216
|
-
# * +mode+ - The page rule mode. Allowed values are default, mode1, mode2.
|
1217
|
-
# * *Returns* - The converter object.
|
1218
|
-
def setCssPageRuleMode(mode)
|
1219
|
-
unless /(?i)^(default|mode1|mode2)$/.match(mode)
|
1220
|
-
raise Error.new(Pdfcrowd.create_invalid_value_message(mode, "setCssPageRuleMode", "html-to-pdf", "Allowed values are default, mode1, mode2.", "set_css_page_rule_mode"), 470);
|
1221
|
-
end
|
1222
|
-
|
1223
|
-
@fields['css_page_rule_mode'] = mode
|
1224
|
-
self
|
1225
|
-
end
|
1226
|
-
|
1227
1138
|
# Specifies which blank pages to exclude from the output document.
|
1228
1139
|
#
|
1229
1140
|
# * +pages+ - The empty page behavior. Allowed values are trailing, all, none.
|
@@ -1381,6 +1292,15 @@ module Pdfcrowd
|
|
1381
1292
|
self
|
1382
1293
|
end
|
1383
1294
|
|
1295
|
+
# Set an offset between physical and logical page numbers.
|
1296
|
+
#
|
1297
|
+
# * +offset+ - Integer specifying page offset.
|
1298
|
+
# * *Returns* - The converter object.
|
1299
|
+
def setPageNumberingOffset(offset)
|
1300
|
+
@fields['page_numbering_offset'] = offset
|
1301
|
+
self
|
1302
|
+
end
|
1303
|
+
|
1384
1304
|
# Apply a watermark to each page of the output PDF file. A watermark can be either a PDF or an image. If a multi-page file (PDF or TIFF) is used, the first page is used as the watermark.
|
1385
1305
|
#
|
1386
1306
|
# * +watermark+ - The file path to a local file. The file must exist and not be empty.
|
@@ -1666,6 +1586,19 @@ module Pdfcrowd
|
|
1666
1586
|
self
|
1667
1587
|
end
|
1668
1588
|
|
1589
|
+
# Specifies behavior in presence of CSS @page rules. It may affect the page size, margins and orientation.
|
1590
|
+
#
|
1591
|
+
# * +mode+ - The page rule mode. Allowed values are default, mode1, mode2.
|
1592
|
+
# * *Returns* - The converter object.
|
1593
|
+
def setCssPageRuleMode(mode)
|
1594
|
+
unless /(?i)^(default|mode1|mode2)$/.match(mode)
|
1595
|
+
raise Error.new(Pdfcrowd.create_invalid_value_message(mode, "setCssPageRuleMode", "html-to-pdf", "Allowed values are default, mode1, mode2.", "set_css_page_rule_mode"), 470);
|
1596
|
+
end
|
1597
|
+
|
1598
|
+
@fields['css_page_rule_mode'] = mode
|
1599
|
+
self
|
1600
|
+
end
|
1601
|
+
|
1669
1602
|
# Apply custom CSS to the input HTML document. It allows you to modify the visual appearance and layout of your HTML content dynamically. Tip: Using !important in custom CSS provides a way to prioritize and override conflicting styles.
|
1670
1603
|
#
|
1671
1604
|
# * +css+ - A string containing valid CSS. The string must not be empty.
|
@@ -2358,6 +2291,73 @@ module Pdfcrowd
|
|
2358
2291
|
self
|
2359
2292
|
end
|
2360
2293
|
|
2294
|
+
# Set the top left X coordinate of the content area. It is relative to the top left X coordinate of the print area.
|
2295
|
+
#
|
2296
|
+
# * +x+ - The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt". It may contain a negative value.
|
2297
|
+
# * *Returns* - The converter object.
|
2298
|
+
def setContentAreaX(x)
|
2299
|
+
unless /(?i)^0$|^\-?[0-9]*\.?[0-9]+(pt|px|mm|cm|in)$/.match(x)
|
2300
|
+
raise Error.new(Pdfcrowd.create_invalid_value_message(x, "setContentAreaX", "html-to-pdf", "The value must be specified in inches \"in\", millimeters \"mm\", centimeters \"cm\", pixels \"px\", or points \"pt\". It may contain a negative value.", "set_content_area_x"), 470);
|
2301
|
+
end
|
2302
|
+
|
2303
|
+
@fields['content_area_x'] = x
|
2304
|
+
self
|
2305
|
+
end
|
2306
|
+
|
2307
|
+
# Set the top left Y coordinate of the content area. It is relative to the top left Y coordinate of the print area.
|
2308
|
+
#
|
2309
|
+
# * +y+ - The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt". It may contain a negative value.
|
2310
|
+
# * *Returns* - The converter object.
|
2311
|
+
def setContentAreaY(y)
|
2312
|
+
unless /(?i)^0$|^\-?[0-9]*\.?[0-9]+(pt|px|mm|cm|in)$/.match(y)
|
2313
|
+
raise Error.new(Pdfcrowd.create_invalid_value_message(y, "setContentAreaY", "html-to-pdf", "The value must be specified in inches \"in\", millimeters \"mm\", centimeters \"cm\", pixels \"px\", or points \"pt\". It may contain a negative value.", "set_content_area_y"), 470);
|
2314
|
+
end
|
2315
|
+
|
2316
|
+
@fields['content_area_y'] = y
|
2317
|
+
self
|
2318
|
+
end
|
2319
|
+
|
2320
|
+
# Set the width of the content area. It should be at least 1 inch.
|
2321
|
+
#
|
2322
|
+
# * +width+ - The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt".
|
2323
|
+
# * *Returns* - The converter object.
|
2324
|
+
def setContentAreaWidth(width)
|
2325
|
+
unless /(?i)^0$|^[0-9]*\.?[0-9]+(pt|px|mm|cm|in)$/.match(width)
|
2326
|
+
raise Error.new(Pdfcrowd.create_invalid_value_message(width, "setContentAreaWidth", "html-to-pdf", "The value must be specified in inches \"in\", millimeters \"mm\", centimeters \"cm\", pixels \"px\", or points \"pt\".", "set_content_area_width"), 470);
|
2327
|
+
end
|
2328
|
+
|
2329
|
+
@fields['content_area_width'] = width
|
2330
|
+
self
|
2331
|
+
end
|
2332
|
+
|
2333
|
+
# Set the height of the content area. It should be at least 1 inch.
|
2334
|
+
#
|
2335
|
+
# * +height+ - The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt".
|
2336
|
+
# * *Returns* - The converter object.
|
2337
|
+
def setContentAreaHeight(height)
|
2338
|
+
unless /(?i)^0$|^[0-9]*\.?[0-9]+(pt|px|mm|cm|in)$/.match(height)
|
2339
|
+
raise Error.new(Pdfcrowd.create_invalid_value_message(height, "setContentAreaHeight", "html-to-pdf", "The value must be specified in inches \"in\", millimeters \"mm\", centimeters \"cm\", pixels \"px\", or points \"pt\".", "set_content_area_height"), 470);
|
2340
|
+
end
|
2341
|
+
|
2342
|
+
@fields['content_area_height'] = height
|
2343
|
+
self
|
2344
|
+
end
|
2345
|
+
|
2346
|
+
# Set the content area position and size. The content area enables to specify a web page area to be converted.
|
2347
|
+
#
|
2348
|
+
# * +x+ - Set the top left X coordinate of the content area. It is relative to the top left X coordinate of the print area. The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt". It may contain a negative value.
|
2349
|
+
# * +y+ - Set the top left Y coordinate of the content area. It is relative to the top left Y coordinate of the print area. The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt". It may contain a negative value.
|
2350
|
+
# * +width+ - Set the width of the content area. It should be at least 1 inch. The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt".
|
2351
|
+
# * +height+ - Set the height of the content area. It should be at least 1 inch. The value must be specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt".
|
2352
|
+
# * *Returns* - The converter object.
|
2353
|
+
def setContentArea(x, y, width, height)
|
2354
|
+
setContentAreaX(x)
|
2355
|
+
setContentAreaY(y)
|
2356
|
+
setContentAreaWidth(width)
|
2357
|
+
setContentAreaHeight(height)
|
2358
|
+
self
|
2359
|
+
end
|
2360
|
+
|
2361
2361
|
# A 2D transformation matrix applied to the main contents on each page. The origin [0,0] is located at the top-left corner of the contents. The resolution is 72 dpi.
|
2362
2362
|
#
|
2363
2363
|
# * +matrix+ - A comma separated string of matrix elements: "scaleX,skewX,transX,skewY,scaleY,transY"
|
@@ -2426,6 +2426,28 @@ module Pdfcrowd
|
|
2426
2426
|
self
|
2427
2427
|
end
|
2428
2428
|
|
2429
|
+
# Allows to configure conversion via JSON. The configuration defines various page settings for individual PDF pages or ranges of pages. It provides flexibility in designing each page of the PDF, giving control over each page's size, header, footer etc. If a page or parameter is not explicitly specified, the system will use the default settings for that page or attribute. If a JSON configuration is provided, the settings in the JSON will take precedence over the global options. The structure of the JSON must be: pageSetup: An array of objects where each object defines the configuration for a specific page or range of pages. The following properties can be set for each page object: pages: A comma-separated list of page numbers or ranges. For example: 1-: from page 1 to the end of the document 2: only the 2nd page 2, 4, 6: pages 2, 4, and 6 2-5: pages 2 through 5 pageSize: The page size (optional). Possible values: A0, A1, A2, A3, A4, A5, A6, Letter. pageWidth: The width of the page (optional). pageHeight: The height of the page (optional). marginLeft: Left margin (optional). marginRight: Right margin (optional). marginTop: Top margin (optional). marginBottom: Bottom margin (optional). displayHeader: Header appearance (optional). Possible values: none: completely excluded space: only the content is excluded, the space is used content: the content is printed (default) displayFooter: Footer appearance (optional). Possible values: none: completely excluded space: only the content is excluded, the space is used content: the content is printed (default) headerHeight: Height of the header (optional). footerHeight: Height of the footer (optional). orientation: Page orientation, such as "portrait" or "landscape" (optional). Dimensions may be empty, 0 or specified in inches "in", millimeters "mm", centimeters "cm", pixels "px", or points "pt".
|
2430
|
+
#
|
2431
|
+
# * +json_string+ - The JSON string.
|
2432
|
+
# * *Returns* - The converter object.
|
2433
|
+
def setConversionConfig(json_string)
|
2434
|
+
@fields['conversion_config'] = json_string
|
2435
|
+
self
|
2436
|
+
end
|
2437
|
+
|
2438
|
+
# Allows to configure the conversion process via JSON file. See details of the JSON string.
|
2439
|
+
#
|
2440
|
+
# * +filepath+ - The file path to a local file. The file must exist and not be empty.
|
2441
|
+
# * *Returns* - The converter object.
|
2442
|
+
def setConversionConfigFile(filepath)
|
2443
|
+
if (!(File.file?(filepath) && !File.zero?(filepath)))
|
2444
|
+
raise Error.new(Pdfcrowd.create_invalid_value_message(filepath, "setConversionConfigFile", "html-to-pdf", "The file must exist and not be empty.", "set_conversion_config_file"), 470);
|
2445
|
+
end
|
2446
|
+
|
2447
|
+
@files['conversion_config_file'] = filepath
|
2448
|
+
self
|
2449
|
+
end
|
2450
|
+
|
2429
2451
|
# Set the converter version. Different versions may produce different output. Choose which one provides the best output for your case.
|
2430
2452
|
#
|
2431
2453
|
# * +version+ - The version identifier. Allowed values are 24.04, 20.10, 18.10, latest.
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pdfcrowd
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 6.
|
4
|
+
version: 6.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pdfcrowd Team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-09-10 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: The Pdfcrowd API lets you easily convert between HTML, PDF and various
|
14
14
|
image formats.
|