melihovv/base64-image-decoder

一个base64图像解码器

0.2.0 2018-09-08 08:35 UTC

This package is auto-updated.

Last update: 2024-09-08 22:25:27 UTC


README

Build Status styleci Scrutinizer Code Quality SensioLabsInsight Coverage Status

Packagist Packagist Packagist

一组小类(解码器、编码器),用于将图像作为数据URI处理。

安装

通过composer安装

composer require melihovv/base64-image-decoder

用法

编码器

use Melihovv\Base64ImageDecoder\Base64ImageEncoder;

$encoder = Base64ImageEncoder::fromFileName('/path/to/picture.jpg', $allowedFormats = ['jpeg', 'png', 'gif']);
#$encoder = Base64ImageEncoder::fromBinaryData($someRawBinaryData, $allowedFormats = ['jpeg', 'png', 'gif']);
#$encoder = Base64ImageEncoder::fromResource($someResource, $allowedFormats = ['jpeg', 'png', 'gif']);

$encoder->getMimeType(); // image/jpeg for instance
$encoder->getContent(); // base64 encoded image bytes.
$encoder->getDataUri(); // a base64 data-uri to use in HTML or CSS attributes.

解码器

use Melihovv\Base64ImageDecoder\Base64ImageDecoder;

$dataUri = 'data:image/gif;base64,R0lGODlhLAH6AOZ/AMyokXJMK0uE...'; // image may come from http request or any other source.

// We check that image is encoded properly in constructor, otherwise exception will be thrown.
// You can use this info in your validation rule.
$decoder = new Base64ImageDecoder($dataUri, $allowedFormats = ['jpeg', 'png', 'gif']);

$decoder->getFormat(); // 'png', or 'jpeg', or 'gif', or etc.
$decoder->getDecodedContent(); // base64 decoded raw image bytes.
$decoder->getContent(); // base64 encoded raw image bytes.

安全性

如果您发现任何与安全相关的问题,请通过电子邮件 amelihovv@ya.ru 而不是使用问题跟踪器来报告。

致谢

此包是用 melihovv/laravel-package-generator 启动的。