如何在Word文档中插入Image对象作为图片

Sys*_*ect 5 vb.net vb6 ms-word image

所以我有这个功能,我生成并返回我的图像(.bmp格式).我想把它写成word文档.我看了,InlineShapes.AddPicture但它只需要一个string参数,这需要我物理保存图片,然后将图片的路径作为参数添加到AddPicture,我不想要.我想生成pic并直接存储它,而我需要一个带Image参数的方法.

PS创建Word文档,表格,决定将图片放入哪个单元格并完成所有这些工作,我只需要插入图片.

这是生成图片的代码,因此您可以看到我只将其作为对象,但不要将其存储在物理上的任何位置.这是在C#中,但是我想用Word文档操作,我用VB.NET编写.

Bitmap picture = new Bitmap(100, 100);

        // generates a QRcode image and returns it
        public Image generateQRcodeImage(string textValue)
        {
            QrEncoder encoder = new QrEncoder(ErrorCorrectionLevel.M);
            QrCode qrCode;
            encoder.TryEncode(textValue, out qrCode);

            using (Graphics graph = Graphics.FromImage(picture))
            {
                new GraphicsRenderer(new FixedCodeSize(100, QuietZoneModules.Two)).Draw(graph, qrCode.Matrix);
            }

            return picture;
        }
Run Code Online (Sandbox Code Playgroud)

Mil*_*iez 4

如果你已经设置了Word文档的创建和打开,并且根据你提供的功能,我想你唯一要做的就是:

    Dim rng As Word.Range = oDoc.Range(int1, int2)

    Dim img As Image = qrGen.generateQRcodeImage("desiredInfoToEncloseInQRcode")
    Clipboard.SetImage(img)
    rng.Paste()
Run Code Online (Sandbox Code Playgroud)

其中qrGen当然是实现该generateQRcodeImage()函数的类的对象。您还必须将此代码放在您想要在Word文档中排列的位置(表格/单元格/等)

  • 我也可能会在最后清除剪贴板;留下自动化活动的中间产物是不礼貌的。 (2认同)