本文整理汇总了PHP中Sonata\MediaBundle\Model\MediaInterface::getProviderClass方法的典型用法代码示例。如果您正苦于以下问题:PHP MediaInterface::getProviderClass方法的具体用法?PHP MediaInterface::getProviderClass怎么用?PHP MediaInterface::getProviderClass使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Sonata\MediaBundle\Model\MediaInterface
的用法示例。
在下文中一共展示了MediaInterface::getProviderClass方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: resize
/**
* @param \Sonata\MediaBundle\Model\MediaInterface $media
* @param \Gaufrette\File $in
* @param \Gaufrette\File $out
* @param string $format
* @param array $settings
* @return void
*/
public function resize(MediaInterface $media, File $in, File $out, $format, $settings)
{
if (!isset($settings['width'])) {
throw new \RuntimeException(sprintf('Width parameter is missing in context "%s" for provider "%s"', $media->getContext(), $media->getProviderClass()));
}
$image = $this->getAdapter()->load($in->getContent());
if ($settings['height'] == null) {
$size = $image->getSize();
$settings['height'] = (int) ($settings['width'] * $size->getHeight() / $size->getWidth());
}
$content = $image->thumbnail(new Box($settings['width'], $settings['height']), $this->getMode())->get($format);
$out->setContent($content);
}