选择 / 图像类型
图像类型检测
1.2.0
2023-09-09 19:21 UTC
Requires
- php: ^8.1
Requires (Dev)
README
PHP图像类型检测库。
特点
- 基于内容(头部)检测图像类型
- 无依赖
- 非常快速
支持的格式
位图
- ANI (动画光标)
- BMP (Windows位图)
- CUR (光标)
- DICOM (医学数字图像和通信)
- GIF (图形交换格式)
- HEIF / HEIC (高效率图像文件格式) / Apple iPhone照片
- ICO (图标)
- JNG (JPEG网络图形)
- JPEG 2000
- JPG / JPEG (联合图像专家小组)
- JPM (JPEG 2000复合图像)
- MNG (多图像网络图形)
- PDN (PaintDotNet)
- PGM (可移植灰度图)
- PNG (可移植网络图形)
- PPM (可移植像素图)
- PSB (Photoshop大型文档)
- PSD (Photoshop文档)
- TIF / TIFF (标记图像文件格式)
- WEBP (WebP)
- XCF (eXperimental Computing Facility (GIMP))
矢量图
- AI (Adobe Illustrator)
- EMF (增强元文件)
- EMF+ (增强元文件)
- SVG (可缩放矢量图形)
- WMF (Windows元文件格式)
复合格式
- SWF (小型Web格式,Flash)
RAW
- 3FR (哈苏)
- CR2 (佳能)
- CR3 (佳能)
- DNG (数字负片 - Adobe)
- IIQ (Phase One)
- ORF (奥林巴斯)
- PEF (宾得)
- RW2 (松下)
HDR
- JPEG-HDR
- CIN (Cineon图像文件格式,柯达)
- DPX (数字图片交换)
- OpenEXR
- PBM (可移植位图HDR)
- PFM (可移植浮点图)
- Radiance HDR
要求
- PHP 8.1+
安装
composer require selective/image-type
使用
检测文件的图像类型
use Selective\ImageType\ImageTypeDetector; use Selective\ImageType\Provider\RasterProvider; use Selective\ImageType\Provider\HdrProvider; use Selective\ImageType\Provider\RawProvider; use Selective\ImageType\Provider\VectorProvider; use SplFileObject; $file = new SplFileObject('example.jpg'); $detector = new ImageTypeDetector(); // Add image detectors $detector->addProvider(new HdrProvider()); $detector->addProvider(new RawProvider()); $detector->addProvider(new VectorProvider()); $detector->addProvider(new RasterProvider()); $imageType = $detector->getImageTypeFromFile($file); // Get the image format echo $imageType->getFormat(); // jpeg // Get the mime type echo $imageType->getMimeType(); // image/jpeg
检测内存中对象的图像类型
$image = new SplTempFileObject(); $image->fwrite('my file content'); $detector = new ImageTypeDetector(); // Add image detectors $detector->addProvider(new RasterProvider()); echo $detector->getImageTypeFromFile($file)->getFormat();
类似库
许可证
- MIT