旋转svg字体字母组,然后将每个字母x/y移动

旋转svg字体字母组,然后将每个字母x/y移动,svg,Svg,我正在创建一个web应用程序,允许用户通过旋转/调整大小/移动一些svg字母来使用字体。在这之前一切都很顺利 我还想让用户能够围绕一个共同的中心(组的中心)一次旋转所有字母,这是一个问题,因为在我进行旋转后,如果我尝试单独移动每个字母,它不再垂直或水平移动,而是根据组的旋转量成对角线移动 有没有办法旋转这组字母并保留在标准x/y轴上移动每个字母的能力?我认为理想情况下,您必须将其分解为一些工作代码,就像在JSFIDLE中一样。听起来你可能想研究矩阵,getCTM,getScreenCTM,并解释

我正在创建一个web应用程序,允许用户通过旋转/调整大小/移动一些svg字母来使用字体。在这之前一切都很顺利

我还想让用户能够围绕一个共同的中心(组的中心)一次旋转所有字母,这是一个问题,因为在我进行旋转后,如果我尝试单独移动每个字母,它不再垂直或水平移动,而是根据组的旋转量成对角线移动


有没有办法旋转这组字母并保留在标准x/y轴上移动每个字母的能力?

我认为理想情况下,您必须将其分解为一些工作代码,就像在JSFIDLE中一样。听起来你可能想研究矩阵,getCTM,getScreenCTM,并解释可能存在的转换,也许是一个逆变换?感谢你的回答@Ian,我准备了一个js提琴来测试:jsfiddle.net/fZssT/18我删除了所有不必要的代码,显然,这是最低限度的。在确定的情况下,组应围绕其中心旋转,但最重要的是,旋转组后,字母应朝着正确的方向移动。我认为,实现这一点的唯一方法是使每个字母在其变换中独立。组本质上是伪组,用户将实际转换他们认为是“组”的每个字母。此外,正如Ian上面提到的,您应该使用矩阵转换,而不是转换字符串。这个建议对你来说可能吗?我正在试图弄清楚如何使用在前面的评论中写的函数,希望很快会用好消息更新这个线程,目前我还不知道,尽管我读了几乎所有关于矩阵变换的文档