protected function Textimage::createDerivativeFromImage in Textimage 8.3
Same name and namespace in other branches
- 8.4 src/Textimage.php \Drupal\textimage\Textimage::createDerivativeFromImage()
Create the derivative image from the Image object.
@todo (core) remove if #2359443 gets in
1 call to Textimage::createDerivativeFromImage()
- Textimage::buildImage in src/
Textimage.php - Build the image via core ImageStyle::createDerivative() method.
File
- src/
Textimage.php, line 794
Class
- Textimage
- Provides a Textimage.
Namespace
Drupal\textimageCode
protected function createDerivativeFromImage($style, $image, $derivative_uri) {
// Get the folder for the final location of this style.
$directory = $this->fileSystem
->dirname($derivative_uri);
// Build the destination folder tree if it doesn't already exist.
if (!file_prepare_directory($directory, FILE_CREATE_DIRECTORY | FILE_MODIFY_PERMISSIONS)) {
$this->logger
->error('Failed to create Textimage directory: %directory', [
'%directory' => $directory,
]);
return FALSE;
}
if (!$image
->isValid()) {
if ($image
->getSource()) {
$this->logger
->error("Invalid image at '%image'.", [
'%image' => $image
->getSource(),
]);
}
else {
$this->logger
->error("Invalid source image.");
}
return FALSE;
}
foreach ($style
->getEffects() as $effect) {
$effect
->applyEffect($image);
}
if (!$image
->save($derivative_uri)) {
if (file_exists($derivative_uri)) {
$this->logger
->error('Cached image file %destination already exists. There may be an issue with your rewrite configuration.', [
'%destination' => $derivative_uri,
]);
}
return FALSE;
}
return TRUE;
}