__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
<?php
/*
* PEL: PHP Exif Library.
* A library with support for reading and
* writing all Exif headers in JPEG and TIFF images using PHP.
*
* Copyright (C) 2004, 2005 Martin Geisler.
* Copyright (C) 2017 Johannes Weberhofer.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program in the file COPYING; if not, write to the
* Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
* Boston, MA 02110-1301 USA
*/
namespace lsolesen\pel;
/**
* Namespace for functions operating on Exif formats.
*
* This class defines the constants that are to be used whenever one
* has to refer to the format of an Exif tag. They will be
* collectively denoted by the pseudo-type PelFormat throughout the
* documentation.
*
* All the methods defined here are static, and they all operate on a
* single argument which should be one of the class constants.
*
* @author Martin Geisler <mgeisler@users.sourceforge.net>
* @author Johannes Weberhofer <jweberhofer@weberhofer.at>
* @license http://www.gnu.org/licenses/gpl.html GNU General Public
* License (GPL)
* @package
*
*/
class PelFormat
{
/**
* Unsigned byte.
*
* Each component will be an unsigned 8-bit integer with a value
* between 0 and 255.
*
* Modelled with the {@link PelEntryByte} class.
*/
const BYTE = 1;
/**
* ASCII string.
*
* Each component will be an ASCII character.
*
* Modelled with the {@link PelEntryAscii} class.
*/
const ASCII = 2;
/**
* Unsigned short.
*
* Each component will be an unsigned 16-bit integer with a value
* between 0 and 65535.
*
* Modelled with the {@link PelEntryShort} class.
*/
const SHORT = 3;
/**
* Unsigned long.
*
* Each component will be an unsigned 32-bit integer with a value
* between 0 and 4294967295.
*
* Modelled with the {@link PelEntryLong} class.
*/
const LONG = 4;
/**
* Unsigned rational number.
*
* Each component will consist of two unsigned 32-bit integers
* denoting the enumerator and denominator. Each integer will have
* a value between 0 and 4294967295.
*
* Modelled with the {@link PelEntryRational} class.
*/
const RATIONAL = 5;
/**
* Signed byte.
*
* Each component will be a signed 8-bit integer with a value
* between -128 and 127.
*
* Modelled with the {@link PelEntrySByte} class.
*/
const SBYTE = 6;
/**
* Undefined byte.
*
* Each component will be a byte with no associated interpretation.
*
* Modelled with the {@link PelEntryUndefined} class.
*/
const UNDEFINED = 7;
/**
* Signed short.
*
* Each component will be a signed 16-bit integer with a value
* between -32768 and 32767.
*
* Modelled with the {@link PelEntrySShort} class.
*/
const SSHORT = 8;
/**
* Signed long.
*
* Each component will be a signed 32-bit integer with a value
* between -2147483648 and 2147483647.
*
* Modelled with the {@link PelEntrySLong} class.
*/
const SLONG = 9;
/**
* Signed rational number.
*
* Each component will consist of two signed 32-bit integers
* denoting the enumerator and denominator. Each integer will have
* a value between -2147483648 and 2147483647.
*
* Modelled with the {@link PelEntrySRational} class.
*/
const SRATIONAL = 10;
/**
* Floating point number.
*
* Entries with this format are not currently implemented.
*/
const FLOAT = 11;
/**
* Double precision floating point number.
*
* Entries with this format are not currently implemented.
*/
const DOUBLE = 12;
/**
* Values for format's short names
*/
protected static $formatName = [
self::ASCII => 'Ascii',
self::BYTE => 'Byte',
self::SHORT => 'Short',
self::LONG => 'Long',
self::RATIONAL => 'Rational',
self::SBYTE => 'SByte',
self::SSHORT => 'SShort',
self::SLONG => 'SLong',
self::SRATIONAL => 'SRational',
self::FLOAT => 'Float',
self::DOUBLE => 'Double',
self::UNDEFINED => 'Undefined'
];
protected static $formatLength = [
self::ASCII => 1,
self::BYTE => 1,
self::SHORT => 2,
self::LONG => 4,
self::RATIONAL => 8,
self::SBYTE => 1,
self::SSHORT => 2,
self::SLONG => 4,
self::SRATIONAL => 8,
self::FLOAT => 4,
self::DOUBLE => 8,
self::UNDEFINED => 1
];
/**
* Returns the name of a format like 'Ascii' for the {@link ASCII} format
*
* @param integer $type
* as defined in {@link PelFormat}
* @return string
*/
public static function getName($type)
{
if (array_key_exists($type, self::$formatName)) {
return self::$formatName[$type];
} else {
return Pel::fmt('Unknown format: 0x%X', $type);
}
}
/**
* Return the size of components in a given format in bytes needed to store one component with the
* given format.
*
* @param integer $type
* as defined in {@link PelFormat}
* @return integer|string
*/
public static function getSize($type)
{
if (array_key_exists($type, self::$formatLength)) {
return self::$formatLength[$type];
} else {
return Pel::fmt('Unknown format: 0x%X', $type);
}
}
}
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| Pel.php | File | 10.73 KB | 0644 |
|
| PelCanonMakerNotes.php | File | 10.3 KB | 0644 |
|
| PelConvert.php | File | 13.99 KB | 0644 |
|
| PelDataWindow.php | File | 18.91 KB | 0644 |
|
| PelDataWindowOffsetException.php | File | 1.11 KB | 0644 |
|
| PelDataWindowWindowException.php | File | 1.35 KB | 0644 |
|
| PelEntry.php | File | 7.8 KB | 0644 |
|
| PelEntryAscii.php | File | 4.6 KB | 0644 |
|
| PelEntryByte.php | File | 3.26 KB | 0644 |
|
| PelEntryCopyright.php | File | 5.87 KB | 0644 |
|
| PelEntryException.php | File | 2.42 KB | 0644 |
|
| PelEntryLong.php | File | 4.04 KB | 0644 |
|
| PelEntryNumber.php | File | 8.39 KB | 0644 |
|
| PelEntryRational.php | File | 6.02 KB | 0644 |
|
| PelEntrySByte.php | File | 3.26 KB | 0644 |
|
| PelEntrySLong.php | File | 3.36 KB | 0644 |
|
| PelEntrySRational.php | File | 5.3 KB | 0644 |
|
| PelEntrySShort.php | File | 75.79 KB | 0644 |
|
| PelEntryShort.php | File | 28.47 KB | 0644 |
|
| PelEntryTime.php | File | 12.54 KB | 0644 |
|
| PelEntryUndefined.php | File | 5.58 KB | 0644 |
|
| PelEntryUserComment.php | File | 4.5 KB | 0644 |
|
| PelEntryVersion.php | File | 5.57 KB | 0644 |
|
| PelEntryWindowsString.php | File | 5.81 KB | 0644 |
|
| PelException.php | File | 2 KB | 0644 |
|
| PelExif.php | File | 4.54 KB | 0644 |
|
| PelFormat.php | File | 6.04 KB | 0644 |
|
| PelIfd.php | File | 56.41 KB | 0644 |
|
| PelIfdException.php | File | 1.39 KB | 0644 |
|
| PelInvalidArgumentException.php | File | 1.38 KB | 0644 |
|
| PelInvalidDataException.php | File | 1.37 KB | 0644 |
|
| PelJpeg.php | File | 22.18 KB | 0644 |
|
| PelJpegComment.php | File | 2.7 KB | 0644 |
|
| PelJpegContent.php | File | 2.24 KB | 0644 |
|
| PelJpegInvalidMarkerException.php | File | 1.86 KB | 0644 |
|
| PelJpegMarker.php | File | 11.7 KB | 0644 |
|
| PelMakerNotes.php | File | 2.33 KB | 0644 |
|
| PelMakerNotesMalformedException.php | File | 1.64 KB | 0644 |
|
| PelOverflowException.php | File | 2.08 KB | 0644 |
|
| PelTag.php | File | 73.45 KB | 0644 |
|
| PelTiff.php | File | 9.87 KB | 0644 |
|
| PelUnexpectedFormatException.php | File | 2.64 KB | 0644 |
|
| PelWrongComponentCountException.php | File | 2.68 KB | 0644 |
|