首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Python svgwrite中右对齐文本

在Python svgwrite中右对齐文本
EN

Stack Overflow用户
提问于 2020-12-03 03:53:24
回答 1查看 338关注 0票数 0

我正在尝试旋转文本,这部分工作正常,但我希望它右对齐,而不是左对齐。换句话说,我希望文本在我计算的圆的周长上结束,而不是开始。这段代码绘制了一个有365个刻度的圆圈,每隔7天画一个更长的刻度,每个第7天的数字都刻在刻度标记的圆圈内。

我的代码是这样做的:

我想要的是:

代码语言:javascript
复制
import math
import svgwrite

radius_inner = 200
radius_width = 40
radius_outer = radius_inner + radius_width
week_line_start = 10
day_line_start = 16
line_end = 10
day_font_size=15
days = 365

dwg = svgwrite.Drawing('YearWheel.svg')

for i in range(0,days):
    angle = (math.pi*2 / days) * i
    if i % 7 == 0:
        startr = week_line_start
    else:
        startr = day_line_start
    startx = math.sin(angle) * (radius_inner + startr)
    endx   = math.sin(angle) * (radius_outer - line_end)
    starty = -math.cos(angle) * (radius_inner + startr)
    endy   = -math.cos(angle) * (radius_outer - line_end)
    print("({},{}),({},{})".format(startx,starty,endx,endy))
    dwg.add(dwg.line((startx,starty), (endx,endy), stroke=svgwrite.rgb(10, 10, 16, '%')))
    if i > 0 and i % 7 == 0:
        rot = 'rotate({},{}, {})'.format(math.degrees(angle)-90,startx,starty)
        dwg.add(dwg.text("{}".format(i), insert=(startx,starty), transform=rot, font_size='{}px'.format(day_font_size)))

dwg.save()

我尝试将,style="text-align:end"添加到text()调用中(我在stackoverflow中的其他地方看到过),但这没有什么区别。

理想情况下,我希望数字居中“垂直”的线条以及。

我最初的帖子报告说style元素导致了一个错误。这是因为我的一个版本的代码在svgwrite.Drawing构造函数中具有, profile='tiny'

EN

回答 1

Stack Overflow用户

发布于 2020-12-03 04:39:42

我已经修复了右对齐,并绕过了居中:

代码语言:javascript
复制
    dwg.add( dwg.text( "{}".format(i)
                     , insert=(startx,starty)
                     , transform=rot
                     , style="text-anchor:end;baseline-shift:-33%"
                     , font_size="{}px".format(day_font_size)
                     ) )

我要找的风格元素不是text-align,而是text-anchor

-33%左右的baseline-shift给我以中心为中心的外观,这对我来说已经足够好了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65115203

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档