Excel催化剂开源第40波-Excel插入图片做到极致的效果

不知道是开发人员的自我要求不高还是用户的使用宽容度足够大,在众多Excel插入图片的版本中,都没有考虑到许多的可大幅度提升用户体验的细节处理。
Excel催化剂虽然开发水平有限,但也在有限的能力下,尽最大的努力做到自己可以过关的出街成品。
此篇着重谈下思路性的问题,代码因为太久远之前写的,现在看回也是一坨坨的,真需要时可能重新写一轮更方便。

Excel插入图片的细节追求

可能在之前的文章中,也偶尔做了一些分享,自己也不太记得分享过哪些了,这里再重新梳理下,有重复提及的部分就权当复习好了。

一、插入图片的刚需效果

  • 起码图片能够真正插入到工作表中,并且始终保留在工作表中,这点要求大家都可以做到
  • 图片随单元格移动、缩小、放大而变化。

这一点在Excel催化剂上因为技术原因,需要手动处理下,也不算太大工作量,就顺手点下鼠标自动调整下。其他的图片插入功能可以自动调整。

  • 图片在排序、复选过程中,仍然保持正确的位置跟随

这一点Excel催化剂也需要使用上一点说到的手动操作一下,不算麻烦,习惯一下就行。

  • 满足多种场景的图片插入

图片插入,总共总结到的有以下几种类型:按单元格内容匹配插入(分只插入一张还是插入所有或指定最大张数)、在合并单元格区域内插入、在批注上插入。
这些功能,只要努力一下,也是可以实现的,非技术问题。

能满足以上需求的算是合格水平了,但还是有些作为商业收费性卖点的插件,仍然未能满足这些最基本的要求。

二、可提升的细节部分

以下说到的,在Excel催化剂当中,都已经完全实现出来,细节决定一切,带领大家来领略一翻。

  • 频繁插入同一图库位置的记录和配置功能

这个也是不难实现,但对用户的使用体验提升非常明显,一般情况下,都是固定的几个图库的位置找图片,每次都要繁锁地选择文件夹,效率十分低下,让人烦躁。

就算不给配置,大量的VSTO开发者用的是.Net里的文件夹选择控件,那控件太难用,不能直接复制粘贴路径,快速跳转自定义快捷路径,更应该用的是OFFICE对象里的文件夹选择功能,和日常的选择功能的窗口界面一致,好用太多。

  • 图片的长宽比例自动缩放

这个在本人没有使用现今的picturebox装载图片技术时,也用普通的技术实现出来了,可能绝大部分插件都未见有这个细节上的处理,特别是在多种不规则的图片,非理想化的统一尺寸时的图片批量插入尤为显得重要,插入的图片没有经过等比例缩放,图片被变形拉升,出来的效果非常糟糕。

  • 图片可轻松进行放大处理

一般插入的图片,都是缩略图的小图形式插入,如果想看细节一点的图片信息,放大操作也是很需要的,同样地绝大部分的插件开发者都没有为这一方面去考虑,同样就算没有用Excel催化剂的技术来开发,这一点,用传统的方法也可勉强达到想要的效果,是有做和没做的区别,非技术的问题。

  • 图片遮挡单元格边框问题

如果需要做数据排版要求的话,有图片在内,若图片将单元格边框进行遮挡,排版过程会显得很别扭和不自然,这点当然不是技术性问题,人人皆可做到的部分。

  • 多次插入同一图片的性能问题

插入图片这个动作,对于一些图片尺寸较大的图片来说,还是比较影响插入速度的,如果同样的图片,每次还是要重新从硬盘文件中去读取再插入,是很影响性能的。

在Excel催化剂的实现效果中,当插入重复性的图片时,会从已插入的图片中直接复制操作,速度非常快,这个细节在特定时候就显得差异来了。为了这个细节,要写许多代码来支持它。

  • 图片插入后的大小保留问题

原始图片有大有小,当大图片时,插入后,可能想保留较大的尺寸可以看到更多细节,或者某些场景只需缩略图大小即可,大量插入大图片,整个文档变得非常臃肿膨胀,最后用户却不得不抱怨自己的机器弱爆了,开个表格都卡个半天。

