VintaSoft Imaging .NET SDK 14.0: Документация для .NET разработчика
Vintasoft.Imaging.Office.OpenXml.Editor Namespace / OpenXmlDocumentImage Class
Члены типа Объект Синтаксис Example Иерархия Требования Смотрите также
В этом разделе
    Класс OpenXmlDocumentImage
    В этом разделе
    Представляет изображение документа Open XML.
    Объектная модель
    OpenXmlDrawingObjectProperties Hyperlink SheetDrawingLocation OpenXmlDocumentElement OpenXmlDocumentElement OpenXmlDocumentElement OpenXmlDocumentElement OpenXmlDocumentElementCollection OpenXmlDocumentRootElement OpenXmlDocumentImage
    Синтаксис
    'Declaration
    
    <DefaultMemberAttribute("Item")>
    Public Class OpenXmlDocumentImage
       Inherits OpenXmlDocumentGraphics
    
    
    [DefaultMember("Item")]
    public class OpenXmlDocumentImage : OpenXmlDocumentGraphics
    
    
    [DefaultMember("Item")]
    public __gc class OpenXmlDocumentImage : public OpenXmlDocumentGraphics*
    
    
    [DefaultMember("Item")]
    public ref class OpenXmlDocumentImage : public OpenXmlDocumentGraphics^
    
    
    Пример

    Вот C#/VB.NET код, который демонстрирует, как установить изображение штрих-кода в документе DOCX (пример использует документ-шаблон).SetBarcodeImage_template.docx):

    
    Public Shared Sub DocxSetBarcodeImageExample()
        Dim templateFilename As String = "SetBarcodeImage_template.docx"
        Dim outFilename As String = "SetBarcodeImage.docx"
        Dim outPdfFilename As String = "SetBarcodeImage.pdf"
    
        ' create DocxDocumentEditor that allows to edit file "SetBarcodeImage_template.docx"
        Using editor As New Vintasoft.Imaging.Office.OpenXml.Editor.Docx.DocxDocumentEditor(templateFilename)
            ' get document body
            Dim documentBody As Vintasoft.Imaging.Office.OpenXml.Editor.OpenXmlDocumentElement = editor.Body
    
            ' find text content "Invoice number:"
            Dim textContent As Vintasoft.Imaging.Office.OpenXml.Editor.OpenXmlTextContent = documentBody.FindText("Invoice number:")
    
            ' get barcode value as text of next paragraph after "Invoice number:"
            Dim barcodeValue As String = textContent.FindAfter(Of Vintasoft.Imaging.Office.OpenXml.Editor.OpenXmlDocumentParagraph)().Text
            barcodeValue = barcodeValue.TrimEnd(ControlChars.Lf)
    
            ' create and setup barcode generator
            Dim barcodeGenerator As New Vintasoft.Barcode.BarcodeWriter()
            barcodeGenerator.Settings.Barcode = Vintasoft.Barcode.BarcodeType.QR
            barcodeGenerator.Settings.SetWidth(200)
            barcodeGenerator.Settings.Value = barcodeValue
    
            ' generate barcode image
            Using barcodeImage As New Vintasoft.Imaging.VintasoftImage(barcodeGenerator.GetBarcodeAsVintasoftBitmap(), True)
                ' crop barcode to rectangular image
                barcodeImage.Crop(New System.Drawing.Rectangle(0, 0, barcodeImage.Width, barcodeImage.Width))
    
                ' set barcode image to DOCX image at index 0
                editor.Images(0).SetImage(barcodeImage)
            End Using
    
            ' save changed document to a DOCX file
            editor.Save(outFilename)
    
            ' export changed document to a PDF document
            editor.Export(outPdfFilename)
        End Using
    End Sub
    
    
    
    public static void DocxSetBarcodeImageExample()
    {
        string templateFilename = "SetBarcodeImage_template.docx";
        string outFilename = "SetBarcodeImage.docx";
        string outPdfFilename = "SetBarcodeImage.pdf";
    
        // create DocxDocumentEditor that allows to edit file "SetBarcodeImage_template.docx"
        using (Vintasoft.Imaging.Office.OpenXml.Editor.Docx.DocxDocumentEditor editor =
            new Vintasoft.Imaging.Office.OpenXml.Editor.Docx.DocxDocumentEditor(templateFilename))
        {
            // get document body
            Vintasoft.Imaging.Office.OpenXml.Editor.OpenXmlDocumentElement documentBody = editor.Body;
    
            // find text content "Invoice number:"
            Vintasoft.Imaging.Office.OpenXml.Editor.OpenXmlTextContent textContent = documentBody.FindText("Invoice number:");
    
            // get barcode value as text of next paragraph after "Invoice number:"
            string barcodeValue = textContent.FindAfter<Vintasoft.Imaging.Office.OpenXml.Editor.OpenXmlDocumentParagraph>().Text;
            barcodeValue = barcodeValue.TrimEnd('\n');
    
            // create and setup barcode generator
            Vintasoft.Barcode.BarcodeWriter barcodeGenerator = new Vintasoft.Barcode.BarcodeWriter();
            barcodeGenerator.Settings.Barcode = Vintasoft.Barcode.BarcodeType.QR;
            barcodeGenerator.Settings.SetWidth(200);
            barcodeGenerator.Settings.Value = barcodeValue;
    
            // generate barcode image
            using (Vintasoft.Imaging.VintasoftImage barcodeImage = 
                new Vintasoft.Imaging.VintasoftImage(barcodeGenerator.GetBarcodeAsVintasoftBitmap(), true))
            {
                // crop barcode to rectangular image
                barcodeImage.Crop(new System.Drawing.Rectangle(0, 0, barcodeImage.Width, barcodeImage.Width));
    
                // set barcode image to DOCX image at index 0
                editor.Images[0].SetImage(barcodeImage);
            }
    
            // save changed document to a DOCX file
            editor.Save(outFilename);
    
            // export changed document to a PDF document
            editor.Export(outPdfFilename);
        }
    }
    
    

    Иерархия наследования

    System.Object
       Vintasoft.Imaging.Office.OpenXml.Editor.OpenXmlDocumentElement
          Vintasoft.Imaging.Office.OpenXml.Editor.OpenXmlDocumentGraphics
             Vintasoft.Imaging.Office.OpenXml.Editor.OpenXmlDocumentImage

    Требования

    Целевые платформы: .NET 8; .NET 7; .NET 6; .NET Framework 4.8, 4.7, 4.6, 4.5, 4.0, 3.5

    Смотрите также