免費論壇 繁體 | 簡體
Sclub交友聊天~加入聊天室當版主
分享
Board logo

标题: tikz 的 line cap 与 bounding box [打印本页]

作者: kuing    时间: 2018-10-1 03:14     标题: tikz 的 line cap 与 bounding box

刚才无意中发现的。

首先,加载了 tikz 后,代码:
\fboxsep=0pt\fbox{\tikz{\draw(0,0)--(2,1);}}
效果谁都知道:
0.png
2018-10-1 03:06


但如果再画一条粗的线,比如:
\fboxsep=0pt\fbox{\tikz{\draw[line width=1cm,red](0,0)--(2,1);\draw(0,0)--(2,1);}}
效果估计你意想不到:
1.png
2018-10-1 03:06


如果将粗线的线帽(line cap)设为 rect:
\fboxsep=0pt\fbox{\tikz{\draw[line width=1cm,red,line cap=rect](0,0)--(2,1);\draw(0,0)--(2,1);}}
更加想不到:
2.png
2018-10-1 03:06


那它的边界框(bounding box)到底是根据什么得出的?

这回你应该猜得到了,因为还有一种线帽没试,那就是 round:
\fboxsep=0pt\fbox{\tikz{\draw[line width=1cm,red,line cap=round](0,0)--(2,1);\draw(0,0)--(2,1);}}
效果:
3.png
2018-10-1 03:06


换句话说,无论线帽如何,边界框总是按照 round 来算的。

所以其实最开头的那图也并不是刚好包住的。

图片附件: 0.png (2018-10-1 03:06, 1.1 KB) / 下载次数 369
http://kuing.orzweb.net/attachment.php?aid=6648&k=cb763a3418fb74deb9336b7205cf2072&t=1711699002&sid=c9I7P1



图片附件: 1.png (2018-10-1 03:06, 2.95 KB) / 下载次数 369
http://kuing.orzweb.net/attachment.php?aid=6649&k=8249e5270b6b7f4853620a04ce6dfa6b&t=1711699002&sid=c9I7P1



图片附件: 2.png (2018-10-1 03:06, 3.78 KB) / 下载次数 407
http://kuing.orzweb.net/attachment.php?aid=6650&k=3c7383e419bb4f91bf832ef6ebb6b327&t=1711699002&sid=c9I7P1



图片附件: 3.png (2018-10-1 03:06, 3.94 KB) / 下载次数 361
http://kuing.orzweb.net/attachment.php?aid=6651&k=022192d50e1671abe56e2d2a7a45ee9f&t=1711699002&sid=c9I7P1






欢迎光临 悠闲数学娱乐论坛(第2版) (http://kuing.orzweb.net/) Powered by Discuz! 7.2