Version Description
- Housekeeping: Update mPDF to the latest version
- Bug: Resolve custom font installation issue for some .ttf files
Download this release
Release Info
Developer | Blue Liquid Designs |
Plugin | Gravity PDF |
Version | 6.5.1 |
Comparing to | |
See all releases |
Code changes from version 6.5.0 to 6.5.1
- README.txt +5 -1
- pdf.php +2 -2
- src/assets/languages/gravity-forms-pdf-extended.pot +1 -1
- vendor/composer/installed.json +3 -3
- vendor/composer/installed.php +7 -7
- vendor_prefixed/mpdf/mpdf/src/AssetFetcher.php +1 -1
- vendor_prefixed/mpdf/mpdf/src/Mpdf.php +1 -1
- vendor_prefixed/mpdf/mpdf/src/TTFontFile.php +22 -22
README.txt
CHANGED
@@ -5,7 +5,7 @@ Donate link: https://gravitypdf.com/donate-to-plugin/
|
|
5 |
Tags: gravityforms, gravity, forms, pdf, automation, attachment, email
|
6 |
Requires at least: 5.3
|
7 |
Tested up to: 6.1
|
8 |
-
Stable tag: 6.5.
|
9 |
Requires PHP: 7.3
|
10 |
License: GPLv2 or later
|
11 |
License URI: http://www.gnu.org/licenses/gpl.txt
|
@@ -107,6 +107,10 @@ If you aren't able to meet the v6 minimum requirements [you can download v5 whic
|
|
107 |
|
108 |
== Changelog ==
|
109 |
|
|
|
|
|
|
|
|
|
110 |
= 6.5.0 =
|
111 |
* Housekeeping: Update Global Extension Settings UI to be Gravity Forms 2.5 compatible
|
112 |
* Housekeeping: Adjust how admin Notices are handled on Gravity PDF pages
|
5 |
Tags: gravityforms, gravity, forms, pdf, automation, attachment, email
|
6 |
Requires at least: 5.3
|
7 |
Tested up to: 6.1
|
8 |
+
Stable tag: 6.5.1
|
9 |
Requires PHP: 7.3
|
10 |
License: GPLv2 or later
|
11 |
License URI: http://www.gnu.org/licenses/gpl.txt
|
107 |
|
108 |
== Changelog ==
|
109 |
|
110 |
+
= 6.5.1 =
|
111 |
+
* Housekeeping: Update mPDF to the latest version
|
112 |
+
* Bug: Resolve custom font installation issue for some .ttf files
|
113 |
+
|
114 |
= 6.5.0 =
|
115 |
* Housekeeping: Update Global Extension Settings UI to be Gravity Forms 2.5 compatible
|
116 |
* Housekeeping: Adjust how admin Notices are handled on Gravity PDF pages
|
pdf.php
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: Gravity PDF
|
4 |
-
Version: 6.5.
|
5 |
Description: Automatically generate highly-customisable PDF documents using Gravity Forms.
|
6 |
Author: Blue Liquid Designs
|
7 |
Author URI: https://blueliquiddesigns.com.au
|
@@ -28,7 +28,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
28 |
/*
|
29 |
* Set base constants we'll use throughout the plugin
|
30 |
*/
|
31 |
-
define( 'PDF_EXTENDED_VERSION', '6.5.
|
32 |
define( 'PDF_PLUGIN_DIR', plugin_dir_path( __FILE__ ) ); /* plugin directory path */
|
33 |
define( 'PDF_PLUGIN_URL', plugin_dir_url( __FILE__ ) ); /* plugin directory url */
|
34 |
define( 'PDF_PLUGIN_BASENAME', plugin_basename( __FILE__ ) ); /* the plugin basename */
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: Gravity PDF
|
4 |
+
Version: 6.5.1
|
5 |
Description: Automatically generate highly-customisable PDF documents using Gravity Forms.
|
6 |
Author: Blue Liquid Designs
|
7 |
Author URI: https://blueliquiddesigns.com.au
|
28 |
/*
|
29 |
* Set base constants we'll use throughout the plugin
|
30 |
*/
|
31 |
+
define( 'PDF_EXTENDED_VERSION', '6.5.1' ); /* the current plugin version */
|
32 |
define( 'PDF_PLUGIN_DIR', plugin_dir_path( __FILE__ ) ); /* plugin directory path */
|
33 |
define( 'PDF_PLUGIN_URL', plugin_dir_url( __FILE__ ) ); /* plugin directory url */
|
34 |
define( 'PDF_PLUGIN_BASENAME', plugin_basename( __FILE__ ) ); /* the plugin basename */
|
src/assets/languages/gravity-forms-pdf-extended.pot
CHANGED
@@ -6,7 +6,7 @@ msgstr ""
|
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
9 |
-
"POT-Creation-Date: 2022-
|
10 |
"X-Poedit-Basepath: ..\n"
|
11 |
"X-Poedit-KeywordsList: __;_e;_ex:1,2c;_n:1,2;_n_noop:1,2;_nx:1,2,4c;_nx_noop:1,2,3c;_x:1,2c;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
|
12 |
"X-Poedit-SearchPath-0: .\n"
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
9 |
+
"POT-Creation-Date: 2022-11-09 22:45+0000\n"
|
10 |
"X-Poedit-Basepath: ..\n"
|
11 |
"X-Poedit-KeywordsList: __;_e;_ex:1,2c;_n:1,2;_n_noop:1,2;_nx:1,2,4c;_nx_noop:1,2,3c;_x:1,2c;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
|
12 |
"X-Poedit-SearchPath-0: .\n"
|
vendor/composer/installed.json
CHANGED
@@ -566,12 +566,12 @@
|
|
566 |
"source": {
|
567 |
"type": "git",
|
568 |
"url": "https://github.com/mpdf/mpdf.git",
|
569 |
-
"reference": "
|
570 |
},
|
571 |
"dist": {
|
572 |
"type": "zip",
|
573 |
-
"url": "https://api.github.com/repos/mpdf/mpdf/zipball/
|
574 |
-
"reference": "
|
575 |
"shasum": ""
|
576 |
},
|
577 |
"require": {
|
566 |
"source": {
|
567 |
"type": "git",
|
568 |
"url": "https://github.com/mpdf/mpdf.git",
|
569 |
+
"reference": "3819711a98b062ddcd2c12f6334335d8c6ae3da1"
|
570 |
},
|
571 |
"dist": {
|
572 |
"type": "zip",
|
573 |
+
"url": "https://api.github.com/repos/mpdf/mpdf/zipball/3819711a98b062ddcd2c12f6334335d8c6ae3da1",
|
574 |
+
"reference": "3819711a98b062ddcd2c12f6334335d8c6ae3da1",
|
575 |
"shasum": ""
|
576 |
},
|
577 |
"require": {
|
vendor/composer/installed.php
CHANGED
@@ -1,9 +1,9 @@
|
|
1 |
<?php return array(
|
2 |
'root' => array(
|
3 |
'name' => 'gravitypdf/gravitypdf',
|
4 |
-
'pretty_version' => '6.5.
|
5 |
-
'version' => '6.5.
|
6 |
-
'reference' => '
|
7 |
'type' => 'library',
|
8 |
'install_path' => __DIR__ . '/../../',
|
9 |
'aliases' => array(),
|
@@ -20,9 +20,9 @@
|
|
20 |
'dev_requirement' => false,
|
21 |
),
|
22 |
'gravitypdf/gravitypdf' => array(
|
23 |
-
'pretty_version' => '6.5.
|
24 |
-
'version' => '6.5.
|
25 |
-
'reference' => '
|
26 |
'type' => 'library',
|
27 |
'install_path' => __DIR__ . '/../../',
|
28 |
'aliases' => array(),
|
@@ -85,7 +85,7 @@
|
|
85 |
'mpdf/mpdf' => array(
|
86 |
'pretty_version' => 'dev-master',
|
87 |
'version' => 'dev-master',
|
88 |
-
'reference' => '
|
89 |
'type' => 'library',
|
90 |
'install_path' => __DIR__ . '/../mpdf/mpdf',
|
91 |
'aliases' => array(),
|
1 |
<?php return array(
|
2 |
'root' => array(
|
3 |
'name' => 'gravitypdf/gravitypdf',
|
4 |
+
'pretty_version' => '6.5.1',
|
5 |
+
'version' => '6.5.1.0',
|
6 |
+
'reference' => 'e068af16c19accfab301e954fb49b1666833b74b',
|
7 |
'type' => 'library',
|
8 |
'install_path' => __DIR__ . '/../../',
|
9 |
'aliases' => array(),
|
20 |
'dev_requirement' => false,
|
21 |
),
|
22 |
'gravitypdf/gravitypdf' => array(
|
23 |
+
'pretty_version' => '6.5.1',
|
24 |
+
'version' => '6.5.1.0',
|
25 |
+
'reference' => 'e068af16c19accfab301e954fb49b1666833b74b',
|
26 |
'type' => 'library',
|
27 |
'install_path' => __DIR__ . '/../../',
|
28 |
'aliases' => array(),
|
85 |
'mpdf/mpdf' => array(
|
86 |
'pretty_version' => 'dev-master',
|
87 |
'version' => 'dev-master',
|
88 |
+
'reference' => '3819711a98b062ddcd2c12f6334335d8c6ae3da1',
|
89 |
'type' => 'library',
|
90 |
'install_path' => __DIR__ . '/../mpdf/mpdf',
|
91 |
'aliases' => array(),
|
vendor_prefixed/mpdf/mpdf/src/AssetFetcher.php
CHANGED
@@ -73,7 +73,7 @@ class AssetFetcher implements \Psr\Log\LoggerAwareInterface
|
|
73 |
} catch (\InvalidArgumentException $e) {
|
74 |
$message = \sprintf('Unable to fetch remote content "%s" because of an error "%s"', $path, $e->getMessage());
|
75 |
if ($this->mpdf->debug) {
|
76 |
-
throw new \GFPDF_Vendor\Mpdf\MpdfException($message, 0, $e);
|
77 |
}
|
78 |
$this->logger->warning($message);
|
79 |
}
|
73 |
} catch (\InvalidArgumentException $e) {
|
74 |
$message = \sprintf('Unable to fetch remote content "%s" because of an error "%s"', $path, $e->getMessage());
|
75 |
if ($this->mpdf->debug) {
|
76 |
+
throw new \GFPDF_Vendor\Mpdf\MpdfException($message, 0, \E_ERROR, null, null, $e);
|
77 |
}
|
78 |
$this->logger->warning($message);
|
79 |
}
|
vendor_prefixed/mpdf/mpdf/src/Mpdf.php
CHANGED
@@ -22301,7 +22301,7 @@ class Mpdf implements \Psr\Log\LoggerAwareInterface
|
|
22301 |
$th = $sum_h * $i / $this->NbCol;
|
22302 |
foreach ($breaks as $bk => $val) {
|
22303 |
if ($val > $th) {
|
22304 |
-
if ($val - $th < $th - $breaks[$bk - 1]) {
|
22305 |
$cbr[$i - 1] = $val;
|
22306 |
} else {
|
22307 |
$cbr[$i - 1] = $breaks[$bk - 1];
|
22301 |
$th = $sum_h * $i / $this->NbCol;
|
22302 |
foreach ($breaks as $bk => $val) {
|
22303 |
if ($val > $th) {
|
22304 |
+
if (!$bk || $val - $th < $th - $breaks[$bk - 1]) {
|
22305 |
$cbr[$i - 1] = $val;
|
22306 |
} else {
|
22307 |
$cbr[$i - 1] = $breaks[$bk - 1];
|
vendor_prefixed/mpdf/mpdf/src/TTFontFile.php
CHANGED
@@ -2014,7 +2014,7 @@ class TTFontFile
|
|
2014 |
$key = $vs['match'][1];
|
2015 |
$tag = $v['tag'];
|
2016 |
if (isset($loclsubs[$key])) {
|
2017 |
-
${$tag[$loclsubs[$key]]
|
2018 |
}
|
2019 |
$tmp =& ${$tag};
|
2020 |
$tmp[\hexdec($key)] = \hexdec($sub);
|
@@ -2022,7 +2022,7 @@ class TTFontFile
|
|
2022 |
$key = $vs['match'][0];
|
2023 |
$tag = $v['tag'];
|
2024 |
if (isset($loclsubs[$key])) {
|
2025 |
-
${$tag[$loclsubs[$key]]
|
2026 |
}
|
2027 |
$tmp =& ${$tag};
|
2028 |
$tmp[\hexdec($key)] = \hexdec($sub);
|
@@ -2041,7 +2041,7 @@ class TTFontFile
|
|
2041 |
$key = \substr($key, 6, 5);
|
2042 |
$tag = $v['tag'];
|
2043 |
if (isset($loclsubs[$key])) {
|
2044 |
-
${$tag[$loclsubs[$key]]
|
2045 |
}
|
2046 |
$tmp =& ${$tag};
|
2047 |
$tmp[\hexdec($key)] = \hexdec($sub);
|
@@ -2049,7 +2049,7 @@ class TTFontFile
|
|
2049 |
$key = \substr($key, 0, 5);
|
2050 |
$tag = $v['tag'];
|
2051 |
if (isset($loclsubs[$key])) {
|
2052 |
-
${$tag[$loclsubs[$key]]
|
2053 |
}
|
2054 |
$tmp =& ${$tag};
|
2055 |
$tmp[\hexdec($key)] = \hexdec($sub);
|
@@ -2508,24 +2508,24 @@ class TTFontFile
|
|
2508 |
$lup = $Lookup[$i]['Subtable'][$c]['SubstLookupRecord'][$b]['LookupListIndex'];
|
2509 |
$seqIndex = $Lookup[$i]['Subtable'][$c]['SubstLookupRecord'][$b]['SequenceIndex'];
|
2510 |
for ($lus = 0; $lus < $Lookup[$lup]['SubtableCount']; $lus++) {
|
2511 |
-
if (
|
2512 |
-
|
2513 |
-
|
2514 |
-
|
2515 |
-
|
2516 |
-
|
2517 |
-
|
2518 |
-
|
2519 |
-
|
2520 |
-
|
2521 |
-
|
2522 |
-
|
2523 |
-
|
2524 |
-
|
2525 |
-
|
2526 |
-
|
2527 |
-
|
2528 |
-
|
2529 |
}
|
2530 |
}
|
2531 |
}
|
2014 |
$key = $vs['match'][1];
|
2015 |
$tag = $v['tag'];
|
2016 |
if (isset($loclsubs[$key])) {
|
2017 |
+
${$tag}[$loclsubs[$key]] = $sub;
|
2018 |
}
|
2019 |
$tmp =& ${$tag};
|
2020 |
$tmp[\hexdec($key)] = \hexdec($sub);
|
2022 |
$key = $vs['match'][0];
|
2023 |
$tag = $v['tag'];
|
2024 |
if (isset($loclsubs[$key])) {
|
2025 |
+
${$tag}[$loclsubs[$key]] = $sub;
|
2026 |
}
|
2027 |
$tmp =& ${$tag};
|
2028 |
$tmp[\hexdec($key)] = \hexdec($sub);
|
2041 |
$key = \substr($key, 6, 5);
|
2042 |
$tag = $v['tag'];
|
2043 |
if (isset($loclsubs[$key])) {
|
2044 |
+
${$tag}[$loclsubs[$key]] = $sub;
|
2045 |
}
|
2046 |
$tmp =& ${$tag};
|
2047 |
$tmp[\hexdec($key)] = \hexdec($sub);
|
2049 |
$key = \substr($key, 0, 5);
|
2050 |
$tag = $v['tag'];
|
2051 |
if (isset($loclsubs[$key])) {
|
2052 |
+
${$tag}[$loclsubs[$key]] = $sub;
|
2053 |
}
|
2054 |
$tmp =& ${$tag};
|
2055 |
$tmp[\hexdec($key)] = \hexdec($sub);
|
2508 |
$lup = $Lookup[$i]['Subtable'][$c]['SubstLookupRecord'][$b]['LookupListIndex'];
|
2509 |
$seqIndex = $Lookup[$i]['Subtable'][$c]['SubstLookupRecord'][$b]['SequenceIndex'];
|
2510 |
for ($lus = 0; $lus < $Lookup[$lup]['SubtableCount']; $lus++) {
|
2511 |
+
if (empty($Lookup[$lup]['Subtable'][$lus]['subs']) || !\is_array($Lookup[$lup]['Subtable'][$lus]['subs'])) {
|
2512 |
+
continue;
|
2513 |
+
}
|
2514 |
+
foreach ($Lookup[$lup]['Subtable'][$lus]['subs'] as $luss) {
|
2515 |
+
$lookupGlyphs = $luss['Replace'];
|
2516 |
+
// Only apply if the (first) 'Replace' glyph from the
|
2517 |
+
// Lookup list is in the [inputGlyphs] at ['SequenceIndex']
|
2518 |
+
// then apply the substitution
|
2519 |
+
if (\strpos($inputGlyphs[$seqIndex], $lookupGlyphs[0]) === \false) {
|
2520 |
+
continue;
|
2521 |
+
}
|
2522 |
+
// Returns e.g. ¦(0612)¦(ignore) (0613)¦(ignore) (0614)¦
|
2523 |
+
$contextInputMatch = $this->_makeGSUBcontextInputMatch($inputGlyphs, $ignore, $lookupGlyphs, $seqIndex);
|
2524 |
+
$REPL = \implode(" ", $luss['substitute']);
|
2525 |
+
if (\strpos("isol fina fin2 fin3 medi med2 init ", $tag) !== \false && $scripttag == 'arab') {
|
2526 |
+
$volt[] = ['match' => $lookupGlyphs[0], 'replace' => $REPL, 'tag' => $tag, 'prel' => $backtrackGlyphs, 'postl' => $lookaheadGlyphs, 'ignore' => $ignore];
|
2527 |
+
} else {
|
2528 |
+
$subRule['rules'][] = ['type' => $Lookup[$lup]['Type'], 'match' => $lookupGlyphs, 'replace' => $luss['substitute'], 'seqIndex' => $seqIndex, 'key' => $lookupGlyphs[0]];
|
2529 |
}
|
2530 |
}
|
2531 |
}
|