/** * 布局基础配置 */ interface CFPDXBaseLayout extends CFPDThemeStyle { /** * 描述字体隔离全局设置 */ descFontIsolate: boolean; /** * 字体隔离全局设置 */ fontIsolate: boolean; /** * 图标字体大小 */ iconFontSize: string; /** * 选项字体隔离全局设置 */ optFontIsolate: boolean; } /** * 选项布局相关的布局属性 */ interface CFPDXOptionAlignLayout { /** * 选项布局方式 */ optAlign: OPT_ALIGN; /** * 是否使用自适应的列数设置 */ responsiveColumn?: boolean; /** * 列数 */ columns: number; /** * 手机端列数 */ mobileColumns: number; /** * 桌面端列数 */ desktopColumns: number; } /** * 垂直布局相关属性 */ interface CFPDXVerticalAlignLayout { /** * 垂直对齐方式 */ verticalAlign: V_ALIGN; } /** * 水平布局相关属性 */ interface CFPDXHorizontalAlignLayout { /** * 水平对齐方式 */ horizontalAlign: H_ALIGN; } /** * 节点基本布局 */ interface CFPDNodeLayout extends CFPDXBaseLayout, CFPDThemeBgImg { } /** * 大部分题目通用的布局规则,如果哪种节点不适用这个规范则肯定会有自己的布局类型规范 */ interface CFPDCommonNodeLayout extends CFPDNodeLayout, CFPDXOptionAlignLayout { } /** * 选择题布局数据格式 */ interface CFPDSelectNodeLayout extends CFPDNodeLayout, CFPDCommonNodeLayout, CFPDXVerticalAlignLayout, CFPDXHorizontalAlignLayout { /** * 选项选择标记 */ optMark: OPT_MARK; } /** * 矩阵题目布局数据格式 */ interface CFPDMatrixNodeLayout extends CFPDNodeLayout, CFPDXVerticalAlignLayout { } /** * 拥有布局功能的节点类型 */ interface CFPDMLayoutNode extends CFPDBNode { /** * 布局设置 */ layout: CFPDNodeLayout; /** * 用于渲染的模板 */ template: CFPDNodeTemplate; }