PHPackages                             pavlista/nette-palette - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Image &amp; Media](/categories/media)
4. /
5. pavlista/nette-palette

ActiveLibrary[Image &amp; Media](/categories/media)

pavlista/nette-palette
======================

Palette support for Nette Framework and Latte template engine

v2.3.2(2y ago)1657.4k↓25%4[1 issues](https://github.com/MichaelPavlista/nette-palette/issues)MITPHPPHP &gt;=7.1.0 &lt;8.4

Since Mar 9Pushed 10mo ago3 watchersCompare

[ Source](https://github.com/MichaelPavlista/nette-palette)[ Packagist](https://packagist.org/packages/pavlista/nette-palette)[ Docs](https://github.com/MichaelPavlista/nette-palette)[ RSS](/packages/pavlista-nette-palette/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (9)Versions (20)Used By (0)

Nette Palette
=============

[](#nette-palette)

Nette palette je rozšíření pro Nette Framework které umožňuje jednoduchuché i pokročilé úpravy obrazových souborů včetně inteligentního generování miniatur a náhledů.

Palette u obrázků například umožňuje: změny rozměrů, vkládání vodoznaků, pokročilé transformace, nastavení průhlednosti a množství dalších efektních filtrů a funkcí.

Instalace a integrace do Nette
------------------------------

[](#instalace-a-integrace-do-nette)

#### 1. Nejdříve Palette naistalujeme do projektu nejlépe pomocí [composeru](https://getcomposer.org/).

[](#1-nejdříve-palette-naistalujeme-do-projektu-nejlépe-pomocí-composeru)

```
php composer.phar require pavlista/nette-palette

```

#### 2. Po té v Nette do config.neon zaregistrujeme rozšíření.

[](#2-po-té-v-nette-do-configneon-zaregistrujeme-rozšíření)

```
extensions:
    palette: NettePalette\PaletteExtension

```

#### 3. Do config.neon také přidáme sekci s nastavením rozšíření a správně ji vyplníme.

[](#3-do-configneon-také-přidáme-sekci-s-nastavením-rozšíření-a-správně-ji-vyplníme)

```
palette:
    path: 'files/thumbs/'
    url: 'http://website.com/files/thumbs/'
    signingKey: '%uniqueSigningKey%'
    basepath: '/var/www/website.com/www/files/'

```

- **path:** Je relativní nebo absolutní cesta ke složce do které se mají vygenerované miniatury a obrázky ukládat. Tato složka musí existovat a musí být do ní možné zapisovat!
- **url:** Absolutní url adresa s lomítkem na konci na které je složka s miniatury veřejně dostupná.
- **signingKey:** Náhodný řetězec, kterým se podepisují (http) požadavky na generování miniatur.
- **basepath:** *(nepovinný)* Absolutní cesta k document rootu webu.
- **fallbackImage:** *(nepovinný)* Absolutní cesta k obrázku, který se použije v případě, že požadovaný obrázek neexistuje (užitečné hlavně pro DEV).
- **fallbackImages** *(nepovinný)* Definice pojmenovaných výchozích obrázků ve tvaru `název obrázku` =&gt; `absolutní cesta k obrázku`, které je možné v Palette query použít pomocí `FallbackImg`.
- **template:** *(nepovinný)* Pole šablon ve tvaru `název šablony` =&gt; `paletteQuery`. Šablony je možné používat v palette query přes `.` např.: `.template`.
- **websiteUrl:** *(nepovinný)* Adresa aplikace s lomítkem na konci pro generování absolutních url adres k obrázkům v cli (např.: `https://localhost/`).
- **pictureLoader:** *(nepovinný)* Služba implementující interface `IPictureLoader`, přes kterou je možné upravit logiku načítání a generování obrázků přes Palette.
- **handleException:** *(nepovinný)* Jak se má pracovat s výjímkami při generování obrázků? true *(default)* - výjímky se logují přes tracy, false - výjímky se vyhazují, string - výjímky se logují do souboru přes tracy.
- **webpMacroDefaultQuality:** *(nepovinný)* Definice výchozí kvality (1–100) WebP obrázků pro makro n:webp. Pokud není zadáno, použije se `100`.

#### 4. A na konec do routovacích pravidel aplikace přidat na první místo toto pravidlo:

[](#4--a-na-konec-do-routovacích-pravidel-aplikace-přidat-na-první-místo-toto-pravidlo)

```
$router[] = new Route('files/thumbs/', 'Palette:Palette:image');

```

Kde **files/thumbs/** je relativní veřejná url adresa ke složce miniatur. Díky tomuto je možné aby Palette generovala miniatury obrázků vždy on demand.

Použití v nette
---------------

[](#použití-v-nette)

V Nette je služba palette dostupná pod názvem **@palette.service**.

### Latte

[](#latte)

V Latte je možné palette používat následujícími způsoby:

---

#### Makro n:palette-src

[](#makro-npalette-src)

Makro je možné použít u HTML tagu `` a ``.
Na vstupu musí být vždy cesta k souboru obrázku (ne url adresa) a palette query.

**Příklad:**

```
{* Použití v tagu img (src) *}

{* Použití v tagu source (srcset) *}

```

**Výsledné HTML:**

```

```

---

#### Filtr palette

[](#filtr-palette)

V Latte lze generovat miniatury a různé verze obrázků pomocí filtru palette na jehož vstupu musí být vždy cesta k souboru obrázku (ne url adresa) a palette query.

**Příklad:**

```

```

Tento kód vygeneruje z obrázku miniaturu obrázku o rozměrech 100 x 150px s 2px černým rámečkem okolo.

---

#### Makro n:webp

[](#makro-nwebp)

Pomocí tohoto makra je možné vygenerovat picture set obrázků, kde jako první verze bude verze obrázku ve formátu WebP s fallbackem na původní formát souboru (jpg|png|gif). Makro je možné použít pouze HTML tagu ``.

Uvnitř tagu picture musí být zadán jeden tag `img` s definicí zdrojového obrázku setu přes makro `n:picture-src`
(argumenty tohoto makra jsou shodné s makrem n:palette-src).

V makru je možné zadat procentuální kvalitu výsledného obrázku (1-100), pokud není zadána použije se hodnota z konfigurace `webpMacroDefaultQuality`.

**Příklady:**

```
JPG

JPG - Custom WebP quality (1–100)

WebP

```

**Výsledek:**

```
JPG

JPG - Custom WebP quality (1–100)

WebP

```

---

Seznam všech možných filtrů a effektů včetně používání samotného Palette naleznete na [Githubu Palette](https://github.com/MichaelPavlista/palette)

Důležité odkazy
---------------

[](#důležité-odkazy)

- [Github Palette](https://github.com/MichaelPavlista/palette)
- [Github Nette Palette](https://github.com/MichaelPavlista/nette-palette)
- [Dokumentace Palette a jejích filtrů](http://palette.pavlista.cz/)

###  Health Score

49

—

FairBetter than 95% of packages

Maintenance37

Infrequent updates — may be unmaintained

Popularity38

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity89

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 98.4% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~172 days

Recently: every ~206 days

Total

18

Last Release

796d ago

Major Versions

v1.5.0 → v2.0.02019-09-18

v1.x-dev → v2.0.12019-11-28

v2.0.1 → v3.x-dev2021-12-03

PHP version history (5 changes)v1.0.0PHP &gt;=5.4.0

v2.0.0PHP &gt;=7.1.0

v3.x-devPHP &gt;=7.4 &lt;8

2.3.1PHP &gt;=7.1.0 &lt;8.3

v2.3.2PHP &gt;=7.1.0 &lt;8.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/1a6922ae41260b694e73d060dfb08ad82632315c4f8bf378fa9ba986857233a3?d=identicon)[MichaelPavlista](/maintainers/MichaelPavlista)

---

Top Contributors

[![MichaelPavlista](https://avatars.githubusercontent.com/u/10758477?v=4)](https://github.com/MichaelPavlista "MichaelPavlista (61 commits)")[![robotomarvin](https://avatars.githubusercontent.com/u/3751587?v=4)](https://github.com/robotomarvin "robotomarvin (1 commits)")

---

Tags

thumbnailnetteimagegdimagickwatermarklatte

###  Code Quality

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/pavlista-nette-palette/health.svg)

```
[![Health](https://phpackages.com/badges/pavlista-nette-palette/health.svg)](https://phpackages.com/packages/pavlista-nette-palette)
```

###  Alternatives

[intervention/image

PHP Image Processing

14.3k194.3M2.2k](/packages/intervention-image)[intervention/image-laravel

Laravel Integration of Intervention Image

1536.5M102](/packages/intervention-image-laravel)[folklore/image

Image manipulation library for Laravel 5 based on Imagine and inspired by Croppa for easy url based manipulation

270248.2k5](/packages/folklore-image)[kollarovic/thumbnail

Generating image thumbnails

1035.5k2](/packages/kollarovic-thumbnail)[intervention/image-symfony

Symfony Integration of Intervention Image

1066.8k](/packages/intervention-image-symfony)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
