$theme->font = 'SourceSans';
- $tmp = Files::tempnam() . '.jpg';
- $blur = Files::tempnam() . '.jpg';
-
- $resizer = new Resizer();
- $resizer->loadImage($banner);
- $resizer->resize(1200, 680, true, true);
- $resizer->output('jpg', $tmp);
- Imagemagick::blur($tmp, $blur);
- $theme->addMediaToField('backgroundImage', $blur);
-
+ $avg = Imagemagick::getAverageColor($banner);
+ $distance = $avg->distance(new \Cubist\Util\Graphics\Color('#fff'));
+ $darken = $distance <= 20000000;
+
+ if ($darken) {
+ $tmp = Files::tempnam() . '.jpg';
+ Imagemagick::brightnessContrast($banner, $tmp, -20);
+ $banner = $tmp;
+ }
- $blur = Files::tempnam() . '.jpg';
- $resizer = new Resizer();
- $resizer->loadImage($banner);
- $resizer->resize(390, 844, true, true);
- $resizer->output('jpg', $tmp);
- Imagemagick::blur($tmp, $blur);
- $theme->addMediaToField('backgroundImageMobile', $blur);
+ $theme->addMediaToField('backgroundImage', self::resizeAndBlur($banner, 1200, 680));
+ $theme->addMediaToField('backgroundImageMobile', self::resizeAndBlur($banner, 390, 844));
$theme->backgroundCustomMobile = '1';
$theme->backgroundSizeMobile = ThemeBackgroundSize::RATIO;
$theme->save();
return $theme->id;
}
+
+ protected static function resizeAndBlur($image, $width, $height)
+ {
+ $tmp = Files::tempnam() . '.jpg';
+ $blur = Files::tempnam() . '.jpg';
+
+ $resizer = new Resizer();
+ $resizer->loadImage($image);
+
+ $resizer->resize($width, $height, true, true);
+ $resizer->output('jpg', $tmp);
+
+
+ Imagemagick::blur($tmp, $blur);
+
+ unlink($tmp);
+ return $blur;
+ }
}
"source": {
"type": "git",
"url": "git://git.cubedesigners.com/cubist_util.git",
- "reference": "bb497cd182cb0eea33f2d83d4bdae8a6b62a1e0b"
+ "reference": "48f8939f743124ba01d3a2ca3efaf5ece693568a"
},
"dist": {
"type": "tar",
- "url": "https://composer.cubedesigners.com/dist/cubist/util/cubist-util-dev-master-e86967.tar",
- "reference": "bb497cd182cb0eea33f2d83d4bdae8a6b62a1e0b",
- "shasum": "65bfe13dc8d44df28e15ac99047b7df58a87ccf4"
+ "url": "https://composer.cubedesigners.com/dist/cubist/util/cubist-util-dev-master-09972a.tar",
+ "reference": "48f8939f743124ba01d3a2ca3efaf5ece693568a",
+ "shasum": "95d60cc6bf9cb59d9f6ae9471895a3a734a26e3f"
},
"require": {
"cubist/net": "dev-master",
}
],
"description": "Utilities class",
- "time": "2023-09-26T16:42:08+00:00"
+ "time": "2023-09-28T06:54:51+00:00"
},
{
"name": "cviebrock/eloquent-sluggable",
},
{
"name": "doctrine/deprecations",
- "version": "v1.1.1",
+ "version": "1.1.2",
"source": {
"type": "git",
"url": "https://github.com/doctrine/deprecations.git",
- "reference": "612a3ee5ab0d5dd97b7cf3874a6efe24325efac3"
+ "reference": "4f2d4f2836e7ec4e7a8625e75c6aa916004db931"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/deprecations/zipball/612a3ee5ab0d5dd97b7cf3874a6efe24325efac3",
- "reference": "612a3ee5ab0d5dd97b7cf3874a6efe24325efac3",
+ "url": "https://api.github.com/repos/doctrine/deprecations/zipball/4f2d4f2836e7ec4e7a8625e75c6aa916004db931",
+ "reference": "4f2d4f2836e7ec4e7a8625e75c6aa916004db931",
"shasum": ""
},
"require": {
"homepage": "https://www.doctrine-project.org/",
"support": {
"issues": "https://github.com/doctrine/deprecations/issues",
- "source": "https://github.com/doctrine/deprecations/tree/v1.1.1"
+ "source": "https://github.com/doctrine/deprecations/tree/1.1.2"
},
- "time": "2023-06-03T09:27:29+00:00"
+ "time": "2023-09-27T20:04:15+00:00"
},
{
"name": "doctrine/event-manager",