V14.2 新特性解析 - 见微知著:实现格式刷功能的前前后后
本帖最后由 Richard.Ma 于 2022-1-11 17:35 编辑本篇文章主要探究Excel中格式刷的详细功能。
在 Excel 中,格式刷是位于“开始”选项卡上的一个按钮,我们在日常使用EXCEL的过程中会经常性的用到这个功能,用于快速将相同的格式(例如颜色、字体样式和大小以及边框样式)应用于多段文本或图形等元素。
此功能的大部分的使用场景:一般来说我们会将一个单元格选中,然后点击格式刷来复制此单元格各式,并将格式应用于单元格或单元格区域。在SpreadJS中实现相同的“格式刷”,看起来并不复杂,只需要拿到这个单元格的格式,进行复制即可。
然而,本着工匠精神,在我们我们对Excel中的“格式刷”进行了详细的研究后,发现事情果然远不止这么简单
格式化的鼠标交互-单击或双击格式刷单击按钮时,格式刷只能使用一次。双击按钮时,格式刷可以多次使用,直到再次单击或按下退出按钮。
格式刷可以复制哪些格式Excel除了单元格之外,实际上也支持为其他的元素设置格式。相同类型之间都可以使用格式刷设置格式。
单元格:
如上图所见,格式刷复制了字体样式、对齐样式、数字格式和条件格式。
形状:
如上图所见,格式刷复制了填充、线条、阴影、反射、发光、3D 格式、文本框和所有文本样式。
图表:
在图表中,格式刷只复制文本样式。
Table表格:不同的表格之间:格式刷不支持表格样式复制
相同的表格之间
当格式刷选定区域的大小不同时
当源范围大于目标范围时,格式刷选择裁剪一部分。
当源范围小于目标范围时,它会重复自身以覆盖目标。https://wiki.grapecity.io/download/attachments/1178713429/image2021-7-22_16-28-15.png?version=1&modificationDate=1626942496073&api=v2
格式刷如何复制单元格区域的格式接下来,我们又详细研究了单元格区域格式复制的情况(格式刷的源为一个区域而非单元格)
可以看到当源是一个区域,且区域内每个单元格样式不同时, 1.目标区域<=源区域,目标区域会截取源区域左上角对应大小的区域,对每个单元格分别填充对应样式。 2.目标区域>=源区域,目标区域会一直重复源区域的格式,对每个单元格分别填充,直到目标区域被填满为止。
同时,当源区域中包含条件格式时,也会复制条件格式到目标区域对应的单元格。
页:
[1]