Вход Регистрация
Файл: vendor/intervention/image/src/Modifiers/ContainModifier.php
Строк: 58
<?php

declare(strict_types=1);

namespace 
InterventionImageModifiers;

use 
InterventionImageDriversSpecializableModifier;
use 
InterventionImageExceptionsRuntimeException;
use 
InterventionImageGeometryRectangle;
use 
InterventionImageInterfacesImageInterface;
use 
InterventionImageInterfacesSizeInterface;

class 
ContainModifier extends SpecializableModifier
{
    public function 
__construct(
        public 
int $width,
        public 
int $height,
        public 
mixed $background 'ffffff',
        public 
string $position 'center'
    
) {
    }

    
/**
     * @throws RuntimeException
     */
    
public function getCropSize(ImageInterface $image): SizeInterface
    
{
        return 
$image->size()
            ->
contain(
                
$this->width,
                
$this->height
            
)
            ->
alignPivotTo(
                
$this->getResizeSize($image),
                
$this->position
            
);
    }

    public function 
getResizeSize(ImageInterface $image): SizeInterface
    
{
        return new 
Rectangle($this->width$this->height);
    }
}
Онлайн: 0
Реклама