其实在软件细节方面可以做好多功夫来避免它的,在Excel催化剂中,可以自行决定图片插入后的大小,使用了新技术,在细节优化上有很大的优势。

  • 插入图片可满足自由排版需求

一般来说,插入一行一张图片的标准表格式清单报表,阅读效果较差,因为图片已经占了很高的位置,整屏下来,不能看到多少明细信息。

更佳的方式是用在标签式结构的报表上插入图片,可以有一个单元的概念,多行多列重复排列,信息量更大,阅读效果更好。

在Excel催化剂中,将其定义为带图片的自由报表的输出,很大程度上,比各种系统生成的报表还要来得好看、易读、好用。用户全程参与设计排版,细节部分完成自己控制,把自己的美学、对业务指标的理解、重点标示什么等能力统统用起来,做出最合适自己看的数据报表。

  • 根据单元格字符查找图库文件夹时的策略,有查找子文件夹和单元格字符精确查找两种组合可用。

查找过程中,除了这个查找组合外,当然也要考虑到性能问题,找到后就立即退出后面查找,或者在需要返回多张图片,不得不再次查找时,也设置控制开关,返回多张图片的上限,当查找完就可退出,保证性能同时也满足业务实际的多样性场景需求。

因着以上的各种细节处理优化,在插入后的衍生功能如导出图片、删除图片、调整图片大小布局等,也将变得更加容易和可行,形成在图片场景在Excel上的全闭环。

Excel催化剂中的实现

具体的实现效果,可参看以下几篇文章

  • 第11波-快速批量插入图片并保护纵横比不变https://www.jianshu.com/p/9a3d9aa7ba7e
  • 第13波-一键生成带图片的标签式自由报表https://www.jianshu.com/p/af0ac9ce1819
  • 第49波-标准数据结构表转报表样式结果https://www.jianshu.com/p/5f559d8ccdc3
  • 第54波-批量图片导出,调整大小等 https://www.jianshu.com/p/16d3b4b2194d

Excel催化剂愿景

但愿Excel催化剂的一点一滴的努力,能够给市场带来一些新鲜的气息,做一个产品,和认真做一个产品,负责任地做一个产品,和将一个产品做到极致化。

少一点套路,少一点浮躁,少一点所谓可点可圈的营销手段,多一点在细节上深挖的工匠精神。

技术交流QQ群

QQ群名:Excel催化剂开源讨论群, QQ群号:788145319

关于Excel催化剂

Excel催化剂先是一微信公众号的名称,后来顺其名称,正式推出了Excel插件,插件将持续性地更新,更新的周期视本人的时间而定争取一周能够上线一个大功能模块。Excel催化剂插件承诺个人用户永久性免费使用!

Excel催化剂插件使用最新的布署技术,实现一次安装,日后所有更新自动更新完成,无需重复关注更新动态,手动下载安装包重新安装,只需一次安装即可随时保持最新版本!

Excel催化剂插件下载链接:https://pan.baidu.com/s/1Iz2_NZJ8v7C9eqhNjdnP3Q

取名催化剂,因Excel本身的强大,并非所有人能够立马享受到,大部分人还是在被Excel软件所虐的阶段,就是头脑里很清晰想达到的效果,而且高手们也已经实现出来,就是自己怎么弄都弄不出来,或者更糟的是还不知道Excel能够做什么而停留在不断地重复、机械、手工地在做着数据,耗费着无数的青春年华岁月。所以催生了是否可以作为一种媒介,让广大的Excel用户们可以瞬间点燃Excel的爆点,无需苦苦地挣扎地没日没夜的技巧学习、高级复杂函数的烧脑,最终走向了从入门到放弃的道路。

最后Excel功能强大,其实还需树立一个观点,不是所有事情都要交给Excel去完成,也不是所有事情Excel都是十分胜任的,外面的世界仍然是一个广阔的世界,Excel只是其中一枚耀眼的明星,还有其他更多同样精彩强大的技术、工具等。*Excel催化剂也将借力这些其他技术,让Excel能够发挥更强大的爆发!

