altermaker / affichage
生成符合官方图形规范的法国环境展示
Requires
- php: >=8.0
README
⚠ 本软件包不是ADEME官方验证的资源
由Altermaker开发的Affichage软件包提供对官方环境展示图形规范的严格实现。此软件包可生成符合ADEME发布的图形规范的视觉环境展示。
安装
使用以下命令安装最新版本
$ composer require altermaker/affichage
基本使用
<?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();
文档
如环境展示图形规范中详细说明,存在3种展示格式(信件、条形和指数)和6种变体(A1、A2、A3、A4、C和PS)。此软件包涵盖了所有格式和变体,除了“PS”(“仅地球”)变体。
默认配置
默认情况下,生成的展示格式为“条形”,变体为“A3”,其指数为零,字母为E,生成的视觉展示高度为100px。
⚠ 图形规范指出应使用Roboto字体。TrueType格式字体的位置需通过setPathToRoboto()静态方法声明。默认情况下,应用Arial字体或不可用时的默认无衬线字体。
使用Roboto-Medium.ttf文件并声明其位置。
<?php Affichage::setPathToRoboto('assets/css/Roboto-Medium.ttf');
定义得分
有两种方法可以定义指数或字母形式的得分。
<?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);
指数不是整数时,总是四舍五入到小数点后一位。
配置视觉展示
可以生成格式为“信件”、“条形”或“指数”的展示。默认情况下,展示格式为“条形”。
<?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');
可以生成符合图形规范中定义的任何一种变体的展示。默认情况下,展示格式为“A3”。
<?php // La méthode setVariant() accepte les valeurs 'a1', 'a2', 'a3', 'a4' et 'c' $affichage->setVariant('a1');
生成的视觉展示的比例遵循定义的高度。默认高度为100px,但可以进行重新定义。
<?php // La méthode setLabelHeight() accepte une valeur numérique en px $affichage->setLabelHeight(180);
获取视觉展示
一旦定义了得分并完成了视觉展示的配置,就可以显示渲染结果。
<?php // La méthode printLabel() génère le visuel au format HTML $affichage->printLabel();
如果需要,也可以将生成的HTML内容存储在一个变量中
<?php $affichage->htmlLabel();
完整示例
以下代码将展示一个高度为200px的视觉展示,按照A1变体的规则,以“信件”格式展示,声明的得分为“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();
关于
先决条件
Affichage软件包^1.0
与PHP 8.1或更高版本兼容。
支持
Affichage 1.x软件包仅提供有限的bug修复支持。
作者
Altermaker - contact@altermaker.com - https://altermaker.com
许可
Altermaker显示包,MIT许可证 - 有关更多详细信息,请参阅文件LICENSE。