如何向EPPlus的ExcelPicture.SetPosition传递浮点/十进制值?
解决EPPlus插入图片时设置浮点位置的问题
直接通过ExcelPicture的Top和Left属性设置即可,这两个属性支持double类型的浮点/十进制值,可替代仅接受整数的SetPosition方法。
示例代码
// 定义浮点类型的位置值(单位:点,若为像素需转换) double top = 100.10; double left = 200.20; ExcelPicture pic = ws1.Drawings.AddPicture(DataList4.label[i] + i, stream); // 替换SetPosition,直接赋值Top和Left属性 pic.Top = top; pic.Left = left;
注意事项
- 如果你的浮点值是像素单位,需要先转换为Excel的**点(Point)**单位,转换公式:
点值 = 像素值 * 0.75(因为1英寸=96像素=72点,1像素=0.75点)。比如100.10像素转换后是100.10 * 0.75 = 75.075点。 Top和Left属性对应图片左上角相对于工作表左上角的偏移量,逻辑和SetPosition一致,但精度更高。
内容的提问来源于stack exchange,提问作者rock
相关产品推荐
相关产品推荐