关于Excel催化剂作者

姓名:李伟坚,从事数据分析工作多年(BI方向),一名同样在路上的学习者。
服务过行业:零售特别是鞋服类的零售行业,电商(淘宝、天猫、京东、唯品会)

技术路线从一名普通用户,通过Excel软件的学习,从此走向数据世界,非科班IT专业人士。
历经重重难关,终于在数据的道路上达到技术平原期,学习众多的知识不再太吃力,同时也形成了自己的一套数据解决方案(数据采集、数据加工清洗、数据多维建模、数据报表展示等)。

擅长技术领域:Excel等Office家族软件、VBA&VSTO的二次开发、Sqlserver数据库技术、Sqlserver的商业智能BI技术、Powerbi技术、云服务器布署技术等等。

2018年开始职业生涯作了重大调整,从原来的正职工作,转为自由职业者,暂无固定收入,暂对前面道路不太明朗,苦重新回到正职工作,对Excel催化剂的运营和开发必定受到很大的影响(正职工作时间内不可能维护也不可能随便把工作时间内的成果公布于外,工作外的时间也十分有限,因已而立之年,家庭责任重大)。

和广大拥护者一同期盼:Excel催化剂一直能运行下去,我所惠及的群体们能够给予支持(多留言鼓励下、转发下朋友圈推荐、小额打赏下和最重点的可以和所在公司及同行推荐推荐,让我的技术可以在贵司发挥价值,实现双赢(初步设想可以数据顾问的方式或一些小型项目开发的方式合作)。

原文地址:https://www.cnblogs.com/ExcelCuiHuaJi/p/11225056.html

时间: 2024-10-12 20:14:49

Excel催化剂开源第40波-Excel插入图片做到极致的效果的相关文章

Excel催化剂开源第51波-Excel催化剂遍历单元格操作性能保障

在Excel催化剂推出的这一年多时间里,经常性听到一种声音,大概意思是真正会写代码的人,都不会看上Excel催化剂写出来的功能,自己造一个更舒服贴心,仿佛会一点VBA就可以天下无敌一般,也好像Excel催化剂出的所有的功能,在他们眼中都是幼儿园级别,过家家玩玩而已. 这里不对此看法置评,只用事实说话,看看会一点VBA的人,能否造出以下的超强性能保障的代码功能来. 遍历单元格性能问题 学过VBA的群体,都知道遍历单元格是一个很慢的过程,最好将其放进数组中再遍历. 为何会慢这个问题,可能就没有深入研

Excel催化剂开源第47波-Excel与PowerBIDeskTop互通互联之第一篇

当国外都在追求软件开源,并且在GitHub等平台上产生了大量优质的开源代码时,但在国内却在刮着一股收割小白智商税的知识付费热潮,实在可悲. 互联网的精神乃是分享,让分享带来更多人的受益. 在PowerBI领域,出现了十分优秀的DAXStudio和Tabular Editor等开源工具,影响深远.借此,Excel催化剂也决定将最核心的.也是PowerBI群体中热切盼望到功能点进行开源. 但愿从中受益的群体,不要将其视为其有,并且利用信息不对称继续进行收割智商税的延续,并且最好能够在引用时按开源的原

Excel催化剂开源第50波-Excel与PowerBIDeskTop互通互联之第四篇

答应过的全盘分享,也必承诺到底,此篇PowerBI功能分享的最后一篇,讲述如何导出数据模型的元数据,笔者定义其为模型的数据字典. 此篇对应功能实现出自:第6波-导出PowerbiDesktop模型数据字典https://www.jianshu.com/p/bc26a8dcdfce 关系型数据库有数据字典,分析型数据库更加要有数据字典,DAX建模过程中,若模型的关系复杂,引用的表过多,生成的度量值.计算列过多,单单从PowerBIDeskTop去查看模型关系非常低效. 当然最好的查看方式,在全宇宙

Excel催化剂开源第48波-Excel与PowerBIDeskTop互通互联之第二篇

前一篇的分享中,主要谈到Excel透视表连接PowerBIDeskTop的技术,在访问SSAS模型时,不止可以使用透视表的方式访问,更可以发数据模型发起DAX或MDX查询,返回一个结果表数据,较透视表的方式更为灵活. 此篇再次带出Excel向PowerBIDeskTop发出DAX查询的技术要点. 此篇对应功能实现出自:第5波-使用DAX查询从PowerbiDeskTop中获取数据源https://www.jianshu.com/p/21b2ca8fd2b8 原理性分析 和上一篇类似,同样是使用O

Excel催化剂开源第43波-Excel选择对象Selection在.Net开发中的使用

Excel的二次开发有一极大的优势所在,可以结合用户的交互进行程序的运行,大量用户的交互,都是从选择对象开始,用户选择了单元格区域.图形.图表等对象,之后再进行程序代码的加工处理,生成用户所需的最终结果. 所以熟练处理选择对象,尤其关键,而在VBA里的使用方法,来到.Net中特别是C#语言下,就需要另外的代码处理,希望此篇的分享给VBA转VSTO的朋友们带来一些帮助指引. 在VBA中,判断一个Selection对象是什么类型的方法如下: Sub test() Dim sel Set sel =

个人永久性免费-Excel催化剂功能第20波-Excel与Sqlserver零门槛交互-数据上传篇

Excel作为众多数据存储的交换介质,在不同的系统内的数据很少可以很连贯地进行整合分析,一般的业务系统都会提供导出Excel作为标配功能供用户使用系统内生成的数据. 此时最大的问题是,Excel很维去成为各个数据源的整合方,其数据存储能力和运算能力一直是众多深度Excel用户们一大头痛的事情,当数据量一大,做什么操作都会慢下来. 今天Excel催化剂将给大家带来全新的解决方案,Excel与Sqlserver深度集成,在Excel上的数据源能轻松上传至Sqlserver中,实现以Sqlserver

Excel催化剂开源第35波-图片压缩及自动旋转等处理

Excel催化剂在图片处理方面,也是做到极致化,一般的Excel插件插入图片是原图插入或不可控制压缩比例地方式插入图片至Excel当中,但Excel催化剂的插入图片,是开发了可调节图片大小的插入方式,让图片在Excel上可以有预期的像素大小和文件大小的平衡. 在图片处理方面,完全可以借助一个非常棒的类库,实现美图秀秀那般日常的图片处理. 此篇对应的Excel催化剂功能实现:第11波-快速批量插入图片并保护纵横比不变 https://www.jianshu.com/p/9a3d9aa7ba7e E

Excel催化剂开源第1波-自定义函数的源代码全公开

Excel催化剂插件从2018年1月1日开始运营,到今天刚好一周年,在过去一年时间里,感谢社区里的许多友人们的关心和鼓励,得以坚持下来,并收获一定的用户量和粉丝数和少量的经济收入回报和个人知名度的提升. 虽然还没有达到预期的效果,但相信用心去做,无论是为理想.为情怀,为现实经济回报,在新的一年,仍然抱有感恩的心,继续贡献自我的一些微博之力. 在新的2019年,若时间精力的许可,可适当地开发Excel催化剂的源代码,供广大Excel爱好者特别是有开发能力的高级用户们一起学习观摩,算是再次给Exce

Excel催化剂开源第16波-VSTO开发之脱离传统COM交互以提升性能

在VSTO开发或其他COM技术开发过程中,甚至VBA也是,在和Excel交互中,难免会遇到性能瓶颈问题,COM技术的交互实在太慢,对大量数据读写等操作,耗时太长,容易卡用户界面以为是程序死机等等. 在专业程序猿开发群体,极少直接用COM的方式来访问Excel文件,都是以其他的非COM如最为流行的NPOI和EPPLUS类库的方式访问,并且是免费的可用于商业项目的. 在VSTO中调用NPOI和EPPLUS,又是怎样一翻境界呢?因Excel催化剂主要是为数据分析群体服务,其中大量的场景是面积大数据量的