PluginProbe
PDF & Print by BestWebSoft – WordPress Posts and Pages PDF Generator Plugin / 1.5
PDF & Print by BestWebSoft – WordPress Posts and Pages PDF Generator Plugin v1.5
trunk 1.5 1.6 1.7 1.7.1 1.7.2 1.7.3 1.7.4 1.7.5 1.7.6 1.7.7 1.7.8 1.7.9 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.8.7 1.8.8 1.8.9 1.9.0 1.9.1 All 71 releases
← All changes | mpdf/includes/functions.php +99 -169 trunk1.5 View file →
@@ -1,169 +1,99 @@
1 -<?php
2 -
3 -
4 -// mPDF 6
5 -// Function only available PHP >=5.5.0
6 -if(!function_exists('imagepalettetotruecolor')) {
7 - function imagepalettetotruecolor(&$src) {
8 - if(imageistruecolor($src)) {
9 - return(true);
10 - }
11 - $dst = imagecreatetruecolor(imagesx($src), imagesy($src));
12 -
13 - imagecopy($dst, $src, 0, 0, 0, 0, imagesx($src), imagesy($src));
14 - imagedestroy($src);
15 -
16 - $src = $dst;
17 -
18 - return(true);
19 - }
20 -}
21 -
22 -// mPDF 5.7
23 -// Replace a section of an array with the elements in reverse
24 -function array_splice_reverse(&$arr, $offset, $length) {
25 - $tmp = (array_reverse(array_slice($arr, $offset, $length)));
26 - array_splice($arr, $offset, $length, $tmp);
27 -}
28 -
29 -
30 -function array_insert(&$array, $value, $offset) {
31 - if (is_array($array)) {
32 - $array = array_values($array);
33 - $offset = intval($offset);
34 - if ($offset < 0 || $offset >= count($array)) { array_push($array, $value); }
35 - else if ($offset == 0) { array_unshift($array, $value); }
36 - else {
37 - $temp = array_slice($array, 0, $offset);
38 - array_push($temp, $value);
39 - $array = array_slice($array, $offset);
40 - $array = array_merge($temp, $array);
41 - }
42 - }
43 - else { $array = array($value); }
44 - return count($array);
45 -}
46 -
47 -// mPDF 5.7.4 URLs
48 -function urldecode_parts($url) {
49 - $file=$url;
50 - $query='';
51 - if (preg_match('/[?]/',$url)) {
52 - $bits = preg_split('/[?]/',$url,2);
53 - $file=$bits[0];
54 - $query='?'.$bits[1];
55 - }
56 - $file = rawurldecode($file);
57 - $query = urldecode($query);
58 - return $file.$query;
59 -}
60 -
61 -
62 -function _strspn($str1, $str2, $start=null, $length=null) {
63 - $numargs = func_num_args();
64 - if ($numargs == 2) {
65 - return strspn($str1, $str2);
66 - }
67 - else if ($numargs == 3) {
68 - return strspn($str1, $str2, $start);
69 - }
70 - else {
71 - return strspn($str1, $str2, $start, $length);
72 - }
73 -}
74 -
75 -
76 -function _strcspn($str1, $str2, $start=null, $length=null) {
77 - $numargs = func_num_args();
78 - if ($numargs == 2) {
79 - return strcspn($str1, $str2);
80 - }
81 - else if ($numargs == 3) {
82 - return strcspn($str1, $str2, $start);
83 - }
84 - else {
85 - return strcspn($str1, $str2, $start, $length);
86 - }
87 -}
88 -
89 -function _fgets (&$h, $force=false) {
90 - $startpos = ftell($h);
91 - $s = fgets($h, 1024);
92 - if ($force && preg_match("/^([^\r\n]*[\r\n]{1,2})(.)/",trim($s), $ns)) {
93 - $s = $ns[1];
94 - fseek($h,$startpos+strlen($s));
95 - }
96 - return $s;
97 -}
98 -
99 -
100 -// For PHP4 compatability
101 -if(!function_exists('str_ireplace')) {
102 - function str_ireplace($search,$replace,$subject) {
103 - $search = preg_quote($search, "/");
104 - return preg_replace("/".$search."/i", $replace, $subject);
105 - }
106 -}
107 -if(!function_exists('htmlspecialchars_decode')) {
108 - function htmlspecialchars_decode ($str) {
109 - return strtr($str, array_flip(get_html_translation_table(HTML_SPECIALCHARS)));
110 - }
111 -}
112 -
113 -function PreparePreText($text,$ff='//FF//') {
114 - $text = htmlspecialchars($text);
115 - if ($ff) { $text = str_replace($ff,'</pre><formfeed /><pre>',$text); }
116 - return ('<pre>'.$text.'</pre>');
117 -}
118 -
119 -if(!function_exists('strcode2utf')){
120 - function strcode2utf($str,$lo=true) {
121 - //converts all the &#nnn; and &#xhhh; in a string to Unicode
122 - // mPDF 5.7
123 - if ($lo) {
124 - $str = preg_replace_callback('/\&\#([0-9]+)\;/m', 'code2utf_lo_callback', $str);
125 - $str = preg_replace_callback('/\&\#x([0-9a-fA-F]+)\;/m', 'codeHex2utf_lo_callback', $str);
126 - }
127 - else {
128 - $str = preg_replace_callback('/\&\#([0-9]+)\;/m', 'code2utf_callback', $str);
129 - $str = preg_replace_callback('/\&\#x([0-9a-fA-F]+)\;/m', 'codeHex2utf_callback', $str);
130 - }
131 - return $str;
132 - }
133 -}
134 -function code2utf_callback($matches) {
135 - return code2utf($matches[1], 0);
136 -}
137 -function code2utf_lo_callback($matches) {
138 - return code2utf($matches[1], 1);
139 -}
140 -function codeHex2utf_callback($matches) {
141 - return codeHex2utf($matches[1], 0);
142 -}
143 -function codeHex2utf_lo_callback($matches) {
144 - return codeHex2utf($matches[1], 1);
145 -}
146 -
147 -
148 -if(!function_exists('code2utf')){
149 - function code2utf($num,$lo=true){
150 - //Returns the utf string corresponding to the unicode value
151 - if ($num<128) {
152 - if ($lo) return chr($num);
153 - else return '&#'.$num.';';
154 - }
155 - if ($num<2048) return chr(($num>>6)+192).chr(($num&63)+128);
156 - if ($num<65536) return chr(($num>>12)+224).chr((($num>>6)&63)+128).chr(($num&63)+128);
157 - if ($num<2097152) return chr(($num>>18)+240).chr((($num>>12)&63)+128).chr((($num>>6)&63)+128) .chr(($num&63)+128);
158 - return '?';
159 - }
160 -}
161 -
162 -
163 -if(!function_exists('codeHex2utf')){
164 - function codeHex2utf($hex,$lo=true){
165 - $num = hexdec($hex);
166 - if (($num<128) && !$lo) return '&#x'.$hex.';';
167 - return code2utf($num,$lo);
168 - }
169 -}
1 +<?php
2 +
3 +
4 +function _strspn($str1, $str2, $start=null, $length=null) {
5 + $numargs = func_num_args();
6 + if ($numargs == 2) {
7 + return strspn($str1, $str2);
8 + }
9 + else if ($numargs == 3) {
10 + return strspn($str1, $str2, $start);
11 + }
12 + else {
13 + return strspn($str1, $str2, $start, $length);
14 + }
15 +}
16 +
17 +
18 +function _strcspn($str1, $str2, $start=null, $length=null) {
19 + $numargs = func_num_args();
20 + if ($numargs == 2) {
21 + return strcspn($str1, $str2);
22 + }
23 + else if ($numargs == 3) {
24 + return strcspn($str1, $str2, $start);
25 + }
26 + else {
27 + return strcspn($str1, $str2, $start, $length);
28 + }
29 +}
30 +
31 +function _fgets (&$h, $force=false) {
32 + $startpos = ftell($h);
33 + $s = fgets($h, 1024);
34 + if ($force && preg_match("/^([^\r\n]*[\r\n]{1,2})(.)/",trim($s), $ns)) {
35 + $s = $ns[1];
36 + fseek($h,$startpos+strlen($s));
37 + }
38 + return $s;
39 +}
40 +
41 +
42 +// For PHP4 compatability
43 +if(!function_exists('str_ireplace')) {
44 + function str_ireplace($search,$replace,$subject) {
45 + $search = preg_quote($search, "/");
46 + return preg_replace("/".$search."/i", $replace, $subject);
47 + }
48 +}
49 +if(!function_exists('htmlspecialchars_decode')) {
50 + function htmlspecialchars_decode ($str) {
51 + return strtr($str, array_flip(get_html_translation_table(HTML_SPECIALCHARS)));
52 + }
53 +}
54 +
55 +function PreparePreText($text,$ff='//FF//') {
56 + // mPDF 5.0.053
57 + $text = htmlspecialchars($text);
58 + if ($ff) { $text = str_replace($ff,'</pre><formfeed /><pre>',$text); }
59 + return ('<pre>'.$text.'</pre>');
60 +}
61 +
62 +if(!function_exists('strcode2utf')){
63 + function strcode2utf($str,$lo=true) {
64 + //converts all the &#nnn; and &#xhhh; in a string to Unicode
65 + if ($lo) { $lo = 1; } else { $lo = 0; }
66 + $str = preg_replace('/\&\#([0-9]+)\;/me', "code2utf('\\1',{$lo})",$str);
67 + $str = preg_replace('/\&\#x([0-9a-fA-F]+)\;/me', "codeHex2utf('\\1',{$lo})",$str);
68 + return $str;
69 + }
70 +}
71 +
72 +if(!function_exists('code2utf')){
73 + function code2utf($num,$lo=true){
74 + //Returns the utf string corresponding to the unicode value
75 + //added notes - http://uk.php.net/utf8_encode
76 + if ($num<128) {
77 + if ($lo) return chr($num);
78 + else return '&#'.$num.';'; // i.e. no change
79 + }
80 + if ($num<2048) return chr(($num>>6)+192).chr(($num&63)+128);
81 + if ($num<65536) return chr(($num>>12)+224).chr((($num>>6)&63)+128).chr(($num&63)+128);
82 + if ($num<2097152) return chr(($num>>18)+240).chr((($num>>12)&63)+128).chr((($num>>6)&63)+128) .chr(($num&63)+128);
83 + return '?';
84 + }
85 +}
86 +
87 +
88 +if(!function_exists('codeHex2utf')){
89 + function codeHex2utf($hex,$lo=true){
90 + $num = hexdec($hex);
91 + if (($num<128) && !$lo) return '&#x'.$hex.';'; // i.e. no change
92 + return code2utf($num,$lo);
93 + }
94 +}
95 +
96 +
97 +
98 +
99 +?>