PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 1.18
Independent Analytics – WordPress Analytics Plugin v1.18
2.15.4 2.15.3 2.15.2 2.15.1 2.15.0 2.14.10 trunk 1.1 1.10 1.10.1 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.17.1 1.17.2 1.17.3 1.17.4 1.18 1.18.1 1.19.0 1.19.1 1.2 1.20.0 1.21.0 1.22.0 1.22.1 1.23.0 1.23.1 1.24.0 1.24.1 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.28.1 1.28.2 1.28.3 1.29.0 1.3 1.30.0 1.30.1 1.4 1.5 1.6 1.7 1.8 1.9 2.0.0 2.0.1 2.1.4 2.1.5 2.1.6 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.10 2.11.2 2.11.3 2.11.4 2.11.5 2.11.6 2.11.7 2.11.8 2.11.9 2.12.0 2.12.1 2.12.2 2.13.1 2.13.2 2.13.5 2.13.6 2.14.0 2.14.1 2.14.2 2.14.4 2.14.6 2.14.7 2.14.8 2.14.9 2.2.0 2.2.1 2.3.1 2.3.2 2.4.2 2.4.3 2.5.0 2.5.1 2.6.0 2.6.1 2.6.2 2.6.3 2.6.4 2.7.0 2.7.1 2.7.2 2.7.3 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.8 2.8.9 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7
independent-analytics / vendor / phenx / php-font-lib / src / FontLib / WOFF / File.php
independent-analytics / vendor / phenx / php-font-lib / src / FontLib / WOFF Last commit date
File.php 3 years ago Header.php 3 years ago TableDirectoryEntry.php 3 years ago
File.php
76 lines
1 <?php
2
3 /**
4 * @package php-font-lib
5 * @link https://github.com/PhenX/php-font-lib
6 * @author Fabien Ménager <fabien.menager@gmail.com>
7 * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
8 */
9 namespace IAWP\FontLib\WOFF;
10
11 use IAWP\FontLib\Table\DirectoryEntry;
12 /**
13 * WOFF font file.
14 *
15 * @package php-font-lib
16 *
17 * @property TableDirectoryEntry[] $directory
18 */
19 class File extends \IAWP\FontLib\TrueType\File
20 {
21 function parseHeader()
22 {
23 if (!empty($this->header)) {
24 return;
25 }
26 $this->header = new Header($this);
27 $this->header->parse();
28 }
29 public function load($file)
30 {
31 parent::load($file);
32 $this->parseTableEntries();
33 $dataOffset = $this->pos() + \count($this->directory) * 20;
34 $fw = $this->getTempFile(\false);
35 $fr = $this->f;
36 $this->f = $fw;
37 $offset = $this->header->encode();
38 foreach ($this->directory as $entry) {
39 // Read ...
40 $this->f = $fr;
41 $this->seek($entry->offset);
42 $data = $this->read($entry->length);
43 if ($entry->length < $entry->origLength) {
44 $data = (string) \gzuncompress($data);
45 }
46 // Prepare data ...
47 $length = \mb_strlen($data, '8bit');
48 $entry->length = $entry->origLength = $length;
49 $entry->offset = $dataOffset;
50 // Write ...
51 $this->f = $fw;
52 // Woff Entry
53 $this->seek($offset);
54 $offset += $this->write($entry->tag, 4);
55 // tag
56 $offset += $this->writeUInt32($dataOffset);
57 // offset
58 $offset += $this->writeUInt32($length);
59 // length
60 $offset += $this->writeUInt32($length);
61 // origLength
62 $offset += $this->writeUInt32(DirectoryEntry::computeChecksum($data));
63 // checksum
64 // Data
65 $this->seek($dataOffset);
66 $dataOffset += $this->write($data, $length);
67 }
68 $this->f = $fw;
69 $this->seek(0);
70 // Need to re-parse this, don't know why
71 $this->header = null;
72 $this->directory = array();
73 $this->parseTableEntries();
74 }
75 }
76