labview matlab有bug,matlab的一个bug

因为作图需要,我要用matlab写出带描边的字。之前发微博求助,兔子给了个思路——往上下左右各平移一点(例如一像素)铺底色、再在中心写正文,一个路过的高手转发了别人写的一个函数,名叫textborder,思路跟兔子给的是一样的。我下载这代码之后,测试了一下,很漂亮。然后我拿来画自己的图,却不知为什么只有加粗的border_color的本应垫底的字(下文称border),却没有text_color的主体(下文称text)。

然后苦苦测试了两小时,大概试了三十种改法。最后得出的结论是——matlab有bug。(前提可能是像我这种被缩放过的图,即以像素为单位和以数据为单位的坐标轴刻度比不一致,)只要把句柄中position的units属性改成像素,铺完border后再铺text的话,text就显示不出来了。即先写的border在最顶层,后面写的text反而在底层。而units的单位是默认的data的时候,则没有这个问题,即后写的text覆盖在之前写的border之上,但是data的比例和像素比例不一致时画出来是变形的,不好看。除此之外units还有别的选项,没心情去一一测试了。

最后终于发现了解决方法:铺完border后,再铺text,这时text是不显示的。但是这时用句柄把text的position移一下,它就神奇地出现了!所以,只要先把text往任意地方移一下,再移回原位,就解决了。

不过没什么解决了问题的愉快感,只是郁闷这个坑爹的bug害我浪费了两个多小时,并且导致我之前卡壳。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值