Test in production without watermarks.
Works wherever you need it to.
Get 30 days of fully functional product.
Have it up and running in minutes.
Full access to our support engineering team during your product trial
This guide focuses on how to insert PDF files into Microsoft Word documents using the "Insert Object" feature of Microsoft Word. This method preserves the original document formatting while allowing access directly from within Word. We'll walk through the process step-by-step, discuss its advantages and limitations, and discuss alternative approaches for specific use cases.
At the end of the article, we'll briefly introduce the IronWord and IronPDF libraries for developers seeking programmatic solutions. These tools offer advanced capabilities for PDF and Word document-related operations. Let's understand how to add a PDF to your Word document as an embedded object.
To add a PDF as an object in your Word document, follow these steps:
Let's examine each step in detail:
The Object insert feature is in the Insert tab, which contains various tools for adding content to your document. The Object button is typically found in the Text group alongside other insertion options.
The "Create from File" tab in the Object dialog box allows you to insert existing files. Here, you'll select your PDF file for insertion.
Use the Browse button to navigate your file system and select the desired PDF. Word supports various file types, but this guide focuses on PDF files.
Two checkboxes provide additional control over how the PDF is inserted:
After clicking OK, it will insert the PDF into a Word document as an embedded object.
There is also an approach to converting PDF into Word using Adobe Acrobat and then inserting it into the Word document. In this way, the user will see the content directly.
While IronPDF and IronWord don't directly support inserting PDFs into Word documents, they offer powerful PDF and Word document processing capabilities that can be valuable in workflows involving both formats.
IronPDF is a PDF library designed for .NET developers. It allows users to create, edit, and manipulate PDFs directly from C#, F#, or VB.NET code. The library supports rendering PDFs from HTML, URL strings, and raw HTML files. It also includes password protection, digital signatures, annotations, and text extraction. With support for various .NET environments (including .NET Core, Framework, and Standard), IronPDF is compatible with Windows, Linux, macOS, and containerized environments like Docker.
It also includes support for PDF/A compliance, making it suitable for archiving and legal use cases. Advanced features include HTML/CSS integration, customizable page settings, and options for embedding multimedia elements like images and JavaScript into the PDF.
using IronPdf;
const string htmlWithJavaScript = @"
<h2>New HTML Content</h2>
<script>
document.write('<p>This text is generated by JavaScript</p>');
window.ironpdf.notifyRender();
</script>";
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
// Adjusted the JavaScript wait time
renderer.RenderingOptions.WaitFor.RenderDelay = 150;
// Renders the HTML as a PDF including the JavaScript-generated content
var pdfWithJavaScript = renderer.RenderHtmlAsPdf(htmlWithJavaScript);
// Saves the generated PDF on disk
pdfWithJavaScript.SaveAs("javascript-in-html-v2.pdf");
using IronPdf;
const string htmlWithJavaScript = @"
<h2>New HTML Content</h2>
<script>
document.write('<p>This text is generated by JavaScript</p>');
window.ironpdf.notifyRender();
</script>";
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
// Adjusted the JavaScript wait time
renderer.RenderingOptions.WaitFor.RenderDelay = 150;
// Renders the HTML as a PDF including the JavaScript-generated content
var pdfWithJavaScript = renderer.RenderHtmlAsPdf(htmlWithJavaScript);
// Saves the generated PDF on disk
pdfWithJavaScript.SaveAs("javascript-in-html-v2.pdf");
Imports IronPdf
Private Const htmlWithJavaScript As String = "
<h2>New HTML Content</h2>
<script>
document.write('<p>This text is generated by JavaScript</p>');
window.ironpdf.notifyRender();
</script>"
Private renderer = New ChromePdfRenderer()
renderer.RenderingOptions.EnableJavaScript = True
' Adjusted the JavaScript wait time
renderer.RenderingOptions.WaitFor.RenderDelay = 150
' Renders the HTML as a PDF including the JavaScript-generated content
Dim pdfWithJavaScript = renderer.RenderHtmlAsPdf(htmlWithJavaScript)
' Saves the generated PDF on disk
pdfWithJavaScript.SaveAs("javascript-in-html-v2.pdf")
IronWord is another library from the Iron Software suite focused on working with Microsoft Word documents (DOCX). It provides a straightforward API to programmatically create, read, and edit Word documents using .NET languages. Like IronPDF, IronWord integrates seamlessly with other libraries and offers a range of document manipulation capabilities, such as modifying text, tables, and images within DOCX files.
The library generates dynamic reports, merges documents, or converts DOCX files to other formats. It also supports document formatting, template creation, and data binding, making it ideal for applications that require automation or customization of Word documents.
using IronWord;
using IronWord.Models;
// Creates a text object to be inserted into a Word document
Text textRun = new Text("Sample text");
// Creates a paragraph object to hold the text
Paragraph paragraph = new Paragraph();
paragraph.AddChild(textRun);
// Initializes a new Word document with the paragraph
WordDocument doc = new WordDocument(paragraph);
// Saves the Word document to disk
doc.SaveAs("Sample Doc.docx");
using IronWord;
using IronWord.Models;
// Creates a text object to be inserted into a Word document
Text textRun = new Text("Sample text");
// Creates a paragraph object to hold the text
Paragraph paragraph = new Paragraph();
paragraph.AddChild(textRun);
// Initializes a new Word document with the paragraph
WordDocument doc = new WordDocument(paragraph);
// Saves the Word document to disk
doc.SaveAs("Sample Doc.docx");
Imports IronWord
Imports IronWord.Models
' Creates a text object to be inserted into a Word document
Private textRun As New Text("Sample text")
' Creates a paragraph object to hold the text
Private paragraph As New Paragraph()
paragraph.AddChild(textRun)
' Initializes a new Word document with the paragraph
Dim doc As New WordDocument(paragraph)
' Saves the Word document to disk
doc.SaveAs("Sample Doc.docx")
Adding a PDF to a Word document as an embedded object allows you to insert a PDF into your Word DOC while preserving the original document's formatting. This method helps you to add the entire PDF to Word format without using a Word converter. The inserted PDF content remains in its source file format, meaning it's not converted to editable text within the Word document.
For those needing more advanced document processing capabilities, IronPDF and IronWord offer potent solutions. These libraries allow developers to programmatically manipulate PDF content and Word format documents and provide flexibility beyond simply inserting a PDF into a Word file.
Both IronPDF and IronWord offer free trials, allowing users to explore their features before committing. Licensing for these robust tools starts at $749, offering a cost-effective solution for businesses and developers requiring advanced document processing capabilities beyond basic PDF insertion.