这是一个小麻烦,因为我需要实现我自己的接口,该接口具有WordApp和PowerpointApp类,它实现了一个具有PointsToPixels()方法的接口。
WordApp类已经存在,因为我可以使用_Application上的方法来获取它: http://msdn.microsoft.com/en-us/library/office/microsoft.office.interop.word._application.pointstopixels(v=office.11).aspx
我想保持代码干净并实现PowerpointApp.PointsToPixels()......但令我意外的是,Powerpoint的“_Application”类没有它。
我能看到的另一种方法是使用WinForm上的CreateGraphics()方法 - 此时我还没有。
从长远来看,我或许可以解决这个问题,但是知道Powerpoint不打球的原因是多么好。似乎很难没有充分的理由。
答案 0 :(得分:1)
在PPT中,它被称为PointsToScreenPixels。 PPT VBA帮助中的示例:
With ActiveWindow
myXparm = .PointsToScreenPixelsX _
(.Selection.TextRange.BoundWidth)
myYparm = .PointsToScreenPixelsY _
(.Selection.TextRange.BoundHeight)
End With
假设选定的形状包含文本。结果有点难以理解。
仅假设选定形状的更简单示例:
Debug.Print ActiveWindow.PointsToScreenPixelsY(ActiveWindow.Selection.ShapeRange(1).Top)