pdfcrowd 6.0.1 → 6.2.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/lib/pdfcrowd.rb +64 -16
- 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: 5ced48bdced7379753e37229aab427f954e8f072a8cbc1d7f9dd5fcec926db33
|
4
|
+
data.tar.gz: a00e3aec16dd5fcdc70534b28955ca2240095090c0b34235c90afdc75583082b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6f256d7dd7f6ca51472abe629e158238eaad99e2033f9ea8b05c21f9ab547de857f8d2463b573edaa071ed9bf47296f9afb6192452b78eec0b69b1020b8053ba
|
7
|
+
data.tar.gz: 7c31d569baf3b0a1dc81eb9966d10d517befdee64ed75021202e999a2155d60d57c7e6504178b508ec0eaf954cce9d44d6bef57bcf4075c296cd17a30d842f03
|
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.0
|
533
|
+
CLIENT_VERSION = '6.2.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.0
|
544
|
+
setUserAgent('pdfcrowd_ruby_client/6.2.0 (https://pdfcrowd.com)')
|
545
545
|
|
546
546
|
@retry_count = 1
|
547
547
|
@converter_version = '24.04'
|
@@ -1085,26 +1085,17 @@ module Pdfcrowd
|
|
1085
1085
|
|
1086
1086
|
# Set the page range to print.
|
1087
1087
|
#
|
1088
|
-
# * +pages+ - A comma separated list of page numbers or ranges.
|
1088
|
+
# * +pages+ - A comma separated list of page numbers or ranges. Special strings may be used, such as `odd`, `even` and `last`.
|
1089
1089
|
# * *Returns* - The converter object.
|
1090
1090
|
def setPrintPageRange(pages)
|
1091
|
-
unless /^(?:\s*(?:\d+|(?:\d*\s*\-\s*\d+)|(?:\d+\s*\-\s*\d*))\s*,\s*)*\s*(?:\d+|(?:\d*\s*\-\s*\d+)|(?:\d+\s*\-\s*\d*))\s*$/.match(pages)
|
1092
|
-
raise Error.new(Pdfcrowd.create_invalid_value_message(pages, "setPrintPageRange", "html-to-pdf", "A comma separated list of page numbers or ranges.", "set_print_page_range"), 470);
|
1091
|
+
unless /^(?:\s*(?:\d+|(?:\d*\s*\-\s*\d+)|(?:\d+\s*\-\s*\d*)|odd|even|last)\s*,\s*)*\s*(?:\d+|(?:\d*\s*\-\s*\d+)|(?:\d+\s*\-\s*\d*)|odd|even|last)\s*$/.match(pages)
|
1092
|
+
raise Error.new(Pdfcrowd.create_invalid_value_message(pages, "setPrintPageRange", "html-to-pdf", "A comma separated list of page numbers or ranges. Special strings may be used, such as `odd`, `even` and `last`.", "set_print_page_range"), 470);
|
1093
1093
|
end
|
1094
1094
|
|
1095
1095
|
@fields['print_page_range'] = pages
|
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.
|
@@ -1262,7 +1253,7 @@ module Pdfcrowd
|
|
1262
1253
|
self
|
1263
1254
|
end
|
1264
1255
|
|
1265
|
-
# The page header is not printed on the specified pages.
|
1256
|
+
# The page header content is not printed on the specified pages. To remove the entire header area, use the conversion config.
|
1266
1257
|
#
|
1267
1258
|
# * +pages+ - List of physical page numbers. Negative numbers count backwards from the last page: -1 is the last page, -2 is the last but one page, and so on. A comma separated list of page numbers.
|
1268
1259
|
# * *Returns* - The converter object.
|
@@ -1275,7 +1266,7 @@ module Pdfcrowd
|
|
1275
1266
|
self
|
1276
1267
|
end
|
1277
1268
|
|
1278
|
-
# The page footer is not printed on the specified pages.
|
1269
|
+
# The page footer content is not printed on the specified pages. To remove the entire footer area, use the conversion config.
|
1279
1270
|
#
|
1280
1271
|
# * +pages+ - List of physical page numbers. Negative numbers count backwards from the last page: -1 is the last page, -2 is the last but one page, and so on. A comma separated list of page numbers.
|
1281
1272
|
# * *Returns* - The converter object.
|
@@ -1301,6 +1292,15 @@ module Pdfcrowd
|
|
1301
1292
|
self
|
1302
1293
|
end
|
1303
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
|
+
|
1304
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.
|
1305
1305
|
#
|
1306
1306
|
# * +watermark+ - The file path to a local file. The file must exist and not be empty.
|
@@ -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. Special strings may be used, such as `odd`, `even` and `last`. 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 odd,2: the 2nd page and all odd pages 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.
|
@@ -5681,6 +5703,19 @@ module Pdfcrowd
|
|
5681
5703
|
self
|
5682
5704
|
end
|
5683
5705
|
|
5706
|
+
# Sets the processing mode for handling Type 3 fonts.
|
5707
|
+
#
|
5708
|
+
# * +mode+ - The type3 font mode. Allowed values are raster, convert.
|
5709
|
+
# * *Returns* - The converter object.
|
5710
|
+
def setType3Mode(mode)
|
5711
|
+
unless /(?i)^(raster|convert)$/.match(mode)
|
5712
|
+
raise Error.new(Pdfcrowd.create_invalid_value_message(mode, "setType3Mode", "pdf-to-html", "Allowed values are raster, convert.", "set_type3_mode"), 470);
|
5713
|
+
end
|
5714
|
+
|
5715
|
+
@fields['type3_mode'] = mode
|
5716
|
+
self
|
5717
|
+
end
|
5718
|
+
|
5684
5719
|
# Converts ligatures, two or more letters combined into a single glyph, back into their individual ASCII characters.
|
5685
5720
|
#
|
5686
5721
|
# * +value+ - Set to true to split ligatures.
|
@@ -5690,6 +5725,19 @@ module Pdfcrowd
|
|
5690
5725
|
self
|
5691
5726
|
end
|
5692
5727
|
|
5728
|
+
# Apply custom CSS to the output HTML document. It allows you to modify the visual appearance and layout. Tip: Using !important in custom CSS provides a way to prioritize and override conflicting styles.
|
5729
|
+
#
|
5730
|
+
# * +css+ - A string containing valid CSS. The string must not be empty.
|
5731
|
+
# * *Returns* - The converter object.
|
5732
|
+
def setCustomCss(css)
|
5733
|
+
if (!(!css.nil? && !css.empty?))
|
5734
|
+
raise Error.new(Pdfcrowd.create_invalid_value_message(css, "setCustomCss", "pdf-to-html", "The string must not be empty.", "set_custom_css"), 470);
|
5735
|
+
end
|
5736
|
+
|
5737
|
+
@fields['custom_css'] = css
|
5738
|
+
self
|
5739
|
+
end
|
5740
|
+
|
5693
5741
|
# A helper method to determine if the output file is a zip archive. The output of the conversion may be either an HTML file or a zip file containing the HTML and its external assets.
|
5694
5742
|
# * *Returns* - True if the conversion output is a zip file, otherwise False.
|
5695
5743
|
def isZippedOutput()
|
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.0
|
4
|
+
version: 6.2.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-10-01 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.
|