703
社区成员
发帖
与我相关
我的任务
分享
typedef enum MsoTriState
{
msoTrue = 0xFFFFFFFF,
msoFalse = 0,
msoCTrue = 1,
msoTriStateToggle = 0xFFFFFFFD,
msoTriStateMixed = 0xFFFFFFFE
} MsoTriState;
bool SetWordPicSize(Variant vSel,const unsigned int uWidth, const unsigned int uHeight, bool bKeepRatio)
{
Variant vShape;
if((uWidth!=0 && uHeight!=0 && bKeepRatio) || (uWidth==0 && uHeight==0)) return false;
vSel.OleProcedure("MoveLeft");
vSel.OleProcedure("MoveRight",
1, // Unit:=wdCharacter,
1, // Count:=1,
1 // Extend:=wdExtend
);
if (int(vSel.OlePropertyGet("Range").OlePropertyGet("InlineShapes").OlePropertyGet("Count"))>0)
{
// 获取到这个图像
vShape=vSel.OlePropertyGet("Range").OlePropertyGet("InlineShapes").OleFunction("item",1);
// 更改其高度和宽度
if(bKeepRatio)
{
// 按比例缩放
vShape.OlePropertySet("LockAspectRatio",0xFFFFFFFF); // msoTrue
if(uWidth==0) vShape.OlePropertySet("Height",uHeight);
else vShape.OlePropertySet("Width",uWidth);
}
else
{
// 不按比例缩放
vShape.OlePropertySet("LockAspectRatio",0); // msoFalse
vShape.OlePropertySet("Height",uHeight);
vShape.OlePropertySet("Width",uWidth);
}
}
else return false;
return true;
}