还是要用Range.Information,半真半伪代码如下: dim rng as Range dim iLeft as Integer, iTop as Integer dim sp as Shape set rng = 日期文本所在的Range iLeft = rng.Information(wdHorizontalPositionRelativeToTextBoundary) iTop = rng.Information(wdVerticalPositionRelativeToTextBoundary) iTop = iTop + 公章被日期压住部分高度 - 公章图片高度 iLeft = iLeft + 公章图片相对于日期开始点的水平相对位置 set sp = ActiveDocument.Shapes.AddPicture(公章图片路径, false,true,iLeft,iTop,公章宽度,公章高度,rng) sp.ZOrder msoSendBehindTextiTop, iLeft的计算不一定对,大概如此吧。
调整图片的top和left属性位置,让它每次都在固定的地方
//怎么把文件的尾部比如主题词、抄送、抄报等等包括几条底线,总是放在每页的最下方
在尾部文字前加空行
第二个问题是不能手动去做,主题词、抄报等等都是从页面传过去的域值啊,所以是要判断当前word的最后一页中剩余的区域是否可以放下这些内容?我想问的就是怎么判断。
问题二:只有把内容插入文档后才可以判断。伪代码:
if 文件尾起始位置的页码 <> 文件尾结束位置的页码 then
在文件尾前面加分页符
把最后一页的页面设置为垂直靠底。如:selection.PageSetup.VerticalAlignment = wdAlignVerticalBottom
else
while 文件尾起始位置的页码 = 文件尾的结束的页码
在文件尾起始位置前加空行
wend
在文件尾起始位置前删除一空行
end if要取得一定位置的页码,可以用Range对象的Information函数,如:
myRange.Information(wdActiveEndPageNumber)
公章图片要求被日期压住底部但不可压住红五星(就是压住一点就行)。
多谢各位伸手襄助啊,尤其是techgopher(你的Delphi我永远不懂,我也无法把VC看个清楚) ,感激涕零!
dim rng as Range
dim iLeft as Integer, iTop as Integer
dim sp as Shape
set rng = 日期文本所在的Range
iLeft = rng.Information(wdHorizontalPositionRelativeToTextBoundary)
iTop = rng.Information(wdVerticalPositionRelativeToTextBoundary)
iTop = iTop + 公章被日期压住部分高度 - 公章图片高度
iLeft = iLeft + 公章图片相对于日期开始点的水平相对位置
set sp = ActiveDocument.Shapes.AddPicture(公章图片路径, false,true,iLeft,iTop,公章宽度,公章高度,rng)
sp.ZOrder msoSendBehindTextiTop, iLeft的计算不一定对,大概如此吧。