图像/形状显示不正确 VBA Excel

问题描述

我有一个非常简单的代码来将图像与单元格 M2 对齐。

Dim picNameDefault as String
picNameDefault = "ProcessingDocument"
Dim img As Shape
Set img = ActiveSheet.Shapes(picNameDefault)
img.Top = Range("M2").Top
img.Left = Range("M2").Left
Debug.Print img.Top
Debug.Print img.Left
Debug.Print Range("M2").Top
Debug.Print Range("M2").Left

所有位置(最后 Debug.Print 4 行)似乎都是正确的(顶部 = 顶部,左侧 = 左侧)。然而,在工作表中,图片移动如所附图片(第一个是之前,第二个是在运行代码之后)。这是一个文档录入界面,要移动的图片就是要抠像的文档。我不知道其他时候发生了什么,它工作正常。

Before running code

After running code

解决方法

请尝试下一个方法。它专为经典旋转而设计,如您所说(旋转角度:0、90、270、180):

import dbConnect from "../../../utils/dbConnect";
import Worker from "../../../models/Worker";

dbConnect();

export default async (req,res) => {
   const { method } = req;

   switch (method) {
      case "GET":
         try {
            const workers = await Worker.find({});

            res.status(200).json({ success: true,data: workers });
         } catch (error) {
            res.status(400).json({ success: false });
         }
         break;

     case "POST":
        try {
          const worker = await Worker.create(req.body);

          res.status(201).json({ success: true,data: worker });
        } catch (error) {
          res.status(400).json({ success: false });
        }
        break;

     default:
        res.status(400).json({ success: false });
        break;
  }
};

如果(portret)图像的高度和宽度之间存在很大差异,则靠近工作表顶部的行的顶部定位将是错误的。