Colority — PHP‑бібліотека для парсингу й аналізу кольорів

Перекладено ШІ 5 Laravel News 02 червня, 2026

Colority — PHP‑бібліотека, що парсить і конвертує кольори (RGB, HSL, Hex), витягує палітри зображень і підбирає оптимальний контрастний колір. Хочете дізнатися, як легко генерувати теми та аватари в Laravel за допомогою Colority?

Colority від Tomás López — бібліотека для PHP, яка дозволяє трансформувати й перевіряти кольори, знаходити оптимальний контрастний колір, витягувати кольори зі зображень та робити інше. Вона вміє розпарсити рядки в об’єкти кольорів і конвертувати їх між RGB, HSL та Hex.

Якщо тип кольору невідомий, метод parse спрощує розбір різних форматів із рядка. Якщо рядок не вдасться перетворити на об’єкт кольору, метод поверне null:

/** @var RgbColor|null $rgbColor */
$rgbColor = colority()->parse('rgb(255,255,255)');
 
/** @var HexColor|null $hexColor */
$hexColor = colority()->parse('#51B389');
 
/** @var HslColor|null $hslColor */
$hslColor = colority()->parse('hsl(168.31deg, 49.58%, 46.67%)');

Colority полегшує створення тем, аватарів користувачів та інших UI-елементів. Наприклад, ось як отримати кольори зображення у вигляді масиву об’єктів RgbColor:

// Отримати кольори із зображення
/** @var array<RgbColor> $imageColors */
$imageColors = colority()->getImageColors(
    imagePath: __DIR__.'/image-colors.png',
    desiredNumColors: 10
);

Також можна знайти схожі кольори або підібрати найкращий колір переднього плану для заданого фону:

// Отримати найкращий колір переднього плану для заданого кольору
/** @var HexColor $bestForegroundHexColor (чорний або білий) */
$bestForegroundHexColor = $hexColor->getBestForegroundColor();
 
// Отримати схожий колір
/** @var HexColor|null $similarHexColor */
$similarHexColor = colority()->getSimilarColor($hexColor);

Основні можливості

  • Об’єктно-орієнтований API для роботи з кольорами
  • Розбір різних форматів кольорів із рядка (RGB, HSL, Hex)
  • Отримання кольорів, виявлених на зображенні
  • Підбір найкращого кольору переднього плану (білий, чорний або зі списку користувача) для фонового кольору з оптимальним коефіцієнтом контрасту.
  • Генерація фіксованого кольору на основі рядка.
  • Отримання випадкового кольору, схожого на заданий.
  • Та інше

Пакет працює з PHP +8.2 і легко встановлюється через Composer:

composer require tomloprod/colority

🧑‍💻 Почати можна на GitHub: tomloprod/colority

Популярні

Інше, що варто прочитати

30 Оновлено 01 червня, 2026

Інтеграція Laravel Socialite з бібліотекою Google Client PHP

Ви хочете навчитися, як інтегрувати Google OAuth у вашому проекті Laravel, використовуючи Socialite? Дізнайтеся, як налаштувати доступ до сервісів Google, таких як Календар, у нашій сьогоднішній статті

11 Оновлено 01 червня, 2026

Управління доступом у Filament за допомогою плагіна Shield

Дізнайтеся, як пакет Filament Shield забезпечує управління доступом до ваших панелей, ресурсів і віджетів у Laravel. Ця стаття розкриває основні можливості пакету, включаючи просту установку та підтримку багатокористувацьких середовищ — не пропустіть!

15 Оновлено 01 червня, 2026

Випущено Livewire 3.6

Laravel Livewire випустив нову версію 3.6, яка приносить з собою цікаві HTML-директиви для управління видимістю DOM-елементів і JavaScript-діями. Досліджуйте нові можливості Livewire, що допоможуть вам створити ще більш інтерактивні користувацькі інтерфейси!