@worm-vue3-print/core 1.3.9 → 1.3.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/index.cjs +281 -44
- package/dist/browser/index.d.cts +3 -3
- package/dist/browser/index.d.ts +3 -3
- package/dist/browser/index.js +33 -30
- package/dist/{chunk-QBFZ25CV.js → chunk-4ZEP2HSH.js} +2 -2
- package/dist/{chunk-BRGDUOUB.js → chunk-7FXIWNYK.js} +367 -19
- package/dist/client/index.cjs +1 -1
- package/dist/client/index.d.cts +1 -1
- package/dist/client/index.d.ts +1 -1
- package/dist/client/index.js +1 -1
- package/dist/designer/index.cjs +719 -19
- package/dist/designer/index.d.cts +357 -9
- package/dist/designer/index.d.ts +357 -9
- package/dist/designer/index.js +458 -8
- package/dist/dom-executor.iife.global.js +7 -7
- package/dist/{driver-hJxBl2_n.d.cts → driver-DW3mxuRF.d.cts} +87 -5
- package/dist/{driver-hJxBl2_n.d.ts → driver-DW3mxuRF.d.ts} +87 -5
- package/dist/index.cjs +242 -8
- package/dist/index.d.cts +5 -5
- package/dist/index.d.ts +5 -5
- package/dist/index.js +15 -3
- package/dist/node/index.cjs +1 -1
- package/dist/node/index.d.cts +2 -2
- package/dist/node/index.d.ts +2 -2
- package/dist/node/index.js +1 -1
- package/dist/{ports-B-Jb2XwT.d.cts → ports-Brn5xcLD.d.ts} +2 -2
- package/dist/{ports-CJ0SUYFt.d.ts → ports-DJ7_blE7.d.cts} +2 -2
- package/package.json +1 -1
package/dist/designer/index.d.ts
CHANGED
|
@@ -1,34 +1,184 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* @worm-vue3-print/core v1.3.
|
|
2
|
+
* @worm-vue3-print/core v1.3.10
|
|
3
3
|
* Copyright (c) 2026 worm <liu_long_qqcom@qq.com>
|
|
4
4
|
* SPDX-FileCopyrightText: 2026 worm <liu_long_qqcom@qq.com>
|
|
5
5
|
* SPDX-License-Identifier: MIT
|
|
6
6
|
*/
|
|
7
|
-
import { E as ElementBorderSide, b as ElementOptions, c as TemplateData, d as
|
|
8
|
-
export {
|
|
9
|
-
export { C as CellFitRowKind, D as DEFAULT_SHRINK_MIN_FONT_SIZE_PT, F as FitFontSize, M as MIN_SHRINK_FONT_SIZE_PT, c as cellFitCapMm, a as cellFitKey, b as cellFitWidthMm, d as cellImageBoxMm, f as floorFontSize, p as parseCellFitKey, r as resolveCellTextFit, e as resolveElementTextFit, g as resolveShrinkMinFontSize, h as roundFontSize } from '../ports-
|
|
7
|
+
import { E as ElementBorderSide, b as ElementOptions, c as TemplateData, d as ElementBorderEdge, e as TableCellBorder, f as TableRow, g as TableCell, h as TableCellType, i as TableCellBorders, j as TableRowType, k as ElementType, l as RuntimeElement, m as ElementZone, n as PrintBusinessField, B as BindingDescriptor, o as ElementRect, A as AdsorbResult, p as ResizePoint } from '../driver-DW3mxuRF.js';
|
|
8
|
+
export { q as AlignLine, r as DesignBackground, s as ElementFieldBinding, t as MultiPageTemplateData, u as PaginationConfig, v as PaperSize, w as PrintElementData, x as PrintElementTypeMeta, y as TablePaginationConfig, z as TableSelection, F as TemplateElement, G as TextAlign, H as TextFit, U as UploadDesignBackgroundFn, I as UploadImageFn, V as VerticalAlign, W as WatermarkOptions } from '../driver-DW3mxuRF.js';
|
|
9
|
+
export { C as CellFitRowKind, D as DEFAULT_SHRINK_MIN_FONT_SIZE_PT, F as FitFontSize, M as MIN_SHRINK_FONT_SIZE_PT, c as cellFitCapMm, a as cellFitKey, b as cellFitWidthMm, d as cellImageBoxMm, f as floorFontSize, p as parseCellFitKey, r as resolveCellTextFit, e as resolveElementTextFit, g as resolveShrinkMinFontSize, h as roundFontSize } from '../ports-Brn5xcLD.js';
|
|
10
10
|
import { TemplateEngine, formatMoney, ifFn, addNumbers, subtractNumbers, multiplyNumbers, divideNumbers, round, roundUp, roundDown, roundHalfEven, formatDate, toUpperCaseAmount } from '../index.js';
|
|
11
11
|
|
|
12
|
+
/** 每行列数下限 */
|
|
13
|
+
declare const FLOW_MIN_COLUMNS = 1;
|
|
14
|
+
/** 每行列数上限:超过这个栏数在常见标签/单据纸宽上已无可读单元 */
|
|
15
|
+
declare const FLOW_MAX_COLUMNS = 12;
|
|
16
|
+
/** 行高下限(mm),与表格行高同一档位口径 */
|
|
17
|
+
declare const FLOW_MIN_ROW_HEIGHT_MM = 3;
|
|
18
|
+
/** 行高上限(mm) */
|
|
19
|
+
declare const FLOW_MAX_ROW_HEIGHT_MM = 100;
|
|
20
|
+
/** 单元横向间距上下限(mm),与标签拼版的格间距同口径 */
|
|
21
|
+
declare const FLOW_MIN_GAP_X_MM = 0;
|
|
22
|
+
declare const FLOW_MAX_GAP_X_MM = 50;
|
|
23
|
+
interface FlowLayoutConfig {
|
|
24
|
+
/** 元素框可用宽度(mm,已扣内边距) */
|
|
25
|
+
width: number;
|
|
26
|
+
/** 每行列数 */
|
|
27
|
+
columns: number;
|
|
28
|
+
/** 单元横向间距(mm) */
|
|
29
|
+
gapX: number;
|
|
30
|
+
/** 字号(pt),跨列判定的估算宽度按它折算 */
|
|
31
|
+
fontSizePt: number;
|
|
32
|
+
/** 是否允许内容过长时跨列 */
|
|
33
|
+
autoSpan: boolean;
|
|
34
|
+
/** 最多跨几列(会被钳到 columns) */
|
|
35
|
+
maxSpan: number;
|
|
36
|
+
}
|
|
37
|
+
interface FlowCell {
|
|
38
|
+
text: string;
|
|
39
|
+
/** 占用的列位数:1 即不跨列 */
|
|
40
|
+
span: number;
|
|
41
|
+
}
|
|
42
|
+
interface FlowRow {
|
|
43
|
+
cells: FlowCell[];
|
|
44
|
+
}
|
|
45
|
+
/** 每行列数:非法或缺省回落到 4,并钳到 1~12 */
|
|
46
|
+
declare function resolveFlowColumns(value: number | undefined): number;
|
|
47
|
+
/** 单元横向间距:非法回落到 4mm,钳到 0~50mm */
|
|
48
|
+
declare function resolveFlowGapX(value: number | undefined): number;
|
|
49
|
+
/** 行高:非法回落到 8mm(与表格缺省行高一致),钳到 3~100mm */
|
|
50
|
+
declare function resolveFlowRowHeight(value: number | undefined): number;
|
|
51
|
+
/**
|
|
52
|
+
* 最多跨几列:钳到「每行列数」。这是本元素唯一会改用户填值的行为——
|
|
53
|
+
* 「跨 6 列但每行只有 4 列」是物理上不可实现的值,留着等于让属性台显示一个不生效的数。
|
|
54
|
+
*/
|
|
55
|
+
declare function resolveFlowMaxSpan(value: number | undefined, columns: number): number;
|
|
56
|
+
/** 单列宽度(mm):N 列均分元素框宽,扣掉 N-1 个间距 */
|
|
57
|
+
declare function flowColumnWidthMm(width: number, columns: number, gapX: number): number;
|
|
58
|
+
/** 跨 k 列的单元可用宽度(mm):k 个列宽 + k-1 个间距 */
|
|
59
|
+
declare function flowSpanWidthMm(colUnitMm: number, gapX: number, span: number): number;
|
|
60
|
+
/**
|
|
61
|
+
* 文本宽度估算(mm)。按字符类别累加 em advance:
|
|
62
|
+
* 汉字/全角标点 1em、大写与数字 0.6em、小写 0.5em、半角标点 0.4em、空格 0.28em、
|
|
63
|
+
* 其余(含变音字母、西里尔、emoji)0.75em。等宽感强的中文场景偏差最小。
|
|
64
|
+
*/
|
|
65
|
+
declare function estimateTextWidthMm(text: string, fontSizePt: number): number;
|
|
66
|
+
/** 一个单元该占几个列位:跨到放得下为止,最多不超过 maxSpan(已钳到列数) */
|
|
67
|
+
declare function spanForText(text: string, cfg: Pick<FlowLayoutConfig, 'fontSizePt' | 'gapX' | 'maxSpan' | 'columns' | 'autoSpan'> & {
|
|
68
|
+
colUnitMm: number;
|
|
69
|
+
}): number;
|
|
70
|
+
/**
|
|
71
|
+
* 占位式排布:单元按顺序吃列位,当前行剩不够放该单元时**整个单元**挪到下一行行首
|
|
72
|
+
* (不拆词、不把单元切成两半)。
|
|
73
|
+
*/
|
|
74
|
+
declare function layoutFlowList(items: string[], cfg: FlowLayoutConfig): FlowRow[];
|
|
75
|
+
/**
|
|
76
|
+
* 从单元模板里检出列表源:表达式中出现某个顶层数组字段(`drugs.name` 或直接 `drugs`)
|
|
77
|
+
* 就以它为列表。属性台不再单独配「列表数据源」,模板自己就是数据契约的声明处。
|
|
78
|
+
* 检不出来时交回调用方按「顶层第一个数组」兜底(与表格同一口径)。
|
|
79
|
+
*/
|
|
80
|
+
declare function detectFlowListKey(expr: unknown, data: Record<string, any> | undefined): string | undefined;
|
|
81
|
+
/**
|
|
82
|
+
* 属性台提示用:按当前字号与间距,元素框宽最多能放下几列「一个汉字都放得下」的单元。
|
|
83
|
+
* 只用于提示,不回写用户填的列数(specs 第八节第 3 项)。
|
|
84
|
+
*/
|
|
85
|
+
declare function suggestFlowColumns(width: number, gapX: number, fontSizePt: number): number;
|
|
86
|
+
/** 行高(mm)随配置一起传入,避免样式与排布两处取不同口径 */
|
|
87
|
+
interface FlowRenderConfig extends FlowLayoutConfig {
|
|
88
|
+
/** 行高(mm,最小高语义) */
|
|
89
|
+
rowHeight: number;
|
|
90
|
+
}
|
|
91
|
+
/** 网格 CSS:列均分、行最小高、纵向不留缝(行距由行高承担) */
|
|
92
|
+
declare function flowGridStyle(cfg: FlowRenderConfig): string;
|
|
93
|
+
|
|
12
94
|
/** 1 英寸 = 25.4mm */
|
|
13
95
|
declare const MM_PER_INCH = 25.4;
|
|
14
96
|
/**
|
|
15
97
|
* 以下 jsbarcode 生成参数单位统一为「模块」(1 模块 = 窄条宽度);调用时需乘以
|
|
16
98
|
* 每模块用户单位数(jsbarcode 的 width 选项)。设计器画布与出图端必须共用同一份。
|
|
17
99
|
*/
|
|
18
|
-
/** 条码静区(quiet zone
|
|
100
|
+
/** 条码静区(quiet zone)缺省宽度(模块):`barQuietZone` 未填时的档位,左右各留这么多 */
|
|
19
101
|
declare const BARCODE_QUIET_ZONE_MODULES = 10;
|
|
102
|
+
/**
|
|
103
|
+
* 条码静区归一:取非负整数模块数,未填或非法值回退缺省档。
|
|
104
|
+
* 与二维码不同,一维码的静区是码制硬要求(GS1 取 2.54mm 与 10×条宽的大者),
|
|
105
|
+
* 缺省档不给 0;0 仍是合法档,由用户自担扫码风险换取条宽。
|
|
106
|
+
*/
|
|
107
|
+
declare function barcodeQuietZoneModules(value?: number): number;
|
|
20
108
|
/** 条高(模块) */
|
|
21
109
|
declare const BARCODE_BAR_HEIGHT_MODULES = 30;
|
|
22
110
|
/** 条码下方文本缺省高度(模块,相对条高,非绝对 pt) */
|
|
23
111
|
declare const BARCODE_TEXT_FONT_SIZE_MODULES = 10;
|
|
24
112
|
/** 文本区与条码图形之间的间距(模块) */
|
|
25
113
|
declare const BARCODE_MARGIN_BOTTOM_MODULES = 2;
|
|
114
|
+
/**
|
|
115
|
+
* 二维码静区缺省档(模块):`qrQuietZone` 未设置时使用,0 = 码面等比铺满元素框。
|
|
116
|
+
* 从 browser 侧上收到同构层,供 designer 的属性注册表引用——designer 不得反向依赖
|
|
117
|
+
* `browser/`(那里 import 了 jsbarcode / qrcode 等 DOM 侧依赖)。
|
|
118
|
+
*/
|
|
119
|
+
declare const QR_DEFAULT_QUIET_MODULES = 0;
|
|
26
120
|
/** 基础模块宽度(mm):barWidth=2(每模块用户单位数 1)时每个模块的物理宽度 */
|
|
27
121
|
declare const BARCODE_MODULE_WIDTH_MM = 0.25;
|
|
122
|
+
/**
|
|
123
|
+
* 一维码每模块物理宽度的推荐下限(mm,业界常引 10mil)。
|
|
124
|
+
* 低于它时热敏头上单条的边缘像素占比过大,首读率明显下降;GS1 对静区另有
|
|
125
|
+
* 「2.54mm 或 10×条宽取大者」的要求,两者同向:条宽达标,静区的绝对宽度也随之达标。
|
|
126
|
+
*/
|
|
127
|
+
declare const BARCODE_MIN_MODULE_WIDTH_MM = 0.254;
|
|
128
|
+
interface BarcodeBarWidthRecommendation {
|
|
129
|
+
/** 推荐倍率(0.5 步进,2~8,与属性台同一档距) */
|
|
130
|
+
barWidth: number;
|
|
131
|
+
/** 该倍率吸附后的每模块打印点数 */
|
|
132
|
+
dotsPerModule: number;
|
|
133
|
+
/** 该倍率的每模块物理宽度(mm) */
|
|
134
|
+
moduleWidthMm: number;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* 按打印机分辨率推荐条宽倍率:取「吸附到整数打印点后,每模块宽 ≥ 推荐下限」的最小档。
|
|
138
|
+
* 只用于属性台提示,**不替用户写值**。未填分辨率时返回 null——没有点阵可吸附,
|
|
139
|
+
* 每模块宽就是条宽的连续毫米值,推荐也就失去意义(该文案自己已有「建议 3 及以上」的旧口径)。
|
|
140
|
+
*/
|
|
141
|
+
declare function recommendBarcodeBarWidth(dpi?: number): BarcodeBarWidthRecommendation | null;
|
|
142
|
+
/**
|
|
143
|
+
* 推荐文案(单一来源,画布与 print-common 四台共用,避免各写一套数字)。
|
|
144
|
+
* 达标时只报推荐档;当前档低于下限时点明差距,并说明这里只提示不改值。
|
|
145
|
+
*/
|
|
146
|
+
declare function barcodeBarWidthRecommendText(dpi: number | undefined, currentBarWidth: number | undefined): string;
|
|
28
147
|
/** 每模块的用户单位数:与出图端 jsbarcode 的 width 同口径(barWidth=2 → 1,barWidth=4 → 2) */
|
|
29
148
|
declare function barcodeUnitsPerModule(barWidth?: number): number;
|
|
30
149
|
/** 每模块的首选物理宽度(mm):条宽倍率每 +1,增加 BARCODE_MODULE_WIDTH_MM / 2 */
|
|
31
150
|
declare function barcodePreferredModuleWidthMm(barWidth?: number): number;
|
|
151
|
+
interface BarcodeBarHeightInput {
|
|
152
|
+
/** 期望条区高度(mm,不含下方文字);未填或非法一律回退缺省档 */
|
|
153
|
+
barHeightMm?: number;
|
|
154
|
+
/** 每模块物理宽度(mm):条高的折算粒度,来自条宽与点阵的结算 */
|
|
155
|
+
moduleWidthMm: number;
|
|
156
|
+
/** 可用框高(mm);≤0 视为未知,不做收敛 */
|
|
157
|
+
boxHeightMm?: number;
|
|
158
|
+
/** 文字区占用的模块数(jsbarcode 的 fontSize + textMargin + 下间距),由实测 viewBox 反推 */
|
|
159
|
+
textModules?: number;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* 把期望条高折算成 jsbarcode 的条区模块数。
|
|
163
|
+
* 条高只能落「每模块宽」的整数倍,且框高不够时由条高让位——条宽是清晰度的第一来源,
|
|
164
|
+
* 绝不被条高挤窄(挤窄即回到条宽忽宽忽窄的老问题)。
|
|
165
|
+
*/
|
|
166
|
+
declare function barcodeBarHeightModules(input: BarcodeBarHeightInput): number;
|
|
167
|
+
interface BarcodeWidthBoundInput {
|
|
168
|
+
/** 条码总宽(模块,含左右静区) */
|
|
169
|
+
unitWidth: number;
|
|
170
|
+
/** 可用框宽(mm);≤0 视为未知,不约束 */
|
|
171
|
+
boxWidthMm: number;
|
|
172
|
+
/** 打印机分辨率(点/英寸);非正数或缺失视为不对齐点阵 */
|
|
173
|
+
dpi?: number;
|
|
174
|
+
/** 条码模块宽度倍率(2-8),缺省 2 */
|
|
175
|
+
barWidth?: number;
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* 条宽侧的每模块宽:只由条宽、点阵与框宽决定,完全不看条高。
|
|
179
|
+
* 条高要折算成模块数就必须先有一个不被条高污染的粒度,否则「填高把条宽压窄」会循环咬住自己。
|
|
180
|
+
*/
|
|
181
|
+
declare function barcodeWidthBoundModuleWidthMm(input: BarcodeWidthBoundInput): number;
|
|
32
182
|
interface BarcodeSizeInput {
|
|
33
183
|
/** 总宽度(模块,含左右静区) */
|
|
34
184
|
unitWidth: number;
|
|
@@ -40,7 +190,7 @@ interface BarcodeSizeInput {
|
|
|
40
190
|
boxHeightMm: number;
|
|
41
191
|
/** 打印机分辨率(点/英寸);非正数或缺失视为「不对齐点阵」 */
|
|
42
192
|
dpi?: number;
|
|
43
|
-
/** 条码模块宽度倍率(2-
|
|
193
|
+
/** 条码模块宽度倍率(2-8),缺省 2 */
|
|
44
194
|
barWidth?: number;
|
|
45
195
|
}
|
|
46
196
|
interface BarcodeSize {
|
|
@@ -69,6 +219,38 @@ declare function barcodeAvailableBoxMm(boxMm: number | undefined, maxMm: number
|
|
|
69
219
|
* 所以「宽度不足」时高度同比缩小,条码不会被拉变形。
|
|
70
220
|
*/
|
|
71
221
|
declare function resolveBarcodeSize(input: BarcodeSizeInput): BarcodeSize;
|
|
222
|
+
/** 一趟码面的 viewBox 用户单位宽高 */
|
|
223
|
+
interface BarcodeViewBoxUnits {
|
|
224
|
+
widthUnits: number;
|
|
225
|
+
heightUnits: number;
|
|
226
|
+
}
|
|
227
|
+
interface BarcodeLayoutInput {
|
|
228
|
+
/** 期望条区高度(mm,不含下方文字);未填即缺省档,且只生成一趟 */
|
|
229
|
+
barHeightMm?: number;
|
|
230
|
+
/** 可用框宽(mm);≤0 视为未知 */
|
|
231
|
+
boxWidthMm: number;
|
|
232
|
+
/** 可用框高(mm);≤0 视为未知 */
|
|
233
|
+
boxHeightMm: number;
|
|
234
|
+
/** 打印机分辨率(点/英寸) */
|
|
235
|
+
dpi?: number;
|
|
236
|
+
/** 条码模块宽度倍率(2-8) */
|
|
237
|
+
barWidth?: number;
|
|
238
|
+
/** 按给定条区模块数生成一趟码面并读回 viewBox;生成失败返回 null */
|
|
239
|
+
measure: (barHeightModules: number) => BarcodeViewBoxUnits | null;
|
|
240
|
+
}
|
|
241
|
+
interface BarcodeLayout {
|
|
242
|
+
/** 最终采用的条区模块数,即生成端最后一次写入 jsbarcode 的 height 档位 */
|
|
243
|
+
barHeightModules: number;
|
|
244
|
+
/** 落纸尺寸;码值非法或读不到 viewBox 时为 null,由调用方走既有降级 */
|
|
245
|
+
size: BarcodeSize | null;
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* 条高布局的趟序:先用缺省条高生成一趟拿模块数,再据此定粒度反算条区模块数,必要时重生成。
|
|
249
|
+
* 之所以必须两趟:每模块宽由「框宽 ÷ 模块数」得出,而模块数只有生成后才知道,
|
|
250
|
+
* 条高又要用每模块宽折算 —— 直接在结算里带上条高,就会让条高反过来挤窄条宽。
|
|
251
|
+
* 未填条高、或折算结果恰是缺省档时只走一趟,与历史行为逐毫米一致。
|
|
252
|
+
*/
|
|
253
|
+
declare function layoutBarcodeSize(input: BarcodeLayoutInput): BarcodeLayout;
|
|
72
254
|
|
|
73
255
|
interface ElementBorderCss {
|
|
74
256
|
/** CSS 长度,pt 口径(与 rect/oval、单元格边框一致) */
|
|
@@ -84,9 +266,9 @@ interface ElementBordersCss {
|
|
|
84
266
|
declare const ELEMENT_BORDER_SIDES: readonly ElementBorderSide[];
|
|
85
267
|
/** 该元素类型是否可携带元素级边框(供设计器格式刷等按类型过滤写入目标) */
|
|
86
268
|
declare function acceptsElementBorder(type: string | undefined): boolean;
|
|
87
|
-
type BorderFields = Pick<ElementOptions, 'borderWidth' | 'borderStyle' | 'borderColor' | 'borders'>;
|
|
269
|
+
type BorderFields$1 = Pick<ElementOptions, 'borderWidth' | 'borderStyle' | 'borderColor' | 'borders'>;
|
|
88
270
|
/** 解析元素级边框;返回 null 表示无任何生效边框 */
|
|
89
|
-
declare function resolveElementBorder(type: string | undefined, opts: BorderFields | undefined): ElementBordersCss | null;
|
|
271
|
+
declare function resolveElementBorder(type: string | undefined, opts: BorderFields$1 | undefined): ElementBordersCss | null;
|
|
90
272
|
|
|
91
273
|
/**
|
|
92
274
|
* 剪裁取位与放大的声明单点(画布 / 预览 / 出纸三端共用)。
|
|
@@ -226,12 +408,87 @@ declare function getPaperDimensions(t: Pick<TemplateData, 'paperSize' | 'orienta
|
|
|
226
408
|
height: number;
|
|
227
409
|
};
|
|
228
410
|
|
|
411
|
+
/** 一次写入所用的元素边框规格(pt 口径,与整圈三字段及单元格边框统一) */
|
|
412
|
+
interface ElementBorderSpec {
|
|
413
|
+
width: number;
|
|
414
|
+
style: string;
|
|
415
|
+
color: string;
|
|
416
|
+
}
|
|
417
|
+
/** 整圈宽度 ≤0 / 非法时的兜底档:点预设要真的出框,不能把 0 原样铺上去 */
|
|
418
|
+
declare const ELEMENT_BORDER_FALLBACK_WIDTH = 0.75;
|
|
419
|
+
/** 元素台边框操作说明:三行显示当前生效规格,改一行就是按新规格重铺四边(与单元格的草稿口径不同) */
|
|
420
|
+
declare const ELEMENT_BORDER_APPLY_HINT = "\u7EBF\u578B / \u5BBD\u5EA6 / \u989C\u8272\u5373\u65F6\u751F\u6548\uFF0C\u8FD9\u4E09\u884C\u663E\u793A\u7684\u5C31\u662F\u5F53\u524D\u751F\u6548\u89C4\u683C\uFF1A\u5DF2\u6709\u8FB9\u6846\u65F6\u4EFB\u6539\u4E00\u884C\u90FD\u4F1A\u6309\u65B0\u89C4\u683C\u94FA\u6EE1\u56DB\u8FB9\u5E76\u6E05\u6389\u5355\u8FB9\u8986\u76D6\uFF1B\u4E0A\u3001\u4E0B\u3001\u5DE6\u3001\u53F3\u53EA\u7ED9\u9009\u4E2D\u7684\u8FB9\u52A0\u6846\uFF0C\u64A4\u6389\u4E00\u8FB9\u4F1A\u628A\u5B83\u5176\u4F59\u4E09\u8FB9\u843D\u6210\u5355\u8FB9\uFF1B\u300C\u65E0\u300D\u6E05\u9664\u8FB9\u6846\uFF0C\u300C\u5185\u90E8\u300D\u4EC5\u8868\u683C\u5355\u5143\u683C\u53EF\u7528";
|
|
421
|
+
type BorderFields = Pick<ElementOptions, 'borderWidth' | 'borderStyle' | 'borderColor' | 'borders'>;
|
|
422
|
+
/** 边框四边的固定顺序:状态派生、属性台勾选框、工具栏单边按钮共用,避免各处各写一份 */
|
|
423
|
+
declare const BORDER_EDGE_SIDES: readonly ElementBorderSide[];
|
|
424
|
+
/**
|
|
425
|
+
* 一条边在一组目标(选区单元格 / 多选元素)上的激活态:
|
|
426
|
+
* 全有=on(按下)、全无=off、只有部分有=mixed(界面用半选/第三态表达,点击按补齐处理)。
|
|
427
|
+
* 判定只看「这条边有没有」,与工具栏既有口径一致;存量 `style: 'none'` 的边也算有,改它才走覆盖。
|
|
428
|
+
*/
|
|
429
|
+
type BorderEdgeState = 'on' | 'off' | 'mixed';
|
|
430
|
+
declare function resolveBorderEdgeStates(borders: Array<Partial<Record<ElementBorderSide, unknown>> | undefined>): Record<ElementBorderSide, BorderEdgeState>;
|
|
431
|
+
/** 线型档位(含「无」):属性台下拉与工具栏图标共用,避免各处各写一份 */
|
|
432
|
+
type BorderLineStyle = 'none' | 'solid' | 'dashed' | 'dotted' | 'double';
|
|
433
|
+
declare const BORDER_LINE_STYLES: readonly {
|
|
434
|
+
value: BorderLineStyle;
|
|
435
|
+
label: string;
|
|
436
|
+
}[];
|
|
437
|
+
/**
|
|
438
|
+
* 元素某条边在画布与出纸上「到底有没有线」:分边自己给过正宽度,或整圈宽度生效(整圈就是四边)。
|
|
439
|
+
* 判据与 render/element-border.ts 的解析一致——分边宽度 ≤0 会被跳过、整圈照样盖住那条边。
|
|
440
|
+
*/
|
|
441
|
+
declare function elementBorderEdgeVisible(opts: BorderFields, side: ElementBorderSide): boolean;
|
|
442
|
+
/** 元素的可见边集合(供多选时派生四边按下态,与属性台勾选框同一判据) */
|
|
443
|
+
declare function elementVisibleBorders(opts: BorderFields): Partial<Record<ElementBorderSide, ElementBorderEdge>>;
|
|
444
|
+
/** 用元素当前整圈三字段拼出待应用规格:属性台没有草稿态,规格就是元素自身现值 */
|
|
445
|
+
declare function resolveElementBorderSpec(opts: BorderFields): ElementBorderSpec;
|
|
446
|
+
/**
|
|
447
|
+
* 整圈预设:`all` 与 `outer` 同效(元素只有一圈边,沿用工具栏既有口径),写整圈三字段;
|
|
448
|
+
* `none` 只把宽度归零(出纸端 ≤0 即无边框),线型与颜色留着不动,便于改回宽度就恢复原样;
|
|
449
|
+
* 两者都清掉分边残留,`inner` 对元素不改。
|
|
450
|
+
*/
|
|
451
|
+
declare function applyElementBorderPreset(opts: BorderFields, preset: BorderPreset, spec: ElementBorderSpec): void;
|
|
452
|
+
/** 属性台三行要显示的「当前生效规格」:undefined=未设,'mixed'=各边不一(界面留空并报「混合」) */
|
|
453
|
+
interface BorderSpecDisplay {
|
|
454
|
+
width: number | 'mixed' | undefined;
|
|
455
|
+
style: string | 'mixed' | undefined;
|
|
456
|
+
color: string | 'mixed' | undefined;
|
|
457
|
+
}
|
|
458
|
+
/**
|
|
459
|
+
* 元素台显示用规格(方案 B):整圈宽度生效(>0)时整圈就是四边的规格;
|
|
460
|
+
* 整圈未设或已归零时,实际画出来的是可见分边 ⇒ 显示分边的一致值(不一致给 mixed);
|
|
461
|
+
* 两者都没有 ⇒ 未设(宽度留空,线型按出纸兜底档显示实线,与存量口径一致)。
|
|
462
|
+
*/
|
|
463
|
+
declare function resolveElementBorderDisplay(opts: BorderFields): BorderSpecDisplay;
|
|
464
|
+
/** 勾/撤单边、整圈化时取用的规格:显示派生的三值里取数,mixed/未设落到缺省档 */
|
|
465
|
+
declare function effectiveElementBorderSpec(opts: BorderFields): ElementBorderSpec;
|
|
466
|
+
/** 元素台整圈三行的键名(改任一行都走 setElementBorderField 的整圈化落盘) */
|
|
467
|
+
type ElementBorderFieldKey = 'borderWidth' | 'borderStyle' | 'borderColor';
|
|
468
|
+
/**
|
|
469
|
+
* 属性台改整圈三行中的一行(方案 B)。
|
|
470
|
+
* 已有可见边框时不能只写那一键:出纸是「先整圈后逐边覆盖」,留着分边改整圈就等于「改了没反应」,
|
|
471
|
+
* 所以一次铺满四边并清掉分边覆盖。元素本来就一条线都没有时,只写用户改的那一键——
|
|
472
|
+
* 改个线型不该凭空长出一条 0.75pt 的框,颜色也不替作者发明一个值。
|
|
473
|
+
*/
|
|
474
|
+
declare function setElementBorderField(opts: BorderFields, key: ElementBorderFieldKey, value: number | string | undefined): void;
|
|
475
|
+
/**
|
|
476
|
+
* 勾或撤一条边(方案 B 的可见态口径)。
|
|
477
|
+
* 撤边时若整圈正生效,四边都是整圈画的,删不掉「单独一条」——只能把其余三条展开成分边、
|
|
478
|
+
* 再把整圈宽度归零;展开保留各边自己的原值(未设的仍留未设,出纸兜底档不变)。
|
|
479
|
+
*/
|
|
480
|
+
declare function setElementBorderEdgeVisible(opts: BorderFields, side: ElementBorderSide, visible: boolean, spec?: ElementBorderSpec): void;
|
|
481
|
+
/** 写或撤单条分边,不碰整圈三字段;spec 传 null 即撤掉该边 */
|
|
482
|
+
declare function setElementBorderEdge(opts: BorderFields, side: ElementBorderSide, spec: ElementBorderSpec | null): void;
|
|
483
|
+
|
|
229
484
|
interface CellRect {
|
|
230
485
|
r1: number;
|
|
231
486
|
c1: number;
|
|
232
487
|
r2: number;
|
|
233
488
|
c2: number;
|
|
234
489
|
}
|
|
490
|
+
/** 单元格边框的缺省档:新建表格每格四边都是它;属性台取不到规格时也落回这一档 */
|
|
491
|
+
declare const DEFAULT_BORDER: TableCellBorder;
|
|
235
492
|
declare function createCell(partial?: Partial<TableCell>): TableCell;
|
|
236
493
|
/** 默认新建表格:3 列 × 4 行(标题/数据/小计/汇总),列宽均分 50mm,表格组件默认显示当前页小计行 */
|
|
237
494
|
declare function createDefaultTable(): {
|
|
@@ -278,6 +535,41 @@ declare function setHeaderRepeat(rows: TableRow[], enabled: boolean): void;
|
|
|
278
535
|
type BorderPreset = 'all' | 'outer' | 'inner' | 'none';
|
|
279
536
|
/** 按预设批量写边框;none 时清空选区内所有格的 borders */
|
|
280
537
|
declare function applyBorderPreset(rows: TableRow[], rect: CellRect, preset: BorderPreset, border: TableCellBorder): void;
|
|
538
|
+
/** 线型/宽度/颜色是待应用规格(初值取自选区真实边框),必须点预设或勾单边才落盘;文案画布与 common 单元格台共用一条 */
|
|
539
|
+
declare const CELL_BORDER_APPLY_HINT = "\u7EBF\u578B / \u5BBD\u5EA6 / \u989C\u8272\u662F\u5F85\u5E94\u7528\u89C4\u683C\uFF1A\u9009\u4E2D\u683C\u5DF2\u6709\u7684\u8FB9\u6846\u89C4\u683C\u4E00\u81F4\u65F6\u4F1A\u586B\u8FDB\u8FD9\u4E09\u884C\uFF1B\u56DB\u8FB9\u4E0D\u4E00\u81F4\u7684\u9879\u663E\u793A\u300C\u6DF7\u5408\u300D\uFF0C\u4E00\u6761\u8FB9\u90FD\u6CA1\u6709\u65F6\u663E\u793A\u300C\u65E0 / 0\u300D\u3002\u6539\u5B8C\u70B9\u300C\u5168\u90E8 / \u5916\u4FA7 / \u5185\u90E8\u300D\u6216\u52FE\u9009\u4E0A\u3001\u4E0B\u3001\u5DE6\u3001\u53F3\u67D0\u6761\u8FB9\u624D\u4F1A\u5199\u5165\u9009\u4E2D\u7684\u5355\u5143\u683C\uFF1B\u300C\u65E0\u300D\u662F\u6E05\u9664\u8FB9\u6846";
|
|
540
|
+
/** 多选态边框说明:多选不回显单格,三行只作批写规格;与单选的「取自选区」口径区分 */
|
|
541
|
+
declare const CELL_BORDER_APPLY_HINT_MULTI = "\u591A\u9009\u65F6\u4E0D\u56DE\u663E\u5355\u683C\u8FB9\u6846\uFF1A\u7EBF\u578B / \u5BBD\u5EA6 / \u989C\u8272\u6309\u5F53\u524D\u8BBE\u7F6E\u4F5C\u4E3A\u6279\u5199\u89C4\u683C\uFF0C\u70B9\u300C\u5168\u90E8 / \u5916\u4FA7 / \u5185\u90E8\u300D\u6216\u52FE\u9009\u67D0\u6761\u8FB9\u540E\u5199\u5165\u6240\u6709\u9009\u4E2D\u683C\uFF1B\u300C\u65E0\u300D\u662F\u6E05\u9664\u8FB9\u6846";
|
|
542
|
+
/** 单格四边规格不一致的说明:不一致的字段显示「混合」,未改项批写仍按缺省档 */
|
|
543
|
+
declare const CELL_BORDER_APPLY_HINT_MIXED = "\u5F53\u524D\u5355\u5143\u683C\u56DB\u8FB9\u8FB9\u6846\u89C4\u683C\u4E0D\u4E00\u81F4\uFF1A\u5E26\u300C\u6DF7\u5408\u300D\u7684\u9879\u4E0D\u8C0E\u62A5\uFF0C\u672A\u6539\u9879\u5728\u70B9\u300C\u5168\u90E8 / \u5916\u4FA7 / \u5185\u90E8\u300D\u6216\u52FE\u9009\u5355\u8FB9\u65F6\u6309\u7F3A\u7701\u6863\uFF08\u5B9E\u7EBF 0.75pt\uFF09\u5199\u5165\uFF0C\u6539\u4EFB\u4E00\u9879\u5373\u6309\u8BE5\u503C\u6279\u5199";
|
|
544
|
+
/**
|
|
545
|
+
* 单边写入:只动那一条边,其余三边原样保留。
|
|
546
|
+
* 属性台勾选框与工具栏单边按钮共用此口径——早先属性台按「本地勾选集合」整组覆盖,
|
|
547
|
+
* 勾一条边会把模型里已有的另外三条边删掉。
|
|
548
|
+
* border 传 null 即撤掉该边;四条边撤空后不留空对象。
|
|
549
|
+
*/
|
|
550
|
+
declare function setCellBorderEdge(cell: TableCell, side: keyof TableCellBorders, border: TableCellBorder | null): void;
|
|
551
|
+
/** 选区内的可写单元格(跳过被合并覆盖的占位格):单/多选判定、共有类型、边框派生都以此为准 */
|
|
552
|
+
declare function collectWritableCells(rows: TableRow[], rect: CellRect): TableCell[];
|
|
553
|
+
/**
|
|
554
|
+
* 单元格台模式:可写格=1 为单选,≥2 为多选。
|
|
555
|
+
* 跨行/跨列的合并格虽然 rect 跨多个下标,但只有一个可写主格,仍按单选处理(正常回显)。
|
|
556
|
+
*/
|
|
557
|
+
declare function resolveCellGroupMode(rows: TableRow[], rect: CellRect): {
|
|
558
|
+
mode: 'single' | 'multi';
|
|
559
|
+
count: number;
|
|
560
|
+
};
|
|
561
|
+
/**
|
|
562
|
+
* 多选时类型专属行(码制/条宽/静区/缩放…)的共有类型:全部可写格同类型才返回该类型,
|
|
563
|
+
* 混合返回 null。text 是合法返回值(未设置 cellType 即 text),供调用方决定文字类行是否出现。
|
|
564
|
+
*/
|
|
565
|
+
declare function resolveSharedCellType(rows: TableRow[], rect: CellRect): TableCellType | null;
|
|
566
|
+
/**
|
|
567
|
+
* 单元格台「线型 / 宽度 / 颜色」三行的待应用规格(方案 B:跟着选区走,不再存本地草稿)。
|
|
568
|
+
* 取选区内所有可写格已存在的边:规格全一致就回显该值,不一致逐字段给 mixed(界面留空报「混合」),
|
|
569
|
+
* 一条边都没有给 undefined——由界面落回缺省档,保证点预设真的出框。
|
|
570
|
+
* 多选时界面不调用本函数(只回显单格配置),由缺省档充当批写源。
|
|
571
|
+
*/
|
|
572
|
+
declare function resolveCellBorderDisplay(rows: TableRow[], rect: CellRect): BorderSpecDisplay;
|
|
281
573
|
/** 设计态下无边框单元格的辅助虚线:与背景网格线同风格(浅灰虚线),略深保证可读 */
|
|
282
574
|
declare const GHOST_BORDER_CSS = "1px dashed rgba(0,0,0,0.18)";
|
|
283
575
|
/**
|
|
@@ -301,6 +593,51 @@ declare const MIN_COL_WIDTH_MM = 5;
|
|
|
301
593
|
*/
|
|
302
594
|
declare function clampResizedColumnWidth(colWidths: number[], index: number, targetMm: number, maxTableWidth: number): number;
|
|
303
595
|
|
|
596
|
+
/** CSS 绝对单位:1in = 96px */
|
|
597
|
+
declare const MM_TO_PX: number;
|
|
598
|
+
/** 缩放上下限:下限 1 倍不缩小纸面,上限防止长模板把容器撑到不可用 */
|
|
599
|
+
declare const ZOOM_MIN = 1;
|
|
600
|
+
declare const ZOOM_MAX = 8;
|
|
601
|
+
interface ZoomPreset {
|
|
602
|
+
key: string;
|
|
603
|
+
/** 实际写进 CSS zoom 的倍率 */
|
|
604
|
+
value: number;
|
|
605
|
+
label: string;
|
|
606
|
+
/** 悬停说明:点阵档要说清它和纸面的关系 */
|
|
607
|
+
tip: string;
|
|
608
|
+
}
|
|
609
|
+
/**
|
|
610
|
+
* 取模板的打印机分辨率;同时存在多档时取最大(点距最细,放大倍数最高)。
|
|
611
|
+
* 未填 DPI 的模板不做点对齐,也就没有「点阵档」可言,返回 null。
|
|
612
|
+
*/
|
|
613
|
+
declare function resolvePrinterDpi(templateJson?: Record<string, any> | null): number | null;
|
|
614
|
+
/**
|
|
615
|
+
* 纸张宽度(CSS px):兼容单页与多页结构。
|
|
616
|
+
* 宽高一律走 core 的 `getPaperDimensions`——方向交换、自定义宽度、连续纸宽度都在那一处结算,
|
|
617
|
+
* 预览不再维护第二份纸型表(此前那份漏了 Letter/Legal/针式/热敏纸,还把 A3/A5 横版算错)。
|
|
618
|
+
*/
|
|
619
|
+
declare function paperWidthPx(templateJson?: Record<string, any> | null): number;
|
|
620
|
+
/** 适配档:容器宽放得下整页的最大整数倍,非整数一律向下取整(不产生亚像素重采样) */
|
|
621
|
+
declare function fitZoom(containerPx: number, paperPx: number): number;
|
|
622
|
+
/**
|
|
623
|
+
* 缩放档位表。点阵档放在最前:它是唯一能保证「预览所见 = 纸面所打」的档,
|
|
624
|
+
* 默认也应落到它,否则用户仍会看到条粘连。
|
|
625
|
+
*/
|
|
626
|
+
declare function zoomPresets(dpi: number | null, containerPx: number, paperPx: number): ZoomPreset[];
|
|
627
|
+
/** 默认档:能点对齐就给点阵,否则给适配 */
|
|
628
|
+
declare function defaultZoomKey(dpi: number | null): string;
|
|
629
|
+
/** 注入预览文档的缩放守卫样式 id:重渲染会换文档,靠它判断是否需要重新注入 */
|
|
630
|
+
declare const PREVIEW_ZOOM_GUARD_ID = "print-preview-zoom-guard";
|
|
631
|
+
/**
|
|
632
|
+
* 缩放只写进预览文档,不改渲染产物:一条带 `@media print` 复位的规则——
|
|
633
|
+
* `print()` 走 iframe 自身排版与 @page 分页,屏幕放大必须在打印媒介下打回 1,否则会连带改掉分页。
|
|
634
|
+
*/
|
|
635
|
+
declare function applyPreviewViewZoom(doc: Document | null | undefined, zoom: number): void;
|
|
636
|
+
/** 档位因模板变化(如删掉最后一处 printerDpi)而消失时,落回默认档 */
|
|
637
|
+
declare function resolveZoomKey(presets: readonly ZoomPreset[], currentKey: string, dpi: number | null): string;
|
|
638
|
+
/** 当前档位的实际倍率;档位表里找不到时按 1 倍(不缩放) */
|
|
639
|
+
declare function zoomValueOf(presets: readonly ZoomPreset[], key: string): number;
|
|
640
|
+
|
|
304
641
|
declare function generateId(): string;
|
|
305
642
|
declare function createDefaultOptions(type: ElementType): ElementOptions;
|
|
306
643
|
declare function createRuntimeElement(type: ElementType, options?: Partial<ElementOptions>): RuntimeElement;
|
|
@@ -371,6 +708,12 @@ interface PropertyItem {
|
|
|
371
708
|
keywords: string[];
|
|
372
709
|
/** 字段说明文案:挂在标签后的帮助图标上(悬浮/点击显示),元素台与单元格台、canvas 与 common 共用同一份 */
|
|
373
710
|
tip?: string;
|
|
711
|
+
/** 「恢复默认值」提示语里的数值。**仅用于生成文案,重置行为不读它**——
|
|
712
|
+
* 落点一律派生自该元素类型的出厂值(createDefaultOptions / WATERMARK_DEFAULTS / TILE_DEFAULTS)。
|
|
713
|
+
* 必须引用渲染端既有常量,不得重抄字面量:漂移最多说错数字,不会做错动作。 */
|
|
714
|
+
default?: number | string;
|
|
715
|
+
/** 提示语单位,如 模块 / mm / pt */
|
|
716
|
+
defaultUnit?: string;
|
|
374
717
|
}
|
|
375
718
|
interface PropertyGroupDef {
|
|
376
719
|
group: string;
|
|
@@ -387,6 +730,11 @@ declare function searchProperties(search: string): {
|
|
|
387
730
|
groups: string[];
|
|
388
731
|
itemKeys: Set<string>;
|
|
389
732
|
};
|
|
733
|
+
/** 「恢复默认值」提示语取数:只读注册表的纯提示字段,重置行为不经过这里 */
|
|
734
|
+
declare function propertyDefault(key: string): {
|
|
735
|
+
value: number | string;
|
|
736
|
+
unit?: string;
|
|
737
|
+
} | undefined;
|
|
390
738
|
|
|
391
739
|
interface CropBox {
|
|
392
740
|
/** 元素框宽(mm) */
|
|
@@ -679,4 +1027,4 @@ declare function useBindingDisplay(): {
|
|
|
679
1027
|
getBindingDisplayState: (element: any) => BindingDisplayState;
|
|
680
1028
|
};
|
|
681
1029
|
|
|
682
|
-
export { type AdsorbConfig, AdsorbResult, type AlignMode, BARCODE_BAR_HEIGHT_MODULES, BARCODE_MARGIN_BOTTOM_MODULES, BARCODE_MODULE_WIDTH_MM, BARCODE_QUIET_ZONE_MODULES, BARCODE_TEXT_FONT_SIZE_MODULES, type BarcodeSize, type BarcodeSizeInput, BindingDescriptor, type BorderPreset, CROP_AXIS_OPTIONS, CROP_GRID_OPTIONS, CROP_SAMPLE_IMAGE, CROP_SAMPLE_NOTE, CROP_SCALE_LABEL, CROP_SCALE_MAX, CROP_SCALE_MIN, type CellRect, type CropAnchorParsed, type CropBox, type CropTravel, DEFAULT_DEMO_DATA, ELEMENT_BINDING_REGISTRY, ELEMENT_BORDER_SIDES, EXTENDED_FUNCTIONS, type ElementBorderCss, ElementBorderSide, type ElementBordersCss, ElementOptions, ElementRect, ElementType, ElementZone, FIT_SCALE_MIN_PERCENT, type FieldGroup, GHOST_BORDER_CSS, IMAGE_FIT_OPTIONS, type KeyboardHandlers, LABEL_PAPER_GROUP, MIN_COL_WIDTH_MM, MIN_SCALE_PERCENT, MM_PER_INCH, type ManualGuides, type OverflowUnitInput, type OverlayPlacement, type OverlayPlacementInput, PAPER_PRESETS, PRESET_COLORS, PROPERTY_REGISTRY, type PaperPreset, PrintBusinessField, type PropertyGroupDef, type PropertyItem, RESIZE_POINTS, RULER_THICKNESS, type ResizeOptions, ResizePoint, type ResizeRect, type RulerTick, RuntimeElement, TableCell, TableCellBorder, TableRow, TableRowType, TemplateData, type ToolbarOverflowInput, type ToolbarOverflowResult, ZONE_ALLOWED_TYPES, type ZoneRectPt, acceptsElementBorder, applyBorderPreset, barcodeAvailableBoxMm, barcodePreferredModuleWidthMm, barcodeUnitsPerModule, buildCropAnchor, buildRulerTicks, calcResizeRect, canMergeReason, chooseMajorStepMM, clampResizedColumnWidth, clampScalePercent, clampToZone, computeAdsorb, computeFitScale, createCell, createDefaultOptions, createDefaultTable, createFieldElement, createRuntimeElement, cropAxisFields, cropAxisLabel, cropAxisNote, cropPresetOptions, cropScalePct, cropStyleDeclarations, cropWindow, deleteCol, deleteRow, engine, evaluateTemplate, filterGroups, finalizeElementZone, findMainCell, generateGroupId, generateId, getDemoData, getElementBindings, getPaperDimensions, getPaperSizeMM, getSpanRect, getTableCellBindings, getZoneRects, groupFields, insertCol, insertRow, isContinuousPaperSize, isLabelPaperSize, labelPaperDefaults, matchKeywords, mergeCells, minorStepMM, mmToPx, nextWheelScale, normalizeSelection, normalizeTemplateUnits, parseCropAnchor, propertyTip, ptToMm, pxToMm, resolveBarcodeDesignValue, resolveBarcodeSize, resolveCellBorderCss, resolveCropPreview, resolveCropTravel, resolveDesignImageSrc, resolveElementBorder, resolveOverlayPlacement, resolveTextBinding, resolveToolbarOverflow, safeEval, sanitizeObjectPosition, searchProperties, setHeaderRepeat, setRowType, splitCells, syncTableElementSize, useAlign, useBindingDisplay, useGroup, useKeyboard, useResize, zoneFromPaperPoint };
|
|
1030
|
+
export { type AdsorbConfig, AdsorbResult, type AlignMode, BARCODE_BAR_HEIGHT_MODULES, BARCODE_MARGIN_BOTTOM_MODULES, BARCODE_MIN_MODULE_WIDTH_MM, BARCODE_MODULE_WIDTH_MM, BARCODE_QUIET_ZONE_MODULES, BARCODE_TEXT_FONT_SIZE_MODULES, BORDER_EDGE_SIDES, BORDER_LINE_STYLES, type BarcodeBarHeightInput, type BarcodeBarWidthRecommendation, type BarcodeLayout, type BarcodeLayoutInput, type BarcodeSize, type BarcodeSizeInput, type BarcodeViewBoxUnits, type BarcodeWidthBoundInput, BindingDescriptor, type BorderEdgeState, type BorderLineStyle, type BorderPreset, type BorderSpecDisplay, CELL_BORDER_APPLY_HINT, CELL_BORDER_APPLY_HINT_MIXED, CELL_BORDER_APPLY_HINT_MULTI, CROP_AXIS_OPTIONS, CROP_GRID_OPTIONS, CROP_SAMPLE_IMAGE, CROP_SAMPLE_NOTE, CROP_SCALE_LABEL, CROP_SCALE_MAX, CROP_SCALE_MIN, type CellRect, type CropAnchorParsed, type CropBox, type CropTravel, DEFAULT_BORDER, DEFAULT_DEMO_DATA, ELEMENT_BINDING_REGISTRY, ELEMENT_BORDER_APPLY_HINT, ELEMENT_BORDER_FALLBACK_WIDTH, ELEMENT_BORDER_SIDES, EXTENDED_FUNCTIONS, type ElementBorderCss, ElementBorderEdge, type ElementBorderFieldKey, ElementBorderSide, type ElementBorderSpec, type ElementBordersCss, ElementOptions, ElementRect, ElementType, ElementZone, FIT_SCALE_MIN_PERCENT, FLOW_MAX_COLUMNS, FLOW_MAX_GAP_X_MM, FLOW_MAX_ROW_HEIGHT_MM, FLOW_MIN_COLUMNS, FLOW_MIN_GAP_X_MM, FLOW_MIN_ROW_HEIGHT_MM, type FieldGroup, type FlowCell, type FlowLayoutConfig, type FlowRenderConfig, type FlowRow, GHOST_BORDER_CSS, IMAGE_FIT_OPTIONS, type KeyboardHandlers, LABEL_PAPER_GROUP, MIN_COL_WIDTH_MM, MIN_SCALE_PERCENT, MM_PER_INCH, MM_TO_PX, type ManualGuides, type OverflowUnitInput, type OverlayPlacement, type OverlayPlacementInput, PAPER_PRESETS, PRESET_COLORS, PREVIEW_ZOOM_GUARD_ID, PROPERTY_REGISTRY, type PaperPreset, PrintBusinessField, type PropertyGroupDef, type PropertyItem, QR_DEFAULT_QUIET_MODULES, RESIZE_POINTS, RULER_THICKNESS, type ResizeOptions, ResizePoint, type ResizeRect, type RulerTick, RuntimeElement, TableCell, TableCellBorder, TableCellBorders, TableCellType, TableRow, TableRowType, TemplateData, type ToolbarOverflowInput, type ToolbarOverflowResult, ZONE_ALLOWED_TYPES, ZOOM_MAX, ZOOM_MIN, type ZoneRectPt, type ZoomPreset, acceptsElementBorder, applyBorderPreset, applyElementBorderPreset, applyPreviewViewZoom, barcodeAvailableBoxMm, barcodeBarHeightModules, barcodeBarWidthRecommendText, barcodePreferredModuleWidthMm, barcodeQuietZoneModules, barcodeUnitsPerModule, barcodeWidthBoundModuleWidthMm, buildCropAnchor, buildRulerTicks, calcResizeRect, canMergeReason, chooseMajorStepMM, clampResizedColumnWidth, clampScalePercent, clampToZone, collectWritableCells, computeAdsorb, computeFitScale, createCell, createDefaultOptions, createDefaultTable, createFieldElement, createRuntimeElement, cropAxisFields, cropAxisLabel, cropAxisNote, cropPresetOptions, cropScalePct, cropStyleDeclarations, cropWindow, defaultZoomKey, deleteCol, deleteRow, detectFlowListKey, effectiveElementBorderSpec, elementBorderEdgeVisible, elementVisibleBorders, engine, estimateTextWidthMm, evaluateTemplate, filterGroups, finalizeElementZone, findMainCell, fitZoom, flowColumnWidthMm, flowGridStyle, flowSpanWidthMm, generateGroupId, generateId, getDemoData, getElementBindings, getPaperDimensions, getPaperSizeMM, getSpanRect, getTableCellBindings, getZoneRects, groupFields, insertCol, insertRow, isContinuousPaperSize, isLabelPaperSize, labelPaperDefaults, layoutBarcodeSize, layoutFlowList, matchKeywords, mergeCells, minorStepMM, mmToPx, nextWheelScale, normalizeSelection, normalizeTemplateUnits, paperWidthPx, parseCropAnchor, propertyDefault, propertyTip, ptToMm, pxToMm, recommendBarcodeBarWidth, resolveBarcodeDesignValue, resolveBarcodeSize, resolveBorderEdgeStates, resolveCellBorderCss, resolveCellBorderDisplay, resolveCellGroupMode, resolveCropPreview, resolveCropTravel, resolveDesignImageSrc, resolveElementBorder, resolveElementBorderDisplay, resolveElementBorderSpec, resolveFlowColumns, resolveFlowGapX, resolveFlowMaxSpan, resolveFlowRowHeight, resolveOverlayPlacement, resolvePrinterDpi, resolveSharedCellType, resolveTextBinding, resolveToolbarOverflow, resolveZoomKey, safeEval, sanitizeObjectPosition, searchProperties, setCellBorderEdge, setElementBorderEdge, setElementBorderEdgeVisible, setElementBorderField, setHeaderRepeat, setRowType, spanForText, splitCells, suggestFlowColumns, syncTableElementSize, useAlign, useBindingDisplay, useGroup, useKeyboard, useResize, zoneFromPaperPoint, zoomPresets, zoomValueOf };
|