/**
  * Perform the conversion.
  *
  * @param \Spatie\MediaLibrary\Media $media
  * @param Conversion                 $conversion
  * @param string                     $copiedOriginalFile
  *
  * @return string
  */
 public function performConversion(Media $media, Conversion $conversion, $copiedOriginalFile)
 {
     $conversionTempFile = pathinfo($copiedOriginalFile, PATHINFO_DIRNAME) . '/' . string()->random(16) . $conversion->getName() . '.' . $media->extension;
     File::copy($copiedOriginalFile, $conversionTempFile);
     foreach ($conversion->getManipulations() as $manipulation) {
         $glideImage = new GlideImage();
         $glideImage->load($conversionTempFile, $manipulation)->useAbsoluteSourceFilePath()->save($conversionTempFile);
         $glideImage = null;
     }
     return $conversionTempFile;
 }
예제 #2
0
 /**
  * Set the path to the image that needs to be converted
  *
  * @param $sourceFile
  * @param array $modificationParameters = []
  * @return $this 
  * @static 
  */
 public static function load($sourceFile, $modificationParameters = array())
 {
     return \Spatie\Glide\GlideImage::load($sourceFile, $modificationParameters);
 }
 /**
  * Convert an image using conversionParameters.
  *
  * @param $sourceFile
  * @param $conversionParameters
  * @param $outputFile
  */
 public function convertImage($sourceFile, $conversionParameters, $outputFile)
 {
     $conversionParameters = $this->forceJpgFormat($conversionParameters);
     $glideImage = new GlideImage();
     $glideImage->load($sourceFile, $conversionParameters)->useAbsoluteSourceFilePath()->save($outputFile);
 }