ImageViewHelper extends AbstractViewHelper
This class is the implementation of a Fluid ViewHelper.
View this class in the TYPO3 ViewHelper reference: <f:uri.image>
Resizes a given image (if required) and returns its relative path.
This ViewHelper should only be used for images within FAL storages, or where graphical operations shall be performed.
Note that when the contents of a non-FAL image are changed, an image may not show updated processed contents unless either the FAL record is updated/removed, or the temporary processed images are cleared.
Also note that image operations (cropping, scaling, converting) on non-FAL files may be changed in future TYPO3 versions, since those operations are coupled with FAL metadata. Each non-FAL image operation creates a "fake" FAL record, which may lead to problems.
For extension resource files, use :ref:<f:uri.resource> <typo3-fluid-uri-resource>
instead.
External URLs are not processed and just returned as is.
Examples
Default
::
<f:uri.image src="EXT:myext/Resources/Public/typo3_logo.png" />
Results in the following output within TYPO3 frontend:
typo3conf/ext/myext/Resources/Public/typo3_logo.png
and the following output inside TYPO3 backend:
../typo3conf/ext/myext/Resources/Public/typo3_logo.png
Image Object
::
<f:uri.image image="{imageObject}" />
Results in the following output within TYPO3 frontend:
fileadmin/images/image.png
and the following output inside TYPO3 backend:
fileadmin/images/image.png
Inline notation
::
{f:uri.image(src: 'EXT:myext/Resources/Public/typo3_logo.png', minWidth: 30, maxWidth: 40)}
typo3temp/assets/images/[b4c0e7ed5c].png
Depending on your TYPO3s encryption key.
Non existing image
::
<f:uri.image src="NonExistingImage.png" />
Could not get image resource for "NonExistingImage.png".
Base 64
When the :typo3:viewhelper-argument:base64 <t3viewhelper:typo3-cms-fluid-viewhelpers-uri-imageviewhelper-base64>
argument is set to true, this ViewHelper returns a base 64 encoded version of the ressource.
.. code-block:: html
<img src="{f:uri.image(base64: 'true',
src:'EXT:backend/Resources/Public/Images/typo3_logo_orange.svg')}">
Will return the image encoded in base64:
.. code-block:: html
<img src="data:image/svg+xml;base64,PHN2...cuODQ4LTYuNzU3Ii8+Cjwvc3ZnPgo=">
This can be particularly useful inside FluidEmail
or to prevent unneeded HTTP calls.
Table of Contents
Methods
- initializeArguments() : void
- render() : string
- Resizes the image (if required) and returns its path. If the image was not resized, the path will be equal to $src
- getExceptionMessage() : string
- getImageService() : ImageService
Methods
initializeArguments()
public
initializeArguments() : void
render()
Resizes the image (if required) and returns its path. If the image was not resized, the path will be equal to $src
public
render() : string
Tags
Return values
stringgetExceptionMessage()
protected
static getExceptionMessage(string $detailedMessage, RenderingContextInterface $renderingContext) : string
Parameters
- $detailedMessage : string
- $renderingContext : RenderingContextInterface
Return values
stringgetImageService()
protected
static getImageService() : ImageService