文本进行90度翻转HTML,字体逆时针旋转90度

文章类型:设计基础

在报表数据的显示样式上,会遇到客户需要将文本逆时针旋转的方式显示,尽管说润乾设计器在设计报表的时候没有直接提供逆时针旋转文本的属性,但是我们可以结合润乾提供的在报表中使用Html类型数据来实现。

现在我们先看一下文本逆时针旋转90°后的效果:

a4c26d1e5885305701be709a3d33442f.png

从上图可以看到逆时针旋转90°竖排显示的效果,下面以一个例子来说明报表的制作过程

第一步:新建一空白报表,正常输入默认情况下的文字作为对比

如下:

a4c26d1e5885305701be709a3d33442f.png

第二步:Html数据类型设置字体旋转效果

如下:

a4c26d1e5885305701be709a3d33442f.png

B3单元格设置数据类型为HTML,内容内输入为:

value=”文字逆时针旋转90°”

style=”FILTER:progid:DXImageTransform.Microsoft.BasicImage(Rotation=3);”/>

其中 style是实现旋转的样式代码,主要是更改Rotation=3

的值,有兴趣的话读者可以自己修改该值,看看实现的效果。

第三步:发布预览文本显示效果

如下:

a4c26d1e5885305701be709a3d33442f.png

STM32驱动OLED显示屏时,如果要将屏幕内容旋转90显示,则需要从软件和硬件两个角去考虑这个问题。 ### 硬件方面 对于一些带有专用控制芯片(例如SSD1306)的OLED屏而言,在初始化设置中可能提供了旋转变换的功能位或指令。不过不是所有的显示器都支持这种直接改变方向的方式;另外一种情况是有些模块可以通过调整排线连接顺序来达到物理上的翻转效果,但这通常不常见也不推荐用于简单的参数配置需求上。 ### 软件方法 最通用的做法是在代码层面处理图像数据的方向变换: - **缓冲区交换**:创建一个额外的画面缓存数组,在往实际设备发送之前先在此临时区域绘制正常布局的内容并实施几何转换操作如旋转等。 - **坐标映射**:修改画点、写字等功能函数内部计算像素位置的部分逻辑,使得每个新输入进来的XY值都会根据一定的规则被重新定位到另一个地方后再输出给底层接口层调用。 具体实现时要注意宽互换以及边界条件检查等问题。 下面是基于`STM32 + SSD1306 IIC`简单示例演示如何让文本字符串逆时针转动90后呈现出来: ```c // 注意这里只作为概念验证,并非完整可运行程序片段 void DispChar(uint8_t x, uint8_t y,uint8_t num) { // 假设原先是按照列优先存储的数据结构 for (int i = 0; i < font_width; ++i){ for(int j=0;j<font_height;++j){ if(IsBitSet(font[num][i],7-j)){ // 检查字体阵列里的某一点是否为前景色 SetPixel(y+i,x+j); // 修改后的行与列的位置对调即可完成90旋转的效果 } } } } ``` 此外还可以利用图形库提供的更高级别的API简化上述过程中的部分步骤,比如ST官方提供的HAL库或者第三方GUI引擎均有可能内置了类似功能的支持选项。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值