这几天遇到一个需求,要求用java导出一个excel,其中有些单元格需要是竖向的文字,如图。

既然是java导excel,自然使用了Apache POI。
一开始尝试使用换行,虽然视觉效果达到,但是该excel导出后会有后续的vbs去处理,换行达到的竖排效果并不能满足已有的vbs处理过程,会导致失败。

接着看StackOverFlow上多个人提出使用setRatation((short)90),发现整体旋转90度的同时每个文字也被转了90度,也不满足要求。

然后翻了一天poi的源码,发现底层是通过xsb文件定义的schema,并通过xmlbeans生成的Cellstyle,底层设置格式的时候也是各种位运算,想要通过反射强行注入一些格式估计也是不太可能。

最后在不抱希望的情况下,在stackoverflow上提了这个问题,居然得到了大神的解答。。
传送门:http://stackoverflow.com/questions/42053926/how-to-make-verticaltext-cellstyle-with-apache-poi

方案如下:
setRotation((short)255)

POI导出excel,设置竖向文字相关推荐

  1. POI导出EXCEL设置高度和宽度

    -------------------------------------------------------------------------------SSFRow hssfRow = shee ...

  2. POI导出Excel设置单元格背景色

    POI导出Excel设置单元格背景色 导出Excel的时候,没有设置背景色,用2003版本的Excel工具打开会出现文档单元格背景自动填充黑色的情况,没有找到好的解决方法,就主动给他填充一种颜色,问题 ...

  3. POI导出Excel设置背景色踩坑,解决背景色全黑(无效)的问题及指定列添加背景色,自定义颜色

    POI导出Excel设置背景色踩坑,解决背景色全黑的问题及指定列添加背景色,自定义颜色 一.自定义颜色 二.背景色全黑(无效)的问题解决![在这里插入图片描述](https://img-blog.cs ...

  4. JAVA POI导出EXCEL设置自定义样式(线框加粗,合并指定行,合计求和,冻结行)

    前面部分是当时查询的记录: 实现Excel文件单元格合并.冻结和文件导出 Workbook wb = new HSSFWorkbook();Sheet sheet = wb.createSheet(& ...

  5. java导出excel表格设置行高,POI导出Excel设置单元格格式

    使用Apache的POI相关API导出Excel设置单元格格式 栗子,一下各个代码之间的变量是通用的,要是在某个代码块中找不到某个变量,则可以向上找寻 准备工作 InputStream = templ ...

  6. poi导出Excel设置超链接-简便方法

    最近做了一些导出excel的需求: 例如一些设置背景色,设置字体,边框,添加超链接,合并单元格. 1.设置背景色 headStyle.setFillForegroundColor(IndexedCol ...

  7. POI导出excel设置字体颜色,背景颜色,自定义颜色

    最近项目中用到了POI导出功能.以下技术供大家学习 完整代码如下: CellStyle style = wb.createCellStyle(); style.setBorderBottom(Cell ...

  8. java poi导出excel 设置单元格式为百分比现实

    正常情况下利用poi导出来的excel显示的未格式化的百分比小数: 需要手动选择单元格式为百分比才会显示: 代码设置: CellStyle style = wb.createCellStyle(); ...

  9. java使用POI导出Excel设置单元格格式为数值类型

    最近做项目遇到的坑,百度了半天导出都为货币类型.自定义类型和常规类型,,,最后终于解决,在此记录一下 其中contextstyle.setDataFormat(df.getFormat("0 ...

  10. poi导出excel设置超链接、字体样式、边框等

    @RequestMapping(value = "/outURL", method = RequestMethod.GET)@ApiOperation(value = " ...

最新文章

  1. 我们需要什么样的数据架构?
  2. View工作原理(四)view的layout过程
  3. 【STM32】定时器中断实验代码详解
  4. filter过滤器_不了解布隆过滤器?一文给你整的明明白白!
  5. .NET轻量级ORM框架Dapper入门精通
  6. 智能大棚计算机系统,一套智能大棚需要哪些设备?我来告诉你!
  7. idea 一直在build_让web开发部署提速 8 倍的一款 IDEA 插件,你有在用?
  8. P1131-[ZJOI2007]时态同步【树形dp】
  9. linux shell 编程
  10. LAMP+LNMP(一) LAMP架构概述
  11. penpyxl basic function demo code
  12. python讲解-详解python中@的用法
  13. Linux查询命令man手册各章节解释
  14. tail 命令只查看日志中的关键字所在行信息
  15. 硬核干货! 你的业务是否适合上链、上链有那些坑?dfuse、慢雾、MYKEY大佬为你为你指点迷津……...
  16. 从 0 开始机器学习 - 机器学习系统的设计与误差分析
  17. Python学习之==接口开发
  18. 1.4.4 Performance Measures
  19. 人脸识别活体检测sdk 百度 python_Python百度人脸识别SDK的使用
  20. 微软的teredo服务器,win10系统通过teredo连接ipv6的具体教程

热门文章

  1. Mac下 Vim删除多行快捷键
  2. 财务数据分析sql python_我是如何从会计转行到数据分析
  3. Installshield环境变量的追加与删除设置
  4. 仙人掌之歌——进军To C直播(2)
  5. ARM-Keil MDK5软件包的下载方式
  6. python etree库_python 标准库之xml.etree.ElementTree
  7. 策略模式(Strategy) 1
  8. 吴恩达机器学习作业3:多类分类(Python实现)
  9. 手游8月大维权 中小团队生存压力加大
  10. VMware Player 与 Device/Credential Guard 不兼容。在禁用 Device/Credential Guard 后,可以运行 VMware Player。