1. Go to this page and download the library: Download tecnickcom/tc-lib-pdf-image library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
tecnickcom / tc-lib-pdf-image example snippets
ypt = new \Com\Tecnick\Pdf\Encrypt\Encrypt();
// the file helper allows nothing by default: list the directories and hosts
// the images may be loaded from
$fileHelper = new \Com\Tecnick\File\File(
allowedPaths: ['/path/to'],
);
$img = new \Com\Tecnick\Pdf\Image\Import(
kunit: 1.0,
encrypt: $encrypt,
fileHelper: $fileHelper,
);
$imageId = $img->add('/path/to/image.png');
var_dump($imageId);
interface ImageCacheInterface
{
/** @return array|null Stored image data, or null on a miss. */
public function get(string $key): ?array;
public function set(string $key, array $data): void;
}
$img = new \Com\Tecnick\Pdf\Image\Import(
kunit: 1.0,
encrypt: $encrypt,
fileHelper: $fileHelper,
imageCache: $myCache, // any ImageCacheInterface implementation
);
use Com\Tecnick\Pdf\Image\ImageCacheInterface;
final class FilesystemImageCache implements ImageCacheInterface
{
public function __construct(private readonly string $dir) {}
public function get(string $key): ?array
{
$file = $this->dir . '/' . hash('xxh128', $key) . '.cache';
if (!is_file($file)) {
return null;
}
$data = unserialize((string) file_get_contents($file), ['allowed_classes' => false]);
return is_array($data) ? $data : null;
}
public function set(string $key, array $data): void
{
$file = $this->dir . '/' . hash('xxh128', $key) . '.cache';
file_put_contents($file, serialize($data), LOCK_EX);
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.