tei187/intensification-gradient

IntensificationGradient是一个PHP类,用于根据定义的停点生成基于十进制步长的基础RGBa渐变数据数组。特别适用于增强显示(如每小时标记、每日访问次数等)或基于限制颜色渐变范围的组成(品牌指南等)。

dev-main 2022-10-24 08:49 UTC

This package is auto-updated.

Last update: 2024-09-24 12:57:08 UTC


README

最后你可能需要的终极渐变生成器。

IntensificationGradient是一个PHP类,用于根据定义的停点生成基于十进制步长的基础RGBa渐变数据数组。特别适用于增强显示(如每小时标记、每日访问次数等)或基于限制颜色渐变范围的组成(品牌指南等)。当与RangeBasedPercentage一起使用时,可以很好地工作,以找到给定范围内的值的百分比。

功能

  • 使用任何RGB标记语法 *(例如:128,31,187,50%#fcad等)
  • 返回整个结果表或仅返回渐变的特定百分比
  • 以RGB(a)或十六进制转写的JSON格式导出结果渐变
  • 使用预定义的渐变,如热图黑体【部分完成】

如何使用?

从RGB(a)值创建渐变

$var = new tei187\IntensificationGradient\Generator;  // initiate object
$var->setValues(["#000", "#fff"]); // set values for gradient

echo $var->renderBar(); // renders gradient (requires CSS class assignment for proper display)

echo $var->result(51); // returns rgba(rrr,ggg,bbb,a) string for 51st step

echo $var->renderCell(85); // return echoable HTML object filled with color equivalent to 85th step of the gradient

从预定义预设创建渐变

$var = new tei187\IntensificationGradient\Generator;  // initiate object
$var->setValues("heatmap"); // set values from preset gradient
echo $var->renderBar();

默认渐变(截至2021/10/12)为:heatmapblackbodyrgbredgreenblueb/wgrayorangevioletlimecyanmagentayellowaquablue-graybbopbovbnvgcolor-temprastafariargon-bluer/gfacebookgoogleinstagramlyfttwitchskype

反转渐变

输入了从相反方向的渐变?或者可能需要在某个时候出于某种原因切换它?没问题,使用'invert'方法。

$var = new tei187\IntensificationGradient\Generator;  // initiate object
$var->setValues(["#f00", "#00f"]); // set values for gradient, from red to blue
$var->invert(); // reverts the gradient, from blue to red

导出到JSON

还可以将结果渐变范围导出到JSON格式。

$var = new tei187\IntensificationGradient\Generator;  // initiate object
$var->setValues(["#f00", "#00f"]); // set values for gradient, from red to blue
return $var->returnJSON();

生成预览页面

还可以渲染整个HTML页面以显示渐变范围的输出。

use tei187\IntensificationGradient\Generator as Generator;
use tei187\IntensificationGradient\HtmlPreview as HtmlPreview;
$gen = new Generator("opb"); // create Generator object
$prev = new HtmlPreview("Testing", $gen->returnArray(true)); // pass to HtmlPreview
echo $prev->buildPage();

默认渐变

默认预设渐变列表

List of default gradients

要求

  • PHP >= 7.3

作者