如何解决VSTO自动添加的水印变得失真了,C#VSTO
我都是VSTO和c#的新手, 我正在尝试通过VSTO自动化在Word文档中添加水印。 我可以添加水印,但是在添加一些文本后,水印变得失真了(高度在减小)
This is a distorted image 有点模糊,对此感到抱歉。
让我知道您是否需要任何信息
预先感谢 下面是我的代码
foreach (Word.Section section in doc.Sections)
{
Object oMissing = System.Reflection.Missing.Value;
Word.Shape shape =
section.Headers[Word.WdheaderfooterIndex.wdheaderfooterPrimary].Shapes
.AddTextEffect(MsoPresetTextEffect.msoTextEffect2,"confidential","Calibri",5,MsoTriState.msoTrue,MsoTriState.msoFalse,ref oMissing);
//shape.Select(ref oMissing);
shape.Name = "WaterMark";
shape.Line.Visible = MsoTriState.msoFalse;
shape.TextEffect.normalizedHeight = MsoTriState.msoFalse;
shape.TextEffect.FontItalic = MsoTriState.msoFalse;
shape.TextEffect.FontBold = MsoTriState.msoFalse;
shape.Fill.Visible = MsoTriState.msoTrue;
shape.Fill.solid();
shape.Fill.ForeColor.RGB = 12632256;
shape.Fill.Transparency = (float)0.5;
shape.Rotation = 315;
shape.LockAspectRatio = MsoTriState.msoTrue;
shape.Left = (float)Word.WdShapePosition.wdShapeCenter;
shape.LeftRelative = (float)-999999;
shape.Top = (float)Word.WdShapePosition.wdShapeCenter;
shape.TopRelative = (float)-999999;
shape.Height = Globals.ThisAddIn.Application.CentimetersToPoints((float)3.65);
shape.Width = Globals.ThisAddIn.Application.CentimetersToPoints((float)12.62);
shape.Wrapformat.Type = Word.WdWrapType.wdWrapBehind;
shape.Wrapformat.AllowOverlap = -1;
shape.Wrapformat.distanceBottom = 0;
shape.Wrapformat.distanceLeft = 9;
shape.Wrapformat.distanceRight = 9;
shape.Wrapformat.distancetop = 0;
shape.Wrapformat.Side = WdWrapSideType.wdWrapBoth;
shape.RelativeVerticalPosition = Word.WdRelativeVerticalPosition.wdRelativeVerticalPositionMargin;
shape.RelativeHorizontalPosition = Word.WdRelativeHorizontalPosition.wdRelativeHorizontalPositionMargin;
shape.WidthRelative = (float)-999999;
doc.ActiveWindow.ActivePane.View.SeekView = Word.WdSeekView.wdSeekMainDocument;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。