Articles in this section
Category / Section

How to retrieve the URL from an INCLUDEPICTURE field in a Word document

4 mins read

Syncfusion Essential DocIO is a .NET Word library used to create, read, edit, and convert Word documents programmatically without Microsoft Word or interop dependencies. Using this library, you can retrieve the URL from an INCLUDEPICTURE field in a Word document using C#.

Steps to retrieve the URL from an INCLUDEPICTURE field in a Word document:

  1. Create a new .NET Core console application project. Create console application in Visual Studio
  2. Install the Syncfusion.DocIO.Net.Core NuGet package as a reference to your project from NuGet.org.
    Add DocIO NuGet package reference to the project

Starting with v16.2.0.x, if you reference Syncfusion assemblies from trial setup or from the NuGet feed, include a license key in your projects. Refer to the link to learn about generating and registering a Syncfusion license key in your application to use the components without trail message.

  1. Include the following namespaces in Program.cs file
    C#
using Syncfusion.DocIO.DLS;
using Syncfusion.DocIO;
using System.Collections.Generic;
using System;
using System.IO; 
  1. Use the following code example to retrieve the URL from an INCLUDEPICTURE field in a Word document.
    C#
using (FileStream fileStreamPath = new FileStream(Path.GetFullPath(@"Data/Input.docx"), FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
{
   //Open an existing Word document into DocIO instance.
   using (WordDocument document = new WordDocument(fileStreamPath, FormatType.Docx))
   {
       //Find all INCLUDEPICTURE fields in the Word document based on field type.
       List<Entity> IncludePictureFields = document.FindAllItemsByProperty(EntityType.Field, "FieldType", "FieldIncludePicture");
       //List to store extracted URLs.
       List<string> urls = new List<string>();
       //Iterate through all INCLUDEPICTURE fields found in the document.
       foreach (WField field in IncludePictureFields)
       {
           //Extract the field code.
           string fieldCode = field.FieldCode;
           //The field code is in the format: INCLUDEPICTURE "URL"
           //Extract the URL between the quotes.
           string url = ExtractUrlFromFieldCode(fieldCode);
           //Add the URL to the list.
           urls.Add(url);
       }
       //Print all URLs at the end.
       Console.WriteLine("INCLUDEPICTURE URLs:");
       foreach (string url in urls)
       {
           Console.WriteLine(url);
       }
   }
}
  1. Use the following helper method to extract the URL from the INCLUDEPICTURE field code.
    C#
/// <summary>
/// Extract the URL from the given INCLUDEPICTURE field code.
/// </summary>
static string ExtractUrlFromFieldCode(string fieldCode)
{
   string url = string.Empty;
   //Find the starting index of the URL (after the first quote).
   int startIndex = fieldCode.IndexOf('"') + 1;
   //Find the ending index of the URL (before the last quote).
   int endIndex = fieldCode.LastIndexOf('"');
   //Ensure valid indices and extract the URL if valid.
   if (startIndex > 0 && endIndex > startIndex)
   {
       url = fieldCode.Substring(startIndex, endIndex - startIndex);
   }
   return url;
}

You can download a complete working sample to retrieve the URL from an INCLUDEPICTURE field in a Word document from the GitHub.

By executing the program, you will get the output as follows.

Output Word document

Take a moment to peruse the documentation where you can find basic Word document processing options along with the features like mail merge, merge, split, and compare Word documents, find and replace text in the Word document, protect the Word documents, and most importantly, the PDF and Image conversions with code examples.

Conclusion

I hope you enjoyed learning how to replace the table cell content in .NET Core Word document.

You can refer to our ASP.NET Core DocIO feature tour page to know about its other groundbreaking feature representations and documentation, and how to quickly get started for configuration specifications. You can also explore our ASP.NET Core DocIO example to understand how to create and manipulate data.

For current customers, you can check out our components from the License and Downloads page. If you are new to Syncfusion, you can try our 30-day free trial to check out our other controls.

If you have any queries or require clarifications, please let us know in the comments section below. You can also contact us through our support forums, Direct-Trac, or feedback portal. We are always happy to assist you!

Did you find this information helpful?
Yes
No
Help us improve this page
Please provide feedback or comments
Comments (0)
Please  to leave a comment
Access denied
Access denied