为冰朔定制专属配图生成系统,支持三种卡片类型:
- 小红书竖版卡片 (1080×1440, 3:4)
- 即刻方卡 (1080×1080, 1:1)
- 海报 (1080×1920, 9:16)
特性:多套配色方案、多种布局风格、
Puppeteer + HTML/CSS 渲染引擎、
可部署 Web 服务 + 预览页面
使用方式:冰朔在对话里告诉铸渊内容和类型,
铸渊运行脚本生成,冰朔直接下载使用。
125 lines
3.2 KiB
JavaScript
125 lines
3.2 KiB
JavaScript
/**
|
|
* ═══════════════════════════════════════════════════
|
|
* 铸渊图片工作室 · 风格配置系统
|
|
* ═══════════════════════════════════════════════════
|
|
*
|
|
* 冰朔,这里所有的颜色、字体、间距你都可以改。
|
|
* 告诉我想要的「感觉」,我来调。
|
|
*/
|
|
|
|
export const STYLES = {
|
|
|
|
/* ── 当前风格:光湖极简 ── */
|
|
name: '光湖极简',
|
|
|
|
colors: {
|
|
primary: '#1a1a2e', // 主色 · 深蓝黑
|
|
secondary: '#16213e', // 辅色 · 深蓝
|
|
accent: '#0f3460', // 强调色 · 普鲁士蓝
|
|
highlight: '#e94560', // 高亮 · 珊瑚红
|
|
gold: '#c9a96e', // 金色 · 点缀
|
|
warm: '#f5e6c8', // 暖白 · 背景
|
|
|
|
bg: '#faf8f5', // 页面背景
|
|
bgCard: '#ffffff', // 卡片背景
|
|
text: '#1a1a2e', // 正文
|
|
textMuted: '#6b7280', // 辅助文字
|
|
textLight: '#ffffff', // 浅色背景上的文字
|
|
border: '#e5e7eb', // 边框
|
|
divider: '#f0e6d3', // 分割线 · 暖色
|
|
},
|
|
|
|
fonts: {
|
|
title: '"Noto Serif SC", "Source Han Serif SC", serif',
|
|
body: '"Noto Sans SC", "Source Han Sans SC", "PingFang SC", sans-serif',
|
|
quote: '"ZCOOL QingKe HuangYou", cursive',
|
|
mono: '"JetBrains Mono", "Fira Code", monospace',
|
|
},
|
|
|
|
/* 卡片尺寸 */
|
|
sizes: {
|
|
xiaohongshu: { width: 1080, height: 1440 }, // 3:4
|
|
jike: { width: 1080, height: 1080 }, // 1:1
|
|
poster: { width: 1080, height: 1920 }, // 9:16 海报
|
|
},
|
|
|
|
/* 排版 */
|
|
typography: {
|
|
titleSize: 56,
|
|
subtitleSize: 32,
|
|
bodySize: 28,
|
|
smallSize: 22,
|
|
captionSize: 18,
|
|
lineHeight: 1.6,
|
|
},
|
|
|
|
/* 间距 */
|
|
spacing: {
|
|
paddingX: 64,
|
|
paddingY: 60,
|
|
gap: 32,
|
|
},
|
|
|
|
/* 水印/品牌标识 */
|
|
brand: {
|
|
show: true,
|
|
text: '光湖 · 铸渊',
|
|
size: 16,
|
|
opacity: 0.4,
|
|
},
|
|
}
|
|
|
|
|
|
/* ── 预先定义几套配色方案 ── */
|
|
|
|
export const COLOR_SCHEMES = {
|
|
|
|
/* 光湖极简(默认) */
|
|
guanghu: {
|
|
name: '光湖极简',
|
|
colors: {
|
|
primary: '#1a1a2e', bg: '#faf8f5', accent: '#0f3460',
|
|
highlight: '#e94560', gold: '#c9a96e', warm: '#f5e6c8',
|
|
}
|
|
},
|
|
|
|
/* 奶油暖调 */
|
|
cream: {
|
|
name: '奶油暖调',
|
|
colors: {
|
|
primary: '#5d4037', bg: '#fef7f0', accent: '#8d6e63',
|
|
highlight: '#e07a5f', gold: '#d4a373', warm: '#fae1dd',
|
|
}
|
|
},
|
|
|
|
/* 暗夜深蓝 */
|
|
night: {
|
|
name: '暗夜深蓝',
|
|
colors: {
|
|
primary: '#e0e0e0', bg: '#0d1117', accent: '#58a6ff',
|
|
highlight: '#f78166', gold: '#d4a373', warm: '#21262d',
|
|
}
|
|
},
|
|
|
|
/* 文艺绿植 */
|
|
green: {
|
|
name: '文艺绿植',
|
|
colors: {
|
|
primary: '#2d3e2f', bg: '#f5f9f2', accent: '#5a8f5a',
|
|
highlight: '#c78b5c', gold: '#b8a06e', warm: '#e8f0e0',
|
|
}
|
|
},
|
|
}
|
|
|
|
|
|
/**
|
|
* 切换到指定配色方案
|
|
*/
|
|
export function useScheme(name) {
|
|
const scheme = COLOR_SCHEMES[name]
|
|
if (!scheme) return false
|
|
Object.assign(STYLES.colors, scheme.colors)
|
|
STYLES.name = scheme.name
|
|
return true
|
|
}
|