/// <summary>
        /// 本文の改訂箇所に改訂線を引く。
        /// </summary>
        /// <param name="pos">改訂箇所</param>
        protected override void addLine(RevPos pos)
        {
            //改訂箇所のレンジを選択する。(選択しないと線が引けない。)
            pos.fRange.Select();

            //改訂線を引く。
            Word.Shapes shapes = pos.fRange.Document.Shapes;
            paintLine(pos, shapes);
        }
        /// <summary>
        /// 本文の改訂箇所に改訂線を引く。
        /// </summary>
        /// <param name="pos">改訂箇所</param>
        protected override void addLine(RevPos pos)
        {
            foreach (Word.Section wordSection in pos.fRange.Sections) {
                //改訂箇所のレンジを選択する。(選択しないと線が引けない。)
                pos.fRange.Select();

                //改訂線を引く。
                Word.Shapes shapes
                    = wordSection.Footers[Word.WdHeaderFooterIndex.wdHeaderFooterPrimary].Shapes;
                paintLine(pos, shapes);
            }
        }
예제 #3
0
        /// <summary>
        /// 指定された改訂箇所に改訂線を引く。
        /// </summary>
        /// <param name="pos">改訂箇所</param>
        /// <param name="shapes">改訂線を引くシェイプ</param>
        protected static void paintLine(RevPos pos, Word.Shapes shapes)
        {
            float left = pos.fRange.Document.PageSetup.PageWidth
                - pos.fRange.Document.PageSetup.RightMargin + 10.0F;

            //改訂線追加
            Word.Shape line
                = shapes.AddLine(left, pos.fStart.fHeight, left, pos.fEnd.fHeight);
            line.Line.ForeColor.RGB = System.Drawing.Color.Black.ToArgb();

            //改訂記号追加
            Word.Shape textBox = shapes.AddTextbox(
                Microsoft.Office.Core.MsoTextOrientation.msoTextOrientationHorizontal,
                left,
                pos.fStart.fHeight,
                20, 20);

            textBox.Line.Visible
                = Microsoft.Office.Core.MsoTriState.msoFalse;
            textBox.Fill.Visible
                = Microsoft.Office.Core.MsoTriState.msoFalse;
            textBox.TextFrame.TextRange.Text = fRevMark;
            textBox.TextFrame.TextRange.Font.ColorIndex = Word.WdColorIndex.wdBlack;
        }
예제 #4
0
 protected abstract void addLine(RevPos pos);
예제 #5
0
 public void add(RevPos pos)
 {
     fPosition.Add(pos);
 }