699 lines
40 KiB
JavaScript
699 lines
40 KiB
JavaScript
/* ============================================================
|
||
* 海报素材来源配置(唯一权威清单)
|
||
* 用途:
|
||
* 1. 构建脚本 scripts/build-posters.js require 本文件获取下载/解析配置
|
||
* 2. 「海报素材」页面 poster-sources.html 读取本文件渲染来源清单
|
||
* 新增来源步骤:
|
||
* 1. 在数组末尾追加配置(GitHub 直拉 gh-files / npm dir-files)
|
||
* 2. 运行 node scripts/build-posters.js 重新构建
|
||
* 3. poster.html / poster-sources.html / poster-skills.html 中 bump ?v= 版本
|
||
* 字段说明:
|
||
* id 唯一 id(内置库「源:名称」前缀)
|
||
* type 素材类型:bg(背景底纹) / illustration(插画) / template(成品模板)
|
||
* decoration(装饰元素) / mockup(展示样机) / photo(无版权图片)
|
||
* font(字体) / palette(配色方案)
|
||
* name 英文名 nameCn 中文名 desc 一句话风格描述
|
||
* license 协议 licenseNote 协议中文说明(署名要求等)
|
||
* home 官网 github GitHub 仓库
|
||
* format 拉取方式:gh-files(GitHub 仓库直拉)| dir-files(npm 目录枚举)
|
||
* gh/ghBranch GitHub 仓库与分支(format=gh-files 必填)
|
||
* npm npm 包名(format=dir-files 必填)
|
||
* dirs 目标目录(gh-files / dir-files 均用)
|
||
* ext 文件扩展名过滤(默认 .svg;海报可含 .png/.jpg/.json/.ttf)
|
||
* scaleMode wrap(保留原始坐标/比例,适合位图/模板)| body(缩放几何,适合纯矢量装饰)
|
||
* coordText 坐标系说明(页面展示)
|
||
* variants 变体说明(页面展示)
|
||
* added 收录日期(页面展示)
|
||
* workspaces 适用工作区(海报库固定 ['poster'];预留扩展)
|
||
* ============================================================ */
|
||
(function (root, factory) {
|
||
if (typeof module !== 'undefined' && module.exports) module.exports = factory();
|
||
else root.HGB_PosterSources = factory();
|
||
})(typeof self !== 'undefined' ? self : this, function () {
|
||
'use strict';
|
||
return [
|
||
/* ============================================================
|
||
* 首批合规源(2026-08-20 录入,license 逐条核实 + jsDelivr 可拉取验证):
|
||
* uiGradients 配色 palette(MIT,gradients.json 顶层为 [{name, colors}] 数组)
|
||
* twemoji 装饰 decoration(CC BY 4.0,assets/svg 表情全量过大,maxItems 限量收录)
|
||
* 已筛选但暂不可用(记录备查):
|
||
* unDraw 自定义协议明令禁止 AI/机器学习训练,与 AI 海报生成冲突 → 排除
|
||
* Open Doodles CC0 但素材托管于 Dropbox/Webflow,无 GitHub 仓库可直拉 → 不可用
|
||
* Hero Patterns 官网声明免费但仓库无 LICENSE 文件 → 合规风险,待定
|
||
* open-peeps / humaaans / MagicPattern svg-backgrounds jsDelivr 未索引(404)→ 不可用
|
||
* svg-patterns npm 包 p/*.js 为依赖 virtual-dom 的 JS 模板(非静态 SVG)→ 待定
|
||
* subtlepatterns npm 包存在但许可证未定(Toptal 自定义条款)→ 待定
|
||
* ============================================================ */
|
||
{
|
||
id: 'uigradients',
|
||
type: 'palette',
|
||
name: 'uiGradients',
|
||
nameCn: 'UI 渐变配色库',
|
||
desc: 'GitHub 社区精选 200+ 款渐变配色方案,含品牌渐变、自然风光与经典风格渐变,可直接用于海报背景与主视觉',
|
||
license: 'MIT',
|
||
licenseNote: 'MIT 协议,可自由商用、修改、再分发,需保留版权声明',
|
||
home: 'https://uigradients.com',
|
||
github: 'https://github.com/ghosh/uiGradients',
|
||
format: 'gh-files',
|
||
gh: 'ghosh/uiGradients',
|
||
ghBranch: 'master',
|
||
dirs: ['.'],
|
||
ext: ['.json'],
|
||
scaleMode: 'wrap',
|
||
coordText: '配色数据(gradients.json,顶层数组:名称 + 十六进制色值序列)',
|
||
variants: '单文件 gradients.json,约 200 款渐变',
|
||
added: '2026-08-20',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'twemoji',
|
||
type: 'decoration',
|
||
name: 'Twemoji',
|
||
nameCn: 'Twitter 彩色表情',
|
||
desc: 'Twitter/X 官方彩色 Emoji 表情 SVG(CC BY 4.0),适合作为海报点缀符号与情感化视觉元素',
|
||
license: 'CC BY 4.0',
|
||
licenseNote: 'CC BY 4.0,可商用,使用需署名(Twitter/X 官方表情库)',
|
||
home: 'https://twemoji.twitter.com',
|
||
github: 'https://github.com/jdecked/twemoji',
|
||
format: 'gh-files',
|
||
gh: 'jdecked/twemoji',
|
||
ghBranch: 'master',
|
||
dirs: ['assets/svg'],
|
||
ext: ['.svg'],
|
||
scaleMode: 'wrap',
|
||
coordText: '36×36 视口彩色矢量表情,保留原始比例',
|
||
exclude: '(?:^|/)1f1[ef]', // 剔除国旗段(1f1e6-1f1ff 区域指示符占位过多,海报价值低;锚定文件名而非完整路径)
|
||
variants: '表情全集 3600+ 过大,首批 maxItems 限量收录 500 个常用表情(活动/运动/物品/符号),后续可按需扩量',
|
||
added: '2026-08-20',
|
||
maxItems: 500,
|
||
workspaces: ['poster']
|
||
},
|
||
/* ============================================================
|
||
* 第二批合规源(2026-08-21 录入,license 逐条核实 + jsDelivr 可拉取验证):
|
||
* hero-patterns 背景底纹 bg(lowmess fork v2.1.0,MIT;src/patterns/*.js 为函数模板,
|
||
* 构建时由 transform:'heropatterns' 专用解析器执行为静态 SVG,全量 ~90 款)
|
||
* league-spartan 字体 font(SIL OFL 1.1;fonts/ttf/ 9 个字重 TTF,适合海报大标题)
|
||
* open-color 配色 palette(MIT;open-color.json 13 色系 × 10 明度,经典现代色板)
|
||
* 本轮探测排除(记录备查):
|
||
* fxemoji / emoji-data / fluentui-emoji jsDelivr 包超 50MB 拒绝索引(403)→ 不可用
|
||
* noto-emoji(旧 tag) jsDelivr 未索引该 tag(404)→ 不可用
|
||
* Open Doodles / LadybugBot illustrations / illlustrations jsDelivr 未索引(404)→ 不可用
|
||
* color-names(MIT) 31,915 行色名 CSV 无视觉预览,海报场景价值低 → 本轮不收录
|
||
* Montserrat / Raleway 字体仓库 jsDelivr 超 50MB → 不可用;league-gothic 仅 .glyphs 源文件无成品字体
|
||
* ostrich-sans / chunk(The League of Moveable Type) jsDelivr 未索引 或 仅 UFO 源文件无 TTF 成品 → 不可用
|
||
* ============================================================ */
|
||
{
|
||
id: 'heropatterns',
|
||
type: 'bg',
|
||
name: 'Hero Patterns',
|
||
nameCn: '可平铺背景底纹',
|
||
desc: 'Steve Schoger 经典背景底纹集合(lowmess 维护 v2.1),约 90 款几何/纹理/趣味图案,可无缝平铺,直接作为海报背景底纹',
|
||
license: 'MIT',
|
||
licenseNote: 'MIT 协议,可自由商用、修改、再分发,需保留版权声明',
|
||
home: 'https://heropatterns.com',
|
||
github: 'https://github.com/lowmess/hero-patterns',
|
||
format: 'gh-files',
|
||
gh: 'lowmess/hero-patterns',
|
||
ghBranch: '2.1.0',
|
||
dirs: ['src/patterns'],
|
||
ext: ['.js'],
|
||
scaleMode: 'wrap',
|
||
coordText: '平铺单元 SVG(各图案尺寸不一,保留原始 viewBox)',
|
||
exclude: '(?:^|/)_', // 剔除 _defaults.js / _utils.js 工具模块(锚定文件名而非完整路径)
|
||
transform: 'heropatterns', // 构建脚本专用:JS 函数模板 → 静态 SVG
|
||
variants: '全量收录 ~90 款,默认黑色填充(可叠加底色或换色后使用)',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'league-spartan',
|
||
type: 'font',
|
||
name: 'League Spartan',
|
||
nameCn: 'League Spartan 字体',
|
||
desc: 'League of Moveable Type 出品的现代几何无衬线字体(SIL OFL 1.1),粗细跨度 Thin→Black 共 9 个字重,适合海报大标题与品牌主视觉',
|
||
license: 'OFL-1.1',
|
||
licenseNote: 'SIL Open Font License 1.1,可自由商用与修改;单独售卖字体文件需注明来源,与软件捆绑分发则无需署名',
|
||
home: 'https://www.theleagueofmoveabletype.com/league-spartan',
|
||
github: 'https://github.com/theleagueof/league-spartan',
|
||
format: 'gh-files',
|
||
gh: 'theleagueof/league-spartan',
|
||
ghBranch: 'master',
|
||
dirs: ['fonts/ttf'],
|
||
ext: ['.ttf'],
|
||
scaleMode: 'wrap',
|
||
coordText: 'TTF 静态字体文件(9 个字重,浏览器 @font-face 直载)',
|
||
variants: 'Thin / ExtraLight / Light / Regular / Medium / SemiBold / Bold / ExtraBold / Black',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'open-color',
|
||
type: 'palette',
|
||
name: 'Open Color',
|
||
nameCn: 'Open Color 现代色板',
|
||
desc: 'MIT 开源现代色板:13 个色系(灰/红/粉/紫/蓝/青/绿/黄/橙…)× 每个 10 级明度,共 130 色,色调统一和谐,适合海报背景、强调色与数据可视化配色',
|
||
license: 'MIT',
|
||
licenseNote: 'MIT 协议,可自由商用、修改、再分发,需保留版权声明',
|
||
home: 'https://yeun.github.io/open-color/',
|
||
github: 'https://github.com/yeun/open-color',
|
||
format: 'gh-files',
|
||
gh: 'yeun/open-color',
|
||
ghBranch: '1.9.1',
|
||
dirs: ['.'],
|
||
ext: ['.json'],
|
||
exclude: '(?:^|/)params\\.json$', // 剔除站点元数据 params.json(非配色数据)
|
||
scaleMode: 'wrap',
|
||
coordText: '配色数据(open-color.json,13 色系 × 10 明度十六进制色值)',
|
||
variants: '单文件 open-color.json,130 色(13 色系 × 10 级)',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
/* ============================================================
|
||
* 第三批合规源(2026-08-21 录入,license 逐条核实 + jsDelivr 可拉取验证):
|
||
* catppuccin/palette 配色 palette(MIT;palette.json 4 主题 × 26 色 + porcelain 变体)
|
||
* coolshapes 装饰 decoration(MIT;public/shapes/svg 66 款几何/花朵/月亮/星星等海报点缀形状)
|
||
* Playfair Display / Oswald / Space Grotesk 字体 font(OFL-1.1;fontsource 可变字体 woff2 子集,
|
||
* latin/cyrillic/vietnamese 按需直载,适合海报标题与正文,字体包可自由商用)
|
||
* 本轮探测排除(记录备查):
|
||
* nord 仅 ACO/ASE/GPL 等专有色板格式,无 JSON 数据 → 不可直接收录
|
||
* tokyonight.nvim extras JSON 为终端主题配置(含背景/前景/ANSI 索引色),非纯色板 → 不作为配色源
|
||
* dracula/dracula R 语言包结构,无独立配色 JSON 文件 → 不可用
|
||
* altercation/solarized jsDelivr 未索引(404)→ 不可用
|
||
* googlefonts/noto-emoji jsDelivr 仓库超限(403)→ 不可用
|
||
* ============================================================ */
|
||
{
|
||
id: 'catppuccin',
|
||
type: 'palette',
|
||
name: 'Catppuccin',
|
||
nameCn: 'Catppuccin 主题色板',
|
||
desc: '社区热门主题色板:Latte / Frappe / Macchiato / Mocha 4 套主题 × 26 色(含玫瑰水/火焰/粉/葡萄紫等柔和高对比色),风格柔和不刺眼,适合海报背景与强调色',
|
||
license: 'MIT',
|
||
licenseNote: 'MIT 协议,可自由商用、修改、再分发,需保留版权声明',
|
||
home: 'https://catppuccin.com',
|
||
github: 'https://github.com/catppuccin/palette',
|
||
format: 'gh-files',
|
||
gh: 'catppuccin/palette',
|
||
ghBranch: 'v0.2.0',
|
||
dirs: ['.'],
|
||
ext: ['.json'],
|
||
scaleMode: 'wrap',
|
||
coordText: '配色数据(palette.json 4 主题 × 26 色 + palette-porcelain.json 变体)',
|
||
variants: '2 个 JSON:主色板 palette.json + 陶瓷变体 palette-porcelain.json',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'coolshapes',
|
||
type: 'decoration',
|
||
name: 'Coolshapes',
|
||
nameCn: '几何装饰形状',
|
||
desc: '100% 开源几何装饰形状包:椭圆/花朵/月亮/多边形/星星/三角/轮辐等 66 款矢量图形(200×200),适合作为海报点缀元素与插画局部',
|
||
license: 'MIT',
|
||
licenseNote: 'MIT 协议,可自由商用、修改、再分发,需保留版权声明',
|
||
home: 'https://coolshap.es',
|
||
github: 'https://github.com/realvjy/coolshapes',
|
||
format: 'gh-files',
|
||
gh: 'realvjy/coolshapes',
|
||
ghBranch: 'main',
|
||
dirs: ['public/shapes/svg'],
|
||
ext: ['.svg'],
|
||
scaleMode: 'wrap',
|
||
coordText: '200×200 视口矢量图形,保留原始坐标(可等比缩放后叠加使用)',
|
||
variants: '全量收录 66 款(ellipse/flower/misc/moon/polygon/star/triangle/wheel)',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'fontsource-playfair',
|
||
type: 'font',
|
||
name: 'Playfair Display',
|
||
nameCn: 'Playfair Display 字体',
|
||
desc: '经典高对比衬线标题字体(OFL 1.1),字重 400-900 可变 + 斜体,优雅文艺气质,适合海报大标题与品牌视觉',
|
||
license: 'OFL-1.1',
|
||
licenseNote: 'SIL Open Font License 1.1,可自由商用与修改;单独售卖字体文件需注明来源,与软件捆绑分发则无需署名',
|
||
home: 'https://fonts.google.com/specimen/Playfair+Display',
|
||
github: 'https://github.com/clauseggers/Playfair-Display',
|
||
format: 'dir-files',
|
||
npm: '@fontsource-variable/playfair-display',
|
||
npmVersion: '5.3.0',
|
||
dirs: ['files'],
|
||
ext: ['.woff2'],
|
||
scaleMode: 'wrap',
|
||
coordText: '可变字体 woff2 子集(latin / latin-ext / cyrillic / vietnamese × normal / italic)',
|
||
variants: '8 个子集文件,字重 400-900 可调(wght 轴),拉丁子集覆盖英文/数字/西文标点',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'fontsource-oswald',
|
||
type: 'font',
|
||
name: 'Oswald',
|
||
nameCn: 'Oswald 字体',
|
||
desc: '高辨识度压缩无衬线标题字体(OFL 1.1),窄而有力的字形,适合海报标题、数据标注与运动/促销风格',
|
||
license: 'OFL-1.1',
|
||
licenseNote: 'SIL Open Font License 1.1,可自由商用与修改;单独售卖字体文件需注明来源,与软件捆绑分发则无需署名',
|
||
home: 'https://fonts.google.com/specimen/Oswald',
|
||
github: 'https://github.com/googlefonts/OswaldFont',
|
||
format: 'dir-files',
|
||
npm: '@fontsource-variable/oswald',
|
||
npmVersion: '5.3.0',
|
||
dirs: ['files'],
|
||
ext: ['.woff2'],
|
||
scaleMode: 'wrap',
|
||
coordText: '可变字体 woff2 子集(latin / latin-ext / cyrillic / cyrillic-ext / vietnamese)',
|
||
variants: '5 个子集文件,字重 200-700 可调(wght 轴),压缩宽高比醒目',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'fontsource-space-grotesk',
|
||
type: 'font',
|
||
name: 'Space Grotesk',
|
||
nameCn: 'Space Grotesk 字体',
|
||
desc: '几何无衬线标题字体(OFL 1.1),带有现代科技与实验气质,适合科技/数码/潮流风格海报与界面视觉',
|
||
license: 'OFL-1.1',
|
||
licenseNote: 'SIL Open Font License 1.1,可自由商用与修改;单独售卖字体文件需注明来源,与软件捆绑分发则无需署名',
|
||
home: 'https://fonts.google.com/specimen/Space+Grotesk',
|
||
github: 'https://github.com/floriankarsten/space-grotesk',
|
||
format: 'dir-files',
|
||
npm: '@fontsource-variable/space-grotesk',
|
||
npmVersion: '5.3.0',
|
||
dirs: ['files'],
|
||
ext: ['.woff2'],
|
||
scaleMode: 'wrap',
|
||
coordText: '可变字体 woff2 子集(latin / latin-ext / vietnamese)',
|
||
variants: '3 个子集文件,字重 300-700 可调(wght 轴),几何字形现代感强',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
/* ============================================================
|
||
* 第四批合规源(2026-08-21 录入,license 逐条核实 + jsDelivr 可拉取验证):
|
||
* Inter / JetBrains Mono / Cinzel / Lora 字体 font(OFL-1.1;fontsource 可变字体 woff2 子集,
|
||
* 分别覆盖:无衬线正文(Inter)、等宽技术风(JetBrains Mono)、
|
||
* 罗马碑刻装饰衬线标题(Cinzel)、古典正文衬线(Lora))
|
||
* PatternFills 背景底纹 bg(MIT;src/patterns 50 款 10×10 灰阶平铺图案 SVG,
|
||
* 纯静态可独立渲染,叠底色换色后作为海报底纹)
|
||
* 本轮探测排除(记录备查):
|
||
* svelte-svg-patterns(Pattern Monster) static 目录仅 1 个 SVG(其余为 Svelte/JS 生成代码)→ 不可用
|
||
* PatternBolt 图案以 SCSS/CSS data-uri 形式打包,无独立 SVG 文件 → 不可用
|
||
* pattern-craft Next.js 项目结构,图案为 CSS/JS 代码片段 → 不可用
|
||
* textures.js 运行时生成库(D3 驱动),非静态素材 → 不可用
|
||
* illustration 类(unDraw 自定义协议禁 AI / Open Doodles 无仓库直拉 / illlustrations 404)
|
||
* 、template/mockup/photo 类:GitHub 上无可直拉的合规静态素材 → 本轮不收录,继续观测
|
||
* ============================================================ */
|
||
{
|
||
id: 'fontsource-inter',
|
||
type: 'font',
|
||
name: 'Inter',
|
||
nameCn: 'Inter 字体',
|
||
desc: '被誉为「最佳界面字体」的现代无衬线字体(OFL 1.1),字重 100-900 跨度极大且阅读舒适,海报正文、数据信息区与界面设计的最佳选择',
|
||
license: 'OFL-1.1',
|
||
licenseNote: 'SIL Open Font License 1.1,可自由商用与修改;单独售卖字体文件需注明来源,与软件捆绑分发则无需署名',
|
||
home: 'https://fonts.google.com/specimen/Inter',
|
||
github: 'https://github.com/rsms/inter',
|
||
format: 'dir-files',
|
||
npm: '@fontsource-variable/inter',
|
||
npmVersion: '5.3.0',
|
||
dirs: ['files'],
|
||
ext: ['.woff2'],
|
||
exclude: '-(standard|opsz|greek|vietnamese|cyrillic-ext)-', // 剔除重复轴(standard/opsz 与 wght 同内容)与低用例子集
|
||
scaleMode: 'wrap',
|
||
coordText: '可变字体 woff2 子集(latin / latin-ext / cyrillic × normal / italic)',
|
||
variants: '6 个子集文件,字重 100-900 可调(wght 轴),海报正文/信息区首选无衬线',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'fontsource-jetbrains-mono',
|
||
type: 'font',
|
||
name: 'JetBrains Mono',
|
||
nameCn: 'JetBrains Mono 字体',
|
||
desc: 'JetBrains 出品的等宽编程字体(OFL 1.1),字形锐利辨识度高,适合科技/数码/代码风海报、数据标注与信息图',
|
||
license: 'OFL-1.1',
|
||
licenseNote: 'SIL Open Font License 1.1,可自由商用与修改;单独售卖字体文件需注明来源,与软件捆绑分发则无需署名',
|
||
home: 'https://fonts.google.com/specimen/JetBrains+Mono',
|
||
github: 'https://github.com/JetBrains/JetBrainsMono',
|
||
format: 'dir-files',
|
||
npm: '@fontsource-variable/jetbrains-mono',
|
||
npmVersion: '5.3.0',
|
||
dirs: ['files'],
|
||
ext: ['.woff2'],
|
||
exclude: '-(greek|vietnamese|cyrillic-ext)-',
|
||
scaleMode: 'wrap',
|
||
coordText: '可变字体 woff2 子集(latin / latin-ext / cyrillic × normal / italic)',
|
||
variants: '6 个子集文件,字重 100-800 可调(wght 轴),等宽字形适合技术/数据风格',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'fontsource-cinzel',
|
||
type: 'font',
|
||
name: 'Cinzel',
|
||
nameCn: 'Cinzel 字体',
|
||
desc: '灵感源自古罗马碑刻的装饰衬线字体(OFL 1.1),字形庄重典雅,适合历史/文艺/高端品牌海报大标题',
|
||
license: 'OFL-1.1',
|
||
licenseNote: 'SIL Open Font License 1.1,可自由商用与修改;单独售卖字体文件需注明来源,与软件捆绑分发则无需署名',
|
||
home: 'https://fonts.google.com/specimen/Cinzel',
|
||
github: 'https://github.com/ndiscovered/cinzel',
|
||
format: 'dir-files',
|
||
npm: '@fontsource-variable/cinzel',
|
||
npmVersion: '5.3.0',
|
||
dirs: ['files'],
|
||
ext: ['.woff2'],
|
||
scaleMode: 'wrap',
|
||
coordText: '可变字体 woff2 子集(latin / latin-ext,无斜体)',
|
||
variants: '2 个子集文件,字重 400-900 可调(wght 轴),罗马碑刻风格标题衬线',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'fontsource-lora',
|
||
type: 'font',
|
||
name: 'Lora',
|
||
nameCn: 'Lora 字体',
|
||
desc: '气质古典的正文衬线字体(OFL 1.1),在屏幕与印刷上均有出色可读性,适合正文段落、引言与文艺风格海报',
|
||
license: 'OFL-1.1',
|
||
licenseNote: 'SIL Open Font License 1.1,可自由商用与修改;单独售卖字体文件需注明来源,与软件捆绑分发则无需署名',
|
||
home: 'https://fonts.google.com/specimen/Lora',
|
||
github: 'https://github.com/cyrealtype/Lora-Cyrillic',
|
||
format: 'dir-files',
|
||
npm: '@fontsource-variable/lora',
|
||
npmVersion: '5.3.0',
|
||
dirs: ['files'],
|
||
ext: ['.woff2'],
|
||
exclude: '-(math|symbols|cyrillic|vietnamese)-', // 剔除数学/符号/西里尔/越南语子集,保留拉丁正文
|
||
scaleMode: 'wrap',
|
||
coordText: '可变字体 woff2 子集(latin / latin-ext × normal / italic)',
|
||
variants: '4 个子集文件,字重 400-700 可调(wght 轴),古典衬线正文首选',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'patternfills',
|
||
type: 'bg',
|
||
name: 'PatternFills',
|
||
nameCn: '图案填充底纹',
|
||
desc: 'SVG 图案填充集合(MIT):横/竖条纹、十字、菱格、点阵等 50 款经典灰阶平铺纹理,单元 10×10 无缝平铺,适合海报背景底纹与信息图分区底',
|
||
license: 'MIT',
|
||
licenseNote: 'MIT 协议,可自由商用、修改、再分发,需保留版权声明',
|
||
home: 'https://iros.github.io/patternfills/',
|
||
github: 'https://github.com/iros/patternfills',
|
||
format: 'gh-files',
|
||
gh: 'iros/patternfills',
|
||
ghBranch: 'master',
|
||
dirs: ['src/patterns'],
|
||
ext: ['.svg'],
|
||
scaleMode: 'wrap',
|
||
coordText: '10×10 平铺单元 SVG(灰阶 #aaa 线条,可叠底色或换色后使用)',
|
||
variants: '全量收录 50 款(水平/垂直条纹、十字、菱格、点阵、犬牙纹等)',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
/* ============================================================
|
||
* 第五批合规源(2026-08-21 录入,license 逐条核实 + jsDelivr 可拉取验证):
|
||
* brand-colors 配色 palette(MIT;data/brandColors.json 按品牌名映射主色,130+ 品牌,
|
||
* 部分含多色变体,适合海报调用品牌主色/多品牌对比配色)
|
||
* pixelarticons 装饰 decoration(MIT;npm 2.4.1,svg/ 1036 枚 24×24 像素风图标,
|
||
* 单色可换色,适合复古游戏/像素风海报点缀;maxItems 限量收录基础版)
|
||
* 本轮探测排除(记录备查):
|
||
* primer/primitives 设计 token JSON 结构复杂(多层嵌套 token 名),非直接可用的色板数据 → 不可用
|
||
* game-icons(CC BY 3.0)/ OpenMoji(CC BY-SA 4.0) 协议不在白名单(BY-SA / 非 CC BY 4.0)→ 排除
|
||
* fangpenlin/avataaars 仅 React 组件源码,无成品 SVG 文件 → 不可用
|
||
* simple-icons / bootstrap-icons / heroicons / pixelarticons 之外的图标库 与 LOGO 库图标功能重叠,仅收
|
||
* 风格独特的 pixelarticons(像素风);其余不重复收录
|
||
* illustration / template / mockup / photo 类:仍无可直拉的合规静态源(unDraw 禁 AI / 其余 404 或自定义协议)→ 继续观测
|
||
* ============================================================ */
|
||
{
|
||
id: 'brand-colors',
|
||
type: 'palette',
|
||
name: 'Brand Colors',
|
||
nameCn: '品牌色板',
|
||
desc: '收录全球 130+ 知名品牌官方主色(MIT),单一 JSON 按品牌名映射十六进制色值(部分含多色变体),适合海报调用品牌主色、做品牌对比或多品牌视觉素材',
|
||
license: 'MIT',
|
||
licenseNote: 'MIT 协议,可自由商用、修改、再分发,需保留版权声明',
|
||
home: 'https://brandcolors.net',
|
||
github: 'https://github.com/reimertz/brand-colors',
|
||
format: 'gh-files',
|
||
gh: 'reimertz/brand-colors',
|
||
ghBranch: 'master',
|
||
dirs: ['data'],
|
||
ext: ['.json'],
|
||
exclude: 'brandColors\\.(merged|net)\\.json$', // 仅取 brandColors.json(品牌名→hex 扁平映射),剔除重复变体
|
||
scaleMode: 'wrap',
|
||
coordText: '配色数据(brandColors.json,品牌名 → 十六进制主色扁平映射)',
|
||
variants: '单文件 brandColors.json,130+ 品牌、部分含多色变体(-2/-3 后缀)',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'pixelarticons',
|
||
type: 'decoration',
|
||
name: 'Pixelarticons',
|
||
nameCn: '像素风图标',
|
||
desc: '手工像素风矢量图标集(MIT,24×24 网格、无抗锯齿),单色可任意换色,适合复古游戏/像素/潮流风格海报点缀元素与信息符号',
|
||
license: 'MIT',
|
||
licenseNote: 'MIT 协议,可自由商用、修改、再分发,需保留版权声明',
|
||
home: 'https://pixelarticons.com',
|
||
github: 'https://github.com/halfmage/pixelarticons',
|
||
format: 'dir-files',
|
||
npm: 'pixelarticons',
|
||
npmVersion: '2.4.1',
|
||
dirs: ['svg'],
|
||
ext: ['.svg'],
|
||
exclude: '-sharp\\.svg$', // 仅收录基础风格(-sharp 变体视觉近重复)
|
||
scaleMode: 'wrap',
|
||
coordText: '24×24 视口单色像素图标(fill=currentColor,可换色)',
|
||
variants: 'maxItems 限量收录 400 枚基础图标(剔除 -sharp 变体,全量 1036 枚)',
|
||
added: '2026-08-21',
|
||
maxItems: 400,
|
||
workspaces: ['poster']
|
||
},
|
||
/* ============================================================
|
||
* 第六批合规源(2026-08-21 录入,license 逐条核实 + jsDelivr 可拉取验证):
|
||
* Montserrat / Bebas Neue 字体 font(OFL-1.1;fontsource 包 woff2 子集,
|
||
* 分别覆盖:全能标题无衬线(Montserrat,字重 100-900 可变)、
|
||
* 经典压缩大写标题(Bebas Neue,单字重 400,电影海报风格))
|
||
* Material Colors 配色 palette(MIT;dist/colors.json 19 色系 × 10 明度
|
||
* + 4 accent 高饱和变体 + 深浅文本/图标色,260+ 色值,系统配色基准)
|
||
* 本轮探测排除(记录备查):
|
||
* chinese-color-atlas(中国传统色) free 样本为 W3C DTCG 嵌套 token 结构,非纯色板 JSON → 不可用
|
||
* zerosoul/chinese-colors 色板数据内嵌于 JS(非独立 JSON),仓库混有大量水墨 PNG/字体 → 不可用
|
||
* anup-a/svg.shapes 无独立 SVG 文件(形状打包进单个 svg.json)→ 不可用
|
||
* fu4303/svgwave(SVG Wave) 运行时生成器(Preact/Webpack 应用),非静态素材 → 不可用
|
||
* material-colors 之外(IORoot 色板为 Apple CLR 格式 / DesignColors 为 Java 库 / CARTO 为 R 包) → 不可用
|
||
* illustration / template / mockup / photo 类:仍无可直拉的合规静态源 → 继续观测
|
||
* ============================================================ */
|
||
{
|
||
id: 'fontsource-montserrat',
|
||
type: 'font',
|
||
name: 'Montserrat',
|
||
nameCn: 'Montserrat 字体',
|
||
desc: '几何无衬线标题字体(OFL 1.1),字重 100-900 可变 + 斜体,字形温和圆润,海报/品牌设计领域全球最常用的全能标题字体',
|
||
license: 'OFL-1.1',
|
||
licenseNote: 'SIL Open Font License 1.1,可自由商用与修改;单独售卖字体文件需注明来源,与软件捆绑分发则无需署名',
|
||
home: 'https://fonts.google.com/specimen/Montserrat',
|
||
github: 'https://github.com/JulietaUla/Montserrat',
|
||
format: 'dir-files',
|
||
npm: '@fontsource-variable/montserrat',
|
||
npmVersion: '5.3.0',
|
||
dirs: ['files'],
|
||
ext: ['.woff2'],
|
||
exclude: '-(cyrillic|vietnamese)-', // 仅保留 latin / latin-ext 子集(西里尔/越南语低用例子集剔除)
|
||
scaleMode: 'wrap',
|
||
coordText: '可变字体 woff2 子集(latin / latin-ext × normal / italic)',
|
||
variants: '4 个子集文件,字重 100-900 可调(wght 轴),标题与正文全能无衬线',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'fontsource-bebas-neue',
|
||
type: 'font',
|
||
name: 'Bebas Neue',
|
||
nameCn: 'Bebas Neue 字体',
|
||
desc: '经典压缩无衬线大写标题字体(OFL 1.1),窄高字形醒目有力,电影海报/时尚/运动/促销风格的标题标杆字体',
|
||
license: 'OFL-1.1',
|
||
licenseNote: 'SIL Open Font License 1.1,可自由商用与修改;单独售卖字体文件需注明来源,与软件捆绑分发则无需署名',
|
||
home: 'https://fonts.google.com/specimen/Bebas+Neue',
|
||
github: 'https://github.com/dharmatype/Bebas-Neue',
|
||
format: 'dir-files',
|
||
npm: '@fontsource/bebas-neue',
|
||
npmVersion: '5.3.0',
|
||
dirs: ['files'],
|
||
ext: ['.woff2'],
|
||
scaleMode: 'wrap',
|
||
coordText: '静态字体 woff2 子集(latin / latin-ext,仅 400 常规字重)',
|
||
variants: '2 个子集文件,单字重 400 压缩大写,适合大号标题与品牌字标',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'material-colors',
|
||
type: 'palette',
|
||
name: 'Material Colors',
|
||
nameCn: 'Material Design 色板',
|
||
desc: 'Google Material Design 经典官方色板(MIT):19 色系 × 10 级明度 + 4 个 accent 高饱和变体 + 深浅文本/图标色,共 260+ 色值,色彩体系科学统一,适合海报系统配色与信息可视化',
|
||
license: 'MIT',
|
||
licenseNote: 'MIT 协议,可自由商用、修改、再分发,需保留版权声明',
|
||
home: 'https://material.io/design/color',
|
||
github: 'https://github.com/shuhei/material-colors',
|
||
format: 'dir-files',
|
||
npm: 'material-colors',
|
||
npmVersion: '1.2.6',
|
||
dirs: ['dist'],
|
||
ext: ['.json'],
|
||
scaleMode: 'wrap',
|
||
coordText: '配色数据(colors.json,色系名 → 明度/变体 → 十六进制;含 rgba 文本/图标色)',
|
||
variants: '单文件 colors.json,260+ 色值(19 色系 × 50-900/a100-a700 + 文本/图标色)',
|
||
added: '2026-08-21',
|
||
workspaces: ['poster']
|
||
},
|
||
/* ============================================================
|
||
* 第七批合规源(2026-08-22 录入,license 逐条核实 + jsDelivr 可拉取验证):
|
||
* circle-flags 装饰 decoration(MIT;gh-pages 分支 flags/ 268+ 枚 ISO 3166-1
|
||
* 圆形国旗矢量图标,圆角化 + 白描边,海报国家/地区标识与旅行主题装饰)
|
||
* glacial-strat-patterns 背景 bg(图案资产 CC BY 4.0 / 代码 MIT;svg/ 13 款地质层理
|
||
* 剖面图案,多层渐变弯折层理,地质/自然/科学主题海报背景)
|
||
* Poppins 字体 font(OFL-1.1;fontsource 包 woff2 子集,
|
||
* 现代几何无衬线全能字体,常用字重 300-700,正文与标题两用)
|
||
* 本轮探测排除(记录备查):
|
||
* Playfair Display(fontsource-playfair-display) 与第四批 fontsource-playfair 重复 → 剔除
|
||
* dracula/dracula-theme / rose-pine/rose-pine-theme 主题色仅存于各编辑器扩展仓库
|
||
* (主仓为 .gitmodules 子模块列表或纯徽标文件),无独立配色 JSON → 不可用
|
||
* Dragoon0x/inkjet(500 参数化图案) 全部为 TS 源码,运行时生成 SVG,无预生成静态文件 → 不可用
|
||
* mrmrs/patterns jsDelivr 未索引任何可用分支(master/gh-pages 均 404)→ 不可用
|
||
* illustration / template / mockup / photo 类:仍无可直拉的合规静态源 → 继续观测
|
||
* ============================================================ */
|
||
{
|
||
id: 'circle-flags',
|
||
type: 'decoration',
|
||
name: 'Circle Flags',
|
||
nameCn: '圆形国旗图标',
|
||
desc: '268+ 枚 ISO 3166-1 各国圆形国旗矢量图标(MIT),国旗元素圆角化处理并带白色描边,适合海报中的国家/地区标识、旅行与国际主题、多国对比等装饰元素',
|
||
license: 'MIT',
|
||
licenseNote: 'MIT 协议,可自由商用、修改、再分发,需保留版权声明',
|
||
home: 'https://hatscripts.github.io/circle-flags/',
|
||
github: 'https://github.com/HatScripts/circle-flags',
|
||
format: 'gh-files',
|
||
gh: 'HatScripts/circle-flags',
|
||
ghBranch: 'gh-pages',
|
||
dirs: ['flags'],
|
||
ext: ['.svg'],
|
||
exclude: 'flags/(language|other)/', // 仅保留主目录 ISO 3166-1 国旗,剔除语言/特殊图形子目录
|
||
scaleMode: 'wrap',
|
||
coordText: '圆形国旗 SVG(各国比例徽章造型,viewBox 各异逐图标归一化)',
|
||
variants: '全量收录 268+ 枚 ISO 3166-1 圆形国旗(cn/us/jp/... 两字母代码命名)',
|
||
added: '2026-08-22',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'glacial-strat-patterns',
|
||
type: 'bg',
|
||
name: 'Glacial Strat Patterns',
|
||
nameCn: '地质层理图案',
|
||
desc: '地质层理结构矢量图案集(图案资产 CC BY 4.0):13 款模拟冰川/沉积岩地层剖面的层理纹理,多层渐变与弯折地质构造,适合地质、自然、科学主题海报的背景与氛围底纹',
|
||
license: 'CC-BY-4.0',
|
||
licenseNote: '图案资产遵循 CC BY 4.0(商用/修改需署名:MNiMORPH/glacial-strat-patterns);仓库代码部分为 MIT',
|
||
home: 'https://github.com/MNiMORPH/glacial-strat-patterns',
|
||
github: 'https://github.com/MNiMORPH/glacial-strat-patterns',
|
||
format: 'gh-files',
|
||
gh: 'MNiMORPH/glacial-strat-patterns',
|
||
ghBranch: 'main',
|
||
dirs: ['svg'],
|
||
ext: ['.svg'],
|
||
scaleMode: 'wrap',
|
||
coordText: '地质层理剖面 SVG(地质符号命名,如 Cdm/Dcm/Gms,多层渐变填充)',
|
||
variants: '全量收录 13 款(svg/ 目录:Cdm/Dcm/Dmm/Dms/Em/Fl/Fm/Gh/Gms/P/R/Sm/Sr)',
|
||
added: '2026-08-22',
|
||
workspaces: ['poster']
|
||
},
|
||
{
|
||
id: 'fontsource-poppins',
|
||
type: 'font',
|
||
name: 'Poppins',
|
||
nameCn: 'Poppins 字体',
|
||
desc: '现代几何无衬线字体(OFL 1.1),圆形几何字干、比例均衡,兼具标题力量感与正文易读性,海报/品牌/UI 设计最热门的全能字体之一',
|
||
license: 'OFL-1.1',
|
||
licenseNote: 'SIL Open Font License 1.1,可自由商用与修改;单独售卖字体文件需注明来源,与软件捆绑分发则无需署名',
|
||
home: 'https://fonts.google.com/specimen/Poppins',
|
||
github: 'https://github.com/itfoundry/Poppins',
|
||
format: 'dir-files',
|
||
npm: '@fontsource/poppins',
|
||
npmVersion: '5.3.0',
|
||
dirs: ['files'],
|
||
ext: ['.woff2'],
|
||
exclude: '-(devanagari|latin-ext|100|200|800|900)-|-italic', // 仅保留 latin 常用字重 300-700 常规
|
||
scaleMode: 'wrap',
|
||
coordText: '静态字体 woff2 子集(latin,字重 300/400/500/600/700 常规)',
|
||
variants: '5 个 latin 子集文件,常用字重 300-700,正文与标题两用几何无衬线',
|
||
added: '2026-08-22',
|
||
workspaces: ['poster']
|
||
},
|
||
/* ============================================================
|
||
* 第八批合规源(2026-08-23 录入,license 逐条核实 + jsDelivr 可拉取验证):
|
||
* Caveat 字体 font(OFL-1.1;fontsource 可变字体 woff2 子集,
|
||
* 手写风格(handwriting),字重 400-700 可变,填补字体库
|
||
* 手写/书法风格缺口,适合手账/文艺/婚礼/儿童/美食等亲和力标题)
|
||
* 本轮探测排除(记录备查):
|
||
* Dancing Script / Pacifico / Lobster / Amatic SC 同属手写风格,与 Caveat 同类,
|
||
* 首批先收最具代表性的 Caveat(Google Fonts 手写体最热门),其余待后续按需扩量
|
||
* illustration / template / mockup / photo 类:仍无可直拉的合规静态源 → 继续观测
|
||
* ============================================================ */
|
||
{
|
||
id: 'fontsource-caveat',
|
||
type: 'font',
|
||
name: 'Caveat',
|
||
nameCn: 'Caveat 手写字体',
|
||
desc: 'Google Fonts 最热门的手写风格字体(OFL 1.1),笔触自然、随性亲和,字重 400-700 可变,适合海报手账/文艺/婚礼/儿童/美食等亲和力场景的标题、引言与手写感点缀',
|
||
license: 'OFL-1.1',
|
||
licenseNote: 'SIL Open Font License 1.1,可自由商用与修改;单独售卖字体文件需注明来源,与软件捆绑分发则无需署名',
|
||
home: 'https://fonts.google.com/specimen/Caveat',
|
||
github: 'https://github.com/googlefonts/caveat',
|
||
format: 'dir-files',
|
||
npm: '@fontsource-variable/caveat',
|
||
npmVersion: '5.3.0',
|
||
dirs: ['files'],
|
||
ext: ['.woff2'],
|
||
exclude: '-(cyrillic|cyrillic-ext)-', // 仅保留 latin / latin-ext 子集(西里尔低用例子集剔除)
|
||
scaleMode: 'wrap',
|
||
coordText: '可变字体 woff2 子集(latin / latin-ext × wght 轴,400-700 可调)',
|
||
variants: '2 个子集文件,字重 400-700 可调(wght 轴),自然手写风标题与引言',
|
||
added: '2026-08-23',
|
||
workspaces: ['poster']
|
||
},
|
||
/* ============================================================
|
||
* 第九批合规源(2026-08-23 录入,license 逐条核实 + jsDelivr 可拉取验证):
|
||
* Chinese Traditional Colors 配色 palette(ISC;colors.json 顶层数组,
|
||
* 200+ 款中国传统色(中文名 + 拼音 + 十六进制色值),
|
||
* 填补「文化色」类别缺口,适合国风/节日/婚礼/茶饮主题海报)
|
||
* 本轮探测排除(记录备查):
|
||
* luozhuzhen/Chinese-colors jsDelivr 未索引(master 404)→ 不可用
|
||
* @radix-ui/colors 色板仅打包为 CSS 变量文件(amber.css 等),
|
||
* 无 .json 数据形态 → 不符合 palette 内联 data 规范
|
||
* nipponcolors / traditional-japanese-colors npm 无此包(404)→ 不可用
|
||
* zerosoul/chinese-colors 色板数据内嵌于 JS + 仓库混有大量水墨 PNG/字体(前批已排除)
|
||
* illustration / template / mockup / photo 类:仍无可直拉的合规静态源 → 继续观测
|
||
* ============================================================ */
|
||
{
|
||
id: 'chinese-colors',
|
||
type: 'palette',
|
||
name: 'Chinese Traditional Colors',
|
||
nameCn: '中国传统色',
|
||
desc: '中国传统色彩体系:粉鳳仙/荷花紅/青蓮紫/黛藍等 200+ 款典雅配色,每条含中文名 + 拼音 + 十六进制色值,适合国风/节日/婚礼/茶饮等传统文化主题海报配色',
|
||
license: 'ISC',
|
||
licenseNote: 'ISC 协议,可自由商用、修改、再分发(等同 MIT 的宽松许可)',
|
||
home: 'https://github.com/hecodeit/chinese-colors',
|
||
github: 'https://github.com/hecodeit/chinese-colors',
|
||
format: 'dir-files',
|
||
npm: 'chinese-colors',
|
||
npmVersion: '1.0.0',
|
||
dirs: ['.'],
|
||
ext: ['.json'],
|
||
scaleMode: 'wrap',
|
||
coordText: '配色数据(colors.json,顶层数组:中文名 + 拼音 + 十六进制色值)',
|
||
variants: '单文件 colors.json,320 款中国传统色(粉/紫/紅/黄/绿/蓝/黛等色系,含拼音标注)',
|
||
added: '2026-08-23',
|
||
workspaces: ['poster']
|
||
}
|
||
];
|
||
});
|