Chris@0: configuration['width']; Chris@17: $height = $this->configuration['height']; Chris@17: $scale = max($width / $image->getWidth(), $height / $image->getHeight()); Chris@17: Chris@17: list($x, $y) = explode('-', $this->configuration['anchor']); Chris@17: $x = image_filter_keyword($x, $image->getWidth() * $scale, $width); Chris@17: $y = image_filter_keyword($y, $image->getHeight() * $scale, $height); Chris@17: Chris@17: if (!$image->apply('scale_and_crop', ['x' => $x, 'y' => $y, 'width' => $width, 'height' => $height])) { Chris@0: $this->logger->error('Image scale and crop failed using the %toolkit toolkit on %path (%mimetype, %dimensions)', ['%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType(), '%dimensions' => $image->getWidth() . 'x' . $image->getHeight()]); Chris@0: return FALSE; Chris@0: } Chris@0: return TRUE; Chris@0: } Chris@0: Chris@17: /** Chris@17: * {@inheritdoc} Chris@17: */ Chris@17: public function getSummary() { Chris@17: $summary = [ Chris@17: '#theme' => 'image_scale_and_crop_summary', Chris@17: '#data' => $this->configuration, Chris@17: ]; Chris@17: $summary += parent::getSummary(); Chris@17: Chris@17: return $summary; Chris@17: } Chris@17: Chris@0: }