【问题标题】:How to set the text font before rendering text elements?如何在渲染文本元素之前设置文本字体?
【发布时间】:2019-02-20 15:00:00
【问题描述】:

我无法将文本元素放置在某个位置。根据this issue,添加文本元素后更改字体会使定位更加困难。

在我看来,如果我可以在调用 draw.text() 之前设置字体,定位将是正确的。

我可以这样做吗?怎么样?

提前致谢。

更新:当我创建 CodeSandBox 以改进我的问题时,我发现了一些奇怪的东西。看看吧:

我创建了一个与图像一样大的矩形,另一个矩形在每个边缘上小 20px,并将其放在另一个矩形内,一个文本元素向下移动了 20px。

它应该与内部rect 对齐。但是,通过检查,可以看出它向下移动了不到 20px。奇怪的是,当movex 参数改变时,它会垂直移动并捕捉到正确的位置!但是,当重新加载预览时,y 位置会恢复到错误的位置。

不过,它给了我一个想法……

【问题讨论】:

    标签: reactjs svg.js


    【解决方案1】:

    我找到了一种解决方法,但我不确定它是否可靠。

    draw.text('Hello, World!')
        .font({ family: 'font-print', size: 20 })
        .move(0, 0).dy(20).dx(60);
    

    它在我共享的 CodeSandBox 中不起作用,但它在我正在处理的实际项目中起作用。至少目前是这样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-27
      • 2015-04-26
      • 1970-01-01
      • 2021-12-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-05
      相关资源
      最近更新 更多