diff --git a/app/controllers/api/avatars.php b/app/controllers/api/avatars.php index 4801d87b7a..c268bd73c8 100644 --- a/app/controllers/api/avatars.php +++ b/app/controllers/api/avatars.php @@ -564,8 +564,8 @@ App::get('/v1/cards/cloud') ->label('origin', '*') ->param('userId', '', new UID(), 'User ID.', true) ->param('mock', '', new WhiteList(['employee', 'employee-2digit', 'hero', 'contributor', 'normal', 'platinum', 'normal-no-github', 'normal-long']), 'Mocking behaviour.', true) - ->param('width', 0, new Range(0, 2048), 'Resize image card width, Pass an integer between 0 to 2048.', true) - ->param('height', 0, new Range(0, 2048), 'Resize image card height, Pass an integer between 0 to 2048.', true) + ->param('width', 0, new Range(0, 512), 'Resize image width, Pass an integer between 0 to 512.', true) + ->param('height', 0, new Range(0, 320), 'Resize image height, Pass an integer between 0 to 320.', true) ->inject('user') ->inject('project') ->inject('dbForProject') @@ -654,13 +654,13 @@ App::get('/v1/cards/cloud') if ($isEmployee) { $image = new Imagick(__DIR__ . '/../../../public/images/cards/cloud/employee.png'); $image->setGravity(Imagick::GRAVITY_CENTER); - $baseImage->compositeImage($image, Imagick::COMPOSITE_OVER, 1586, 70); + $baseImage->compositeImage($image, Imagick::COMPOSITE_OVER, 793, 35); $text = new \ImagickDraw(); $text->setTextAlignment(Imagick::ALIGN_CENTER); $text->setFont(__DIR__ . '/../../../public/fonts/Inter-Bold.ttf'); $text->setFillColor(new \ImagickPixel('#FFFADF')); - $text->setFontSize(\strlen($employeeNumber) <= 2 ? 108 : 96); + $text->setFontSize(\strlen($employeeNumber) <= 2 ? 54 : 48); $text->setFontWeight(700); $metricsText = $baseImage->queryFontMetrics($text, $employeeNumber); @@ -668,15 +668,15 @@ App::get('/v1/cards/cloud') $hashtag->setTextAlignment(Imagick::ALIGN_CENTER); $hashtag->setFont(__DIR__ . '/../../../public/fonts/Inter-Bold.ttf'); $hashtag->setFillColor(new \ImagickPixel('#FFFADF')); - $hashtag->setFontSize(56); + $hashtag->setFontSize(28); $hashtag->setFontWeight(700); $metricsHashtag = $baseImage->queryFontMetrics($hashtag, '#'); - $startX = 1796; - $totalWidth = $metricsHashtag['textWidth'] + 24 + $metricsText['textWidth']; + $startX = 898; + $totalWidth = $metricsHashtag['textWidth'] + 12 + $metricsText['textWidth']; $hashtagX = ($metricsHashtag['textWidth'] / 2); - $textX = $hashtagX + 24 + ($metricsText['textWidth'] / 2); + $textX = $hashtagX + 12 + ($metricsText['textWidth'] / 2); $hashtagX -= $totalWidth / 2; $textX -= $totalWidth / 2; @@ -684,20 +684,20 @@ App::get('/v1/cards/cloud') $hashtagX += $startX; $textX += $startX; - $baseImage->annotateImage($hashtag, $hashtagX, 300, 0, '#'); - $baseImage->annotateImage($text, $textX, 300, 0, $employeeNumber); + $baseImage->annotateImage($hashtag, $hashtagX, 150, 0, '#'); + $baseImage->annotateImage($text, $textX, 150, 0, $employeeNumber); } if ($isContributor) { $image = new Imagick(__DIR__ . '/../../../public/images/cards/cloud/contributor.png'); $image->setGravity(Imagick::GRAVITY_CENTER); - $baseImage->compositeImage($image, Imagick::COMPOSITE_OVER, 1586, 68); + $baseImage->compositeImage($image, Imagick::COMPOSITE_OVER, 793, 34); } if ($isHero) { $image = new Imagick(__DIR__ . '/../../../public/images/cards/cloud/hero.png'); $image->setGravity(Imagick::GRAVITY_CENTER); - $baseImage->compositeImage($image, Imagick::COMPOSITE_OVER, 1586, 68); + $baseImage->compositeImage($image, Imagick::COMPOSITE_OVER, 793, 34); } setlocale(LC_ALL, "en_US.utf8"); @@ -715,39 +715,39 @@ App::get('/v1/cards/cloud') } if (\strlen($name) <= 23) { - $text->setFontSize(160); + $text->setFontSize(80); $scalingDown = false; } else { - $text->setFontSize(108); + $text->setFontSize(54); $scalingDown = true; } $text->setFontWeight(700); - $baseImage->annotateImage($text, 1024, 954, 0, $name); + $baseImage->annotateImage($text, 512, 477, 0, $name); $text = new \ImagickDraw(); $text->setTextAlignment(Imagick::ALIGN_CENTER); $text->setFont(__DIR__ . '/../../../public/fonts/Inter-SemiBold.ttf'); $text->setFillColor(new \ImagickPixel($isGolden || $isPlatinum ? '#FFFFFF' : '#FFB9CC')); - $text->setFontSize(54); + $text->setFontSize(27); $text->setFontWeight(600); $text->setTextKerning(1.08); - $baseImage->annotateImage($text, 1024, 1082, 0, \strtoupper($memberSince)); + $baseImage->annotateImage($text, 512, 541, 0, \strtoupper($memberSince)); if (!empty($githubName)) { $text = new \ImagickDraw(); $text->setTextAlignment(Imagick::ALIGN_CENTER); $text->setFont(__DIR__ . '/../../../public/fonts/Inter-Regular.ttf'); $text->setFillColor(new \ImagickPixel('#FFFFFF')); - $text->setFontSize($scalingDown ? 56 : 64); + $text->setFontSize($scalingDown ? 28 : 32); $text->setFontWeight(400); $metrics = $baseImage->queryFontMetrics($text, $githubName); - $baseImage->annotateImage($text, 1024 + 40 + 8, 746 + ($scalingDown ? 4 : 0), 0, $githubName); + $baseImage->annotateImage($text, 512 + 20 + 4, 373 + ($scalingDown ? 2 : 0), 0, $githubName); $image = new Imagick(__DIR__ . '/../../../public/images/cards/cloud/github.png'); $image->setGravity(Imagick::GRAVITY_CENTER); - $precisionFix = 10; - $baseImage->compositeImage($image, Imagick::COMPOSITE_OVER, 1024 - ($metrics['textWidth'] / 2) - 40 - 8, 746 - ($metrics['textHeight'] - $precisionFix)); + $precisionFix = 5; + $baseImage->compositeImage($image, Imagick::COMPOSITE_OVER, 512 - ($metrics['textWidth'] / 2) - 20 - 4, 373 - ($metrics['textHeight'] - $precisionFix)); } if (!empty($width) || !empty($height)) { @@ -771,8 +771,8 @@ App::get('/v1/cards/cloud-back') ->label('origin', '*') ->param('userId', '', new UID(), 'User ID.', true) ->param('mock', '', new WhiteList(['golden', 'normal', 'platinum']), 'Mocking behaviour.', true) - ->param('width', 0, new Range(0, 2048), 'Resize image card width, Pass an integer between 0 to 2048.', true) - ->param('height', 0, new Range(0, 2048), 'Resize image card height, Pass an integer between 0 to 2048.', true) + ->param('width', 0, new Range(0, 512), 'Resize image width, Pass an integer between 0 to 512.', true) + ->param('height', 0, new Range(0, 320), 'Resize image height, Pass an integer between 0 to 320.', true) ->inject('user') ->inject('project') ->inject('dbForProject') @@ -824,9 +824,9 @@ App::get('/v1/cards/cloud-back') $text->setTextAlignment(Imagick::ALIGN_CENTER); $text->setFont(__DIR__ . '/../../../public/fonts/SourceCodePro-Regular.ttf'); $text->setFillColor(new \ImagickPixel($isGolden ? '#664A1E' : ($isPlatinum ? '#555555' : '#E8E9F0'))); - $text->setFontSize(56); + $text->setFontSize(28); $text->setFontWeight(400); - $baseImage->annotateImage($text, 1024, 1192, 0, $userId); + $baseImage->annotateImage($text, 512, 596, 0, $userId); if (!empty($width) || !empty($height)) { $baseImage->resizeImage($width, $height, Imagick::FILTER_LANCZOS, 1); diff --git a/public/images/cards/cloud/back-golden.png b/public/images/cards/cloud/back-golden.png index 4a1076fa30..68f1114c45 100644 Binary files a/public/images/cards/cloud/back-golden.png and b/public/images/cards/cloud/back-golden.png differ diff --git a/public/images/cards/cloud/back-platinum.png b/public/images/cards/cloud/back-platinum.png index 16e09e80aa..cd56d227a2 100644 Binary files a/public/images/cards/cloud/back-platinum.png and b/public/images/cards/cloud/back-platinum.png differ diff --git a/public/images/cards/cloud/back.png b/public/images/cards/cloud/back.png index 9e3cc84d8e..bb8e5b0b29 100644 Binary files a/public/images/cards/cloud/back.png and b/public/images/cards/cloud/back.png differ diff --git a/public/images/cards/cloud/contributor.png b/public/images/cards/cloud/contributor.png index 8a1649f0d5..203f0f18e8 100644 Binary files a/public/images/cards/cloud/contributor.png and b/public/images/cards/cloud/contributor.png differ diff --git a/public/images/cards/cloud/employee.png b/public/images/cards/cloud/employee.png index 45e9cfb1f4..587c1feb84 100644 Binary files a/public/images/cards/cloud/employee.png and b/public/images/cards/cloud/employee.png differ diff --git a/public/images/cards/cloud/front-golden.png b/public/images/cards/cloud/front-golden.png index b66f628bb3..6f7c251de4 100644 Binary files a/public/images/cards/cloud/front-golden.png and b/public/images/cards/cloud/front-golden.png differ diff --git a/public/images/cards/cloud/front-platinum.png b/public/images/cards/cloud/front-platinum.png index e3c4843c0f..0bea38e9f3 100644 Binary files a/public/images/cards/cloud/front-platinum.png and b/public/images/cards/cloud/front-platinum.png differ diff --git a/public/images/cards/cloud/front.png b/public/images/cards/cloud/front.png index e427279dae..19dcad74b7 100644 Binary files a/public/images/cards/cloud/front.png and b/public/images/cards/cloud/front.png differ diff --git a/public/images/cards/cloud/github.png b/public/images/cards/cloud/github.png index deb0a759d3..b0ba724d40 100644 Binary files a/public/images/cards/cloud/github.png and b/public/images/cards/cloud/github.png differ diff --git a/public/images/cards/cloud/hero.png b/public/images/cards/cloud/hero.png index da36cac250..811df0f8cd 100644 Binary files a/public/images/cards/cloud/hero.png and b/public/images/cards/cloud/hero.png differ