C# 如何控制Excel';位图的缩放

C# 如何控制Excel';位图的缩放,c#,excel,bitmap,C#,Excel,Bitmap,我有一个位图图像,我想把它放在excel中。我使用了我发现的代码: 但结果图像的宽度和高度是1.333的两倍。好的,我可以将尺寸乘以0.75,然后在excel中得到一张包含所需尺寸的图像 xlWorkSheet.Shapes.AddPicture("C:\\filesystem\\mb2.bmp", msoFalse, msoCTrue, 0, 0, (float)(518*0.75), (float)(390*0.75)); 但是,坐在那里硬编码的数字0.75真的让我很烦恼。特别是

我有一个位图图像,我想把它放在excel中。我使用了我发现的代码:

但结果图像的宽度和高度是
1.333
的两倍。好的,我可以将尺寸乘以
0.75
,然后在excel中得到一张包含所需尺寸的图像

xlWorkSheet.Shapes.AddPicture("C:\\filesystem\\mb2.bmp", 
    msoFalse, msoCTrue, 0, 0, (float)(518*0.75), (float)(390*0.75));
但是,坐在那里硬编码的数字
0.75
真的让我很烦恼。特别是因为我看到op的比率是
0.76
。知道此代码需要在具有不同显示的任意数量的系统上运行,我想知道如何以编程方式获取比率


这与不带代码的复制粘贴也有一定关系。

如果您谈论的是打印,则显示与此无关

图像的尺寸需要与纸张尺寸相关。
AddPicture
方法中的大小值以点为单位,仅与像素松散相关。点是对打印机有意义的测量单位。应用程序会为您将点转换为像素,因此您无需担心这一点


您可以使用
应用程序
对象的
英寸停止点
厘米停止点
方法将图像大小调整为纸张大小。

您想要相对于窗口还是相对于其显示器?它将进入一个文件,并作为数据表打印。页面的设置方式,即图像大小是我们需要的像素。看起来很有希望,我明天第一件事就是试试
xlWorkSheet.Shapes.AddPicture("C:\\filesystem\\mb2.bmp", 
    msoFalse, msoCTrue, 0, 0, (float)(518*0.75), (float)(390*0.75));