From 5724cb7d97f3814cfd0ac560b6a6addcac4bad94 Mon Sep 17 00:00:00 2001 From: Poker Design Developer Date: Wed, 3 Jun 2026 22:26:48 +0800 Subject: [PATCH] feat: add DEFAULT_BACK_DESIGN and getEffectiveBackDesign --- frontend/src/utils/cardLayout.js | 20 ++++++++++++++++++++ frontend/src/utils/cardRenderer.js | 2 ++ 2 files changed, 22 insertions(+) diff --git a/frontend/src/utils/cardLayout.js b/frontend/src/utils/cardLayout.js index b7ec2bd..f0486b6 100644 --- a/frontend/src/utils/cardLayout.js +++ b/frontend/src/utils/cardLayout.js @@ -58,6 +58,15 @@ export function getEffectiveDesign(project, cardKey) { return { ...base, ...overrides } } +/** + * 合并项目级 back_design 与背面 card_overrides + */ +export function getEffectiveBackDesign(project) { + const base = JSON.parse(JSON.stringify(project?.back_design || DEFAULT_BACK_DESIGN)) + const overrides = (project?.card_overrides || {})['back'] || {} + return { ...base, ...overrides } +} + /** * 计算数字牌 (1-10) 实际的花色位置(绝对像素) * - 默认按 LAYOUT_POSITIONS @@ -136,3 +145,14 @@ export const DEFAULT_DESIGN = { font_color: '#000000', corner_offset: { x: 0, y: 0 }, } + +export const DEFAULT_BACK_DESIGN = { + background_color: '#1A237E', + border_color: '#C0A050', + border_width: 3, + pattern_color: null, + image: null, + image_dx: 0, + image_dy: 0, + image_scale: 1, +} diff --git a/frontend/src/utils/cardRenderer.js b/frontend/src/utils/cardRenderer.js index aac996c..61e146d 100644 --- a/frontend/src/utils/cardRenderer.js +++ b/frontend/src/utils/cardRenderer.js @@ -12,6 +12,8 @@ import { isJoker, computeNumberPipPositions, getEffectiveDesign, + getEffectiveBackDesign, + DEFAULT_BACK_DESIGN, } from './cardLayout.js' const CARD_W = 750