为什么我的位图出现偏心(一个单元格太右下)?

Why is my bitmap appearing off-centered (one cell too far right and down)?

我有这个 EPPlus 代码可以在 Excel 电子表格的第 5/E 列第 1 行放置位图:

using (var package = new ExcelPackage(file))
{
    . . .
    AddImage(locationWorksheet, 1, 5, imgPath);
    . . .
}

private void AddImage(ExcelWorksheet oSheet, int rowIndex, int colIndex, string imagePath)
{
    Bitmap image = new Bitmap(imagePath);
    {
        var excelImage = oSheet.Drawings.AddPicture("PRO*ACT Logo", image);
        excelImage.From.Column = colIndex;
        excelImage.From.Row = rowIndex;
        excelImage.SetSize(108, 84);
    }
}

图片为 .png 文件,显示尺寸为 (108X84)。

虽然图像应该显示在第 1 行和第 5 列的交叉点,但实际上它更像是第 2 行和第 6 列:

为什么,我该如何纠正?

注意:Excel列和行索引是从 1 开始的(不是 0)。

也许 AddImage 正在寻找 row/column 的 index 而不是 row/column 编号。如果是这种情况,那么您会将 rows/columns 算作 0、1、2、3、4 等。

如果您从当前值中减去一个,您应该没问题。使用索引来引用列表或网格中的位置是相对常见的,所以我认为这是一个安全的选择。