奇葩的宋体bug

碰到一个奇葩问题。用户说三行文字开头两个字空格一样。但是打印预览和打印最后一行前两个字之间的空格就是隔的远些。

文字是这样的
在这里插入图片描述

打印却是下图那样的,明显病毒两个字远很多
在这里插入图片描述

开始怀疑是不是业务本身数据就多加空格了。调试了打印输出数据后发现看着是一样的。

然后怀疑是不是上面的是空格,最后那个是tab,把输出数据拷贝到notepad++显示所有字符来看确实都是两个空格。

然后怀疑是不是打印dll调用过程中数据被处理了,又到打印画字符串地方弹窗看数据串和绘制字符串参数都没问题

然后就只能相信是微软dotnet的bug了,然后试了好久,把绘制字符串api还有停靠属性看了个遍感觉还是不应该是微软bug。

最后突然想到是不是字体的问题,然后把字体从宋体换成微软雅黑试了也是一样。后面换了楷体竟然正常了。看来是字体导致的,接着试新宋体等也是正常。

那么基本定位是字体导致打印问题。那么到底是微软问题还是字体问题呢。用word用那些字也用宋体做三行打印测试,word也是那个效果。

至此基本断定是宋体绘制时候前面空格随着字符串长度变大拉宽,真是奇葩问题各种有。

word效果
在这里插入图片描述

不变的还是排查问题的思路和方式,排杂和缩小范围。

20220301 zlz

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小乌鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值