如果我没有说清楚,请原谅,但是我会尽力把事情说清楚
我正在尝试翻转图像,因为它是 Web 应用程序,我选择 css 变换矩阵来执行此翻转并尝试了以下代码片段,它可以正常工作,但定位有问题
svgCanvas.changeSelectedAttribute("transform","matrix(-1, 0, 0, 1, 0, 0)"); // Consider svgCanvas as element
翻转前
翻转后
这样做并没有保持与您在图像中看到的相同的位置。我做得对吗?
更新问题
在第一次翻转中,它按照您的建议工作,但与下一次翻转不同。我对所有翻转都应用了相同的 MX = Left + Width/2
。
第一次翻转后
第二次翻转后
最佳答案
您的变换矩阵用于垂直线 X = 0 的镜像,因此坐标变为负值。
我认为你需要围绕中间线 MX = Left + Width/2
进行镜像,所以你的矩阵应该看起来像 matrix(-1, 0, 0, 1, 2 * MX, 0)
关于javascript - css 变换矩阵图像不保持相同的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39383341/