mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-22 01:12:17 +00:00
EZ-Components
This commit is contained in:
@@ -0,0 +1,126 @@
|
||||
eZ Components - ImageAnalysis
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
.. contents:: Table of Contents
|
||||
|
||||
Introduction
|
||||
============
|
||||
|
||||
The ImageAnalysis component allows you to analyze certain image attributes.
|
||||
|
||||
Class overview
|
||||
==============
|
||||
|
||||
ezcImageAnalyzer is the main class for this component. It is responsible for
|
||||
handling the analysis of image files, as well as caching the results.
|
||||
|
||||
Usage
|
||||
=====
|
||||
|
||||
MIME type determination
|
||||
-----------------------
|
||||
|
||||
The following example simply detects the MIME type of an image and prints it:
|
||||
|
||||
.. include:: tutorial_example_01.php
|
||||
:literal:
|
||||
|
||||
On line 5, a new ezcImageAnalyzer object is instantiated. This must be done for
|
||||
each image to be analyzed. In line 7, the MIME type is determined. Here is an
|
||||
example image including the output:
|
||||
|
||||
.. image:: img/imageanalysis_example_01.jpg
|
||||
:alt: Simple JPEG image.
|
||||
|
||||
::
|
||||
|
||||
Image has MIME type <image/jpeg>
|
||||
|
||||
Extracting further data
|
||||
-----------------------
|
||||
|
||||
Aside from the MIME type, ImageAnalysis can extract other image information.
|
||||
The following example demonstrates this:
|
||||
|
||||
.. include:: tutorial_example_02.php
|
||||
:literal:
|
||||
|
||||
The example is basically the same as the first one, except that more data is requested
|
||||
from ezcImageAnalyzer (lines 8 to 11). The analysis of additional data
|
||||
begins on line 9. After that, the data is cached in the ezcImageAnalyzer object.
|
||||
|
||||
The width, height and size values are available for every analyzable image.
|
||||
A comment is not always available. If an image property is not available, the
|
||||
output will be some sensible default value (such as n/a). (Note that the
|
||||
availability of some data also depends on the availability of PHP's Exif
|
||||
extension.)
|
||||
|
||||
The example image and printed output is shown below:
|
||||
|
||||
.. image:: img/imageanalysis_example_02.jpg
|
||||
|
||||
::
|
||||
|
||||
Image data:
|
||||
MIME type: image/jpeg
|
||||
Width: 380 px
|
||||
Height: 285 px
|
||||
Filesize: 25984 b
|
||||
Comment: n/a
|
||||
|
||||
|
||||
Configuring handlers
|
||||
--------------------
|
||||
|
||||
Like ezcImageConverter, ezcImageAnalyzer is based on handler classes, which
|
||||
allow it to utilize different back-ends for image analysis. The currently
|
||||
implemented handlers are:
|
||||
|
||||
ezcImageAnalyzerPhpHandler
|
||||
This uses PHP's getimagesize() function (which does not require the GD
|
||||
extension!) and can optionally use PHP's Exif extension.
|
||||
|
||||
ezcImageAnalyzerImagemagickHandler
|
||||
Here `ImageMagick`_'s "identify" program is used.
|
||||
|
||||
Both handlers are activated by default and are capable of determining if their
|
||||
preconditions are fulfilled.
|
||||
|
||||
You might need to configure a handler, if for example the path to the
|
||||
ImageMagick_ "identify" binary is not available in the $PATH environment
|
||||
variable. The following example shows how this is possible and what else can be
|
||||
configured for the handlers:
|
||||
|
||||
.. _ImageMagick: http://www.imagemagick.org/script/index.php
|
||||
|
||||
.. include:: tutorial_example_03.php
|
||||
:literal:
|
||||
|
||||
Basically, the code is the same as in example 2, except that ezcImageAnalyzer
|
||||
is being configured to only use its ImageMagick handler and
|
||||
not the PHP handler. In addition, the location of the "identify" binary is
|
||||
explicitly set. See the results below:
|
||||
|
||||
.. image:: img/imageanalysis_example_03.jpg
|
||||
|
||||
::
|
||||
|
||||
Image data:
|
||||
MIME type: image/jpeg
|
||||
Width: 320 px
|
||||
Height: 240 px
|
||||
Filesize: 26365 b
|
||||
Comment: San Francisco airport, October 2005.
|
||||
|
||||
More information
|
||||
================
|
||||
|
||||
For more information, see the ezcImageAnalyzer API documentation.
|
||||
|
||||
|
||||
..
|
||||
Local Variables:
|
||||
mode: rst
|
||||
fill-column: 79
|
||||
End:
|
||||
vim: et syn=rst tw=79
|
||||
Reference in New Issue
Block a user