如果word中一个表格占据了几页,如何在其中的几页插入shape并正常显示?

各位好:
我现在遇到了一个问题,我想要在word的某几页插入图片,使用的方法是定位到那一页的Paragraph,然后在那一页生成shape并且添加到Paragraph,但现在的问题是可能需要插入图片的那一页是一个table的一部分,因为这个table很长,占据了好几页,不管我使用Paragraph.AppendChild方法还是builder.InsertNode方法始终都无法正常显示图片,因为那一页的Paragraph都是在cell中,我把shape的属性设为
shape.IsLayoutInCell = false;
shape.ZOrder = 999999;
shape.BehindText = false;
也没有效果,求大神们帮忙,非常感谢!!!

以下是我的测试代码

 static void TestAsposeWord2()
 {
     var fileName = "333.docx";
     var saveFile = $"dist{DateTime.Now:yyyyMMddHHmmss}.docx";
     var license = new License();
     license.SetLicense("Aspose.Words.NET.lic");
     Console.WriteLine("License set successfully.");
     var doc = new Document(fileName);
     var builder = new DocumentBuilder(doc);
     var targetPage = new List<int> { 1, 2, 3, 4 };
     var imageName = "dianzizhang.png";

     var layoutCollector = new LayoutCollector(doc);
     List<Node> mainBodyParagraphs = doc.GetChildNodes(NodeType.Paragraph, true).ToList();
     foreach (Paragraph node in mainBodyParagraphs)
     {
         int paraPage = layoutCollector.GetStartPageIndex(node);
         if (targetPage.Contains(paraPage))
         {
             Shape qrShape = new Shape(doc, ShapeType.Image);
             qrShape.IsLayoutInCell = false;
             qrShape.ZOrder = 999999;
             qrShape.BehindText = false;
             qrShape.ImageData.SetImage($"images\\{imageName}");
           //  var imageHeight = 500;
           //  var imageWidth = (double)qrShape.ImageData.ImageSize.WidthPixels / qrShape.ImageData.ImageSize.HeightPixels * imageHeight;
             qrShape.Left = 0;
             qrShape.Top = 0;
             if (node.IsInCell)
             {
                 Console.WriteLine(node.ParentNode.ParentNode.GetText());
             }
             builder.MoveTo(node);
             builder.InsertNode(qrShape);
             targetPage.Remove(paraPage);
         }
     }
     doc.Save(saveFile);
 }

@teriusstar 请在此处附上您用于测试的.docx文件,如果可能的话,请附上具有预期结果的文件。

333.docx (21.4 KB)

我希望在第二页(这一页是一个长表的一部分)最右侧插入一个签章图片,但我现在还没办法做到,非常感谢您的支持!!

@teriusstar 我认为在这种情况下,你需要在你需要的地方创建一个书签,并在书签处插入图像,如下所示:

builder.MoveToBookmark("bookmarkName");
builder.InsertImage(ImagePath);

Hi:
因为我必须要在页面的最右侧插入图片,而书签并不能定位到那个位置,所以无法使用此方法,我试了好几种方法都不行,难道某一页属于表格的一部分不能通过创建shape并定位坐标来插入图片?

@teriusstar 请使用MS Word创建一个带有此类图像的示例文件,并将文件附在此处。我不明白“极右翼”是什么意思。它在桌子的右下角还是右上角?也许翻译中有错误。图像需要位于桌子内部还是桌子上方?或者您应该使用页眉/页脚插入签名图像?