ImageViewHelper extends AbstractViewHelper

ViewHelper

This class is the implementation of a Fluid ViewHelper.

View this class in the TYPO3 ViewHelper reference: <f:uri.image>

FinalYes

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
throws
Exception
Return values
string

getExceptionMessage()

protected static getExceptionMessage(string $detailedMessage, RenderingContextInterface $renderingContext) : string
Parameters
$detailedMessage : string
$renderingContext : RenderingContextInterface
Return values
string

        
On this page

Search results