altermaker/affichage

Génération d'un affichage environnemental français conforme à la charte graphique officielle

v1.2 2023-05-23 12:52 UTC

This package is auto-updated.

Last update: 2024-09-23 15:56:22 UTC


README

⚠ Ce package n'est pas une ressource officielle validée par l'ADEME

Le package Affichage développé par Altermaker propose une déclinaison stricte de la charte graphique officielle de l'Affichage Environnemental des biens et services de grande consommation. Ce package permet de générer un visuel d'Affichage Environnemental conforme à la charte graphique publiée par l'ADEME.

Installation

Installez la dernière version avec :

$ composer require altermaker/affichage

Utilisation basique

<?php

use Altermaker\Affichage\Affichage;

// Déclarer l'emplacement de la police d'écriture Roboto (obligatoire) dans votre code
Affichage::setPathToRoboto('assets/css/Roboto-Medium.ttf');

// Générer un affichage pour le score "B"
$affichage = new Affichage();
$affichage->setScoreLetter('B');
$affichage->printLabel();

Documentation

Comme détaillé dans la charte graphique de l'Affichage Environnemental, il existe 3 formats d'affichage (Lettre, Réglette et Indice) et 6 variantes (A1, A2, A3, A4, C et PS). Ce package couvre l'ensemble des formats et variantes à l'exception de la variante 'PS' ('Planète Seule').

Configuration par défaut

Par défaut, l'affichage généré est au format "réglette", en variante "a3", son indice est à zéro, sa lettre est E et la hauteur du visuel généré est 100px.

⚠ La charte graphique indique que la police d'écriture à utiliser est Roboto. L'emplacement du fichier de police au format true-type est à déclarer avec la méthode statique setPathToRoboto(). Par défaut, c'est la police Arial qui s'applique ou un sans-serif par défaut si Arial n'est pas disponible.

Utilisez le fichier Roboto-Medium.ttf et déclarez son emplacement.

<?php

Affichage::setPathToRoboto('assets/css/Roboto-Medium.ttf');

Définir le score

Deux méthodes sont disponibles pour définir le score en indice ou en lettre.

<?php

// La méthode setScoreLetter() accepte une lettre entre A et E
$affichage->setScoreLetter('A');

// La méthode setScoreIndex() accepte une veleur numérique
$affichage->setScoreIndex(1137);

Un indice n'étant pas un entier est toujours arrondi à une décimale.

Paramétrer le visuel

Il est possible de générer un affichage au format "Lettre", "Réglette" ou "Indice". Par défaut, l'affichage est au format "Réglette".

<?php

// Paramétrage au format "Lettre"
$affichage->setFormat('letter');

// Paramétrage au format "Réglette"
$affichage->setFormat('range');

// Paramétrage au format "Incide"
$affichage->setFormat('index');

Il est possible de générer un affichage suivant l'une des variantes définie par la charte graphique. Par défaut, l'affichage est en variante A3.

<?php

// La méthode setVariant() accepte les valeurs 'a1', 'a2', 'a3', 'a4' et 'c'
$affichage->setVariant('a1');

Les proportions du visuel généré suivent la hauteur définie. Par défaut, la hauteur est de 100px mais peut être redéfinie.

<?php

// La méthode setLabelHeight() accepte une valeur numérique en px
$affichage->setLabelHeight(180);

Récupérer le visuel

Une fois un score défini et le paramétrage du visuel réalisé, il est possible d'afficher le rendu.

<?php

// La méthode printLabel() génère le visuel au format HTML
$affichage->printLabel();

Si besoin, il est aussi possible de récupérer le contenu généré en HTML dans une variable :

<?php

$affichage->htmlLabel();

Exemple complet

Le code ci-dessous affichera un visuel de 200px de hauteur suivant les règles de la variante A1 au format "Lettre" pour un score déclaré de "A".

<?php

use Altermaker\Affichage\Affichage;

Affichage::setPathToRoboto('assets/css/Roboto-Medium.ttf');

$affichage = new Affichage();
$affichage->setVariant('a1')->setFormat('letter')->setLabelHeight(200)->setScoreLetter('A')->printLabel();

À propos

Prérequis

Le package Affichage ^1.0 fonctionne avec PHP 8.1 ou plus.

Support

Le package Affichage 1.x bénéficie d'un support limité ne couvrant que les bugs importants.

Auteur

Altermaker - contact@altermaker.com - https://altermaker.com

Licence

La package Affichage d'Altermaker et sous licence MIT - voir le fichier LICENSE pour plus de détails.