@@ -1068,10 +1068,19 @@ export function convertElementToDom(
10681068  } 
10691069  if  ( element . underline )  { 
10701070    dom . style . textDecoration  =  'underline' 
1071+     dom . style . textDecorationStyle  =  element . textDecoration ?. style  ||  'solid' 
10711072  } 
10721073  if  ( element . strikeout )  { 
10731074    dom . style . textDecoration  +=  ' line-through' 
10741075  } 
1076+   if  ( element . type )  { 
1077+     dom . setAttribute ( 'data-type' ,  element . type ) 
1078+   } 
1079+   if  ( element . rowMargin )  { 
1080+     dom . style . lineHeight  =  ( 
1081+       element . rowMargin  ??  options . defaultRowMargin 
1082+     ) . toString ( ) 
1083+   } 
10751084  dom . innerText  =  element . value . replace ( new  RegExp ( `${ ZERO }  ` ,  'g' ) ,  '\n' ) 
10761085  return  dom 
10771086} 
@@ -1297,6 +1306,9 @@ export function createDomFromElementList(
12971306        } 
12981307      }  else  if  ( element . type  ===  ElementType . SEPARATOR )  { 
12991308        const  hr  =  document . createElement ( 'hr' ) 
1309+         if  ( element . dashArray ?. length )  { 
1310+           hr . setAttribute ( 'data-dash-array' ,  element . dashArray . join ( ',' ) ) 
1311+         } 
13001312        clipboardDom . append ( hr ) 
13011313      }  else  if  ( element . type  ===  ElementType . CHECKBOX )  { 
13021314        const  checkbox  =  document . createElement ( 'input' ) 
@@ -1321,6 +1333,10 @@ export function createDomFromElementList(
13211333        const  childDom  =  buildDom ( element . control ?. value  ||  [ ] ) 
13221334        controlElement . innerHTML  =  childDom . innerHTML 
13231335        clipboardDom . append ( controlElement ) 
1336+       }  else  if  ( element . type  ===  ElementType . PAGE_BREAK )  { 
1337+         const  pageBreakElement  =  document . createElement ( 'div' ) 
1338+         pageBreakElement . style . breakAfter  =  'page' 
1339+         clipboardDom . append ( pageBreakElement ) 
13241340      }  else  if  ( 
13251341        ! element . type  || 
13261342        element . type  ===  ElementType . LATEX  || 
@@ -1366,6 +1382,9 @@ export function createDomFromElementList(
13661382        rowFlexDom . style . textAlign  =  convertRowFlexToTextAlign ( 
13671383          elementGroupRowFlex . rowFlex ! 
13681384        ) 
1385+         if  ( elementGroupRowFlex . rowFlex  ===  'justify' )  { 
1386+           rowFlexDom . style . textAlignLast  =  'justify' 
1387+         } 
13691388      } 
13701389    } 
13711390    // 布局内容 
0 commit comments