fix: details
This commit is contained in:
@@ -3,8 +3,8 @@ import type { Dimensions } from '../types';
|
||||
export interface DimensionOptions {
|
||||
sizeW: number;
|
||||
sizeH: number;
|
||||
bleed: string;
|
||||
padding: string;
|
||||
bleed: number;
|
||||
padding: number;
|
||||
gridW: number;
|
||||
gridH: number;
|
||||
fontSize?: number;
|
||||
@@ -14,28 +14,21 @@ export interface DimensionOptions {
|
||||
* 解析卡牌尺寸和网格配置
|
||||
*/
|
||||
export function calculateDimensions(options: DimensionOptions): Dimensions {
|
||||
const [bleedW, bleedH] = options.bleed.includes('x')
|
||||
? options.bleed.split('x').map(Number)
|
||||
: [Number(options.bleed), Number(options.bleed)];
|
||||
const [padW, padH] = options.padding.includes('x')
|
||||
? options.padding.split('x').map(Number)
|
||||
: [Number(options.padding), Number(options.padding)];
|
||||
|
||||
// 实际卡牌尺寸(含出血)
|
||||
const cardWidth = options.sizeW + bleedW * 2;
|
||||
const cardHeight = options.sizeH + bleedH * 2;
|
||||
const cardWidth = options.sizeW + options.bleed * 2;
|
||||
const cardHeight = options.sizeH + options.bleed * 2;
|
||||
|
||||
// 网格区域尺寸(减去 padding)
|
||||
const gridAreaWidth = options.sizeW - padW * 2;
|
||||
const gridAreaHeight = options.sizeH - padH * 2;
|
||||
const gridAreaWidth = options.sizeW - options.padding * 2;
|
||||
const gridAreaHeight = options.sizeH - options.padding * 2;
|
||||
|
||||
// 每个网格单元的尺寸(mm)
|
||||
const cellWidth = gridAreaWidth / options.gridW;
|
||||
const cellHeight = gridAreaHeight / options.gridH;
|
||||
|
||||
// 网格区域起点(相对于卡牌左上角,含 bleed 和 padding)
|
||||
const gridOriginX = bleedW + padW;
|
||||
const gridOriginY = bleedH + padH;
|
||||
const gridOriginX = options.bleed + options.padding;
|
||||
const gridOriginY = options.bleed + options.padding;
|
||||
|
||||
return {
|
||||
cardWidth,
|
||||
|
||||
Reference in New Issue
Block a user