This example demonstrates how to set built-in document properties and add some custom document properties.
Document properties are correct documentation that provides attribution or credit to the original author or creator.
It allows someone to find the documents you cited on their own. It enables the reader to follow the continuum of research.
Below are the basic built-in document properties
- Author
- ApplicationName
- Category
- Comments
- Company
- Keywords
- Manager
- Subject
- Title
Apart from basic document we can also define custom properties like:
- Order Date
- Order Id
- Invoice etc.
We have versions of this representation in words ,using dropdown you can make a choice within the following
- Word Doc
- Word Docx
- Word ML
- RTF
- MS Text format
- E-book format
- DLS based xml file format
- HTML
After clicking a generate button will launch a file with above choosen version of word with specified properties.
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Text;
using OfficeComponent.Word;
namespace OfficeComponent.Samples
{
class DocumentSettingsExample : WordExampleBase
{
public DocumentSettingsExample(string commonDataPath, string outputDir)
: base(commonDataPath, outputDir)
{
}
public DocumentSettingsExample(string commonDataPath, string outputDir, string xmlFile) : base(commonDataPath, outputDir, xmlFile)
{
}
public override string Execute()
{
WordDocument document = new WordDocument();
#region Document Properties
// Document Properties
document.BuiltinDocumentProperties.Author = "John Smith";
document.BuiltinDocumentProperties.ApplicationName = "Document Settings";
document.BuiltinDocumentProperties.Category = "OfficeComponent Word Examples";
document.BuiltinDocumentProperties.Comments = "Copyright OfficeComponent";
document.BuiltinDocumentProperties.Company = "OfficeComponent Division, OfficeComponent";
document.BuiltinDocumentProperties.Keywords = "Document Settings";
document.BuiltinDocumentProperties.Manager = "My Manager";
document.BuiltinDocumentProperties.Subject = "Setting document properties without using MS Word";
document.BuiltinDocumentProperties.Title = "Document Settings";
// Remove a custom property
document.CustomDocumentProperties.Remove("Temp_Property");
// Add custom document properties
document.CustomDocumentProperties.Add("Order_Date", DateTime.Today);
document.CustomDocumentProperties.Add("Order_ID", 12345);
#endregion
#region Add Text
Section section = document.AddSection();
Paragraph paragraph = section.AddParagraph();
TextRange text = paragraph.AppendText("To view the Document Properties, open File -> Properties -> Summary/Custom.");
text.CharacterFormat.FontName = "Calibri";
text.CharacterFormat.FontSize = 15;
#endregion
string fileName = Path.Combine(OutputDir, this.GetType().Name + "_" + Guid.NewGuid().ToString() + GetExtension(SaveAsFormat));
// Save the document.
document.Save(fileName, SaveAsFormat);
// Close the document.
document.Close();
return fileName;
}
}
}
Imports System.Drawing.Imaging
Imports System.IO
Imports System.Text
Imports OfficeComponent.Word
Namespace OfficeComponent.Samples
Friend Class DocumentSettingsExample
Inherits WordExampleBase
Public Sub New(ByVal commonDataPath As String, ByVal outputDir As String)
MyBase.New(commonDataPath, outputDir)
End Sub
Public Sub New(ByVal commonDataPath As String, ByVal outputDir As String, ByVal xmlFile As String)
MyBase.New(commonDataPath, outputDir, xmlFile)
End Sub
Public Overrides Function Execute() As String
Dim document As New WordDocument()
' #Region "Document Properties"
' Document Properties
document.BuiltinDocumentProperties.Author = "John Smith"
document.BuiltinDocumentProperties.ApplicationName = "Document Settings"
document.BuiltinDocumentProperties.Category = "OfficeComponent Word Examples"
document.BuiltinDocumentProperties.Comments = "Copyright OfficeComponent"
document.BuiltinDocumentProperties.Company = "OfficeComponent Division, OfficeComponent"
document.BuiltinDocumentProperties.Keywords = "Document Settings"
document.BuiltinDocumentProperties.Manager = "My Manager"
document.BuiltinDocumentProperties.Subject = "Setting document properties without using MS Word"
document.BuiltinDocumentProperties.Title = "Document Settings"
' Remove a custom property
document.CustomDocumentProperties.Remove("Temp_Property")
' Add custom document properties
document.CustomDocumentProperties.Add("Order_Date", Date.Today)
document.CustomDocumentProperties.Add("Order_ID", 12345)
' #End Region
' #Region "Add Text"
Dim section As Section = document.AddSection()
Dim paragraph As Paragraph = section.AddParagraph()
Dim text As TextRange = paragraph.AppendText("To view the Document Properties, open File -> Properties -> Summary/Custom.")
text.CharacterFormat.FontName = "Calibri"
text.CharacterFormat.FontSize = 15
' #End Region
Dim fileName As String = Path.Combine(OutputDir, Me.GetType().Name & "_" & Guid.NewGuid().ToString() & GetExtension(SaveAsFormat))
' Save the document.
document.Save(fileName, SaveAsFormat)
' Close the document.
document.Close()
Return fileName
End Function
End Class
End Namespace