Saves the document options to an XML stream.
public void SaveOptions(
Stream stream
)
Public Overloads Sub SaveOptions( _
ByVal stream As Stream _
)
macOS Only:
- (void)saveOptionsToData:(NSMutableData *)data
public void saveOptions(OutputStream stream)
public:
void SaveOptions(
Stream^ stream
)
stream
A standard .NET Stream to save the options to.
To load the options saved into a .NET stream the SaveOptions(Stream) method, use LoadOptions(Stream).
To load and save the options to an XML file on disk instead of a stream, use LoadOptions(string) and SaveOptions(string).
Saving the options to an XML file allows the options to be the required way once and then re-used in multiple sessions (or multiple DocumentWriter instances). Each document format supported by the LEADTOOLS Document Writer contain extra functionality and options that can be accessed with the GetOptions and SetOptions methods. For more information, refer to DocumentOptions.
The following options are saved to the XML:
The following options are saved to the XML:
This example will change some of the options in a DocumentWriter object, saves them to a memory stream and then re-load them in a new instance.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Document.Writer;
using Leadtools.Ocr;
public void DocumentOptionsStreamExample()
{
// Use a memory stream to save the options to
using (var stream = new MemoryStream())
{
// Create a new instance of the LEADTOOLS Document Writer
var docWriter1 = new DocumentWriter();
// Show the default PDF and HTML options before
ShowMyOptions("Default options for docWriter1", docWriter1);
// Change the PDF options and HTML options
var pdfOptions = docWriter1.GetOptions(DocumentFormat.Pdf) as PdfDocumentOptions;
pdfOptions.DocumentType = PdfDocumentType.PdfA;
pdfOptions.ImageOverText = true;
docWriter1.SetOptions(DocumentFormat.Pdf, pdfOptions);
var htmlOptions = docWriter1.GetOptions(DocumentFormat.Html) as HtmlDocumentOptions;
htmlOptions.UseBackgroundColor = true;
htmlOptions.BackgroundColor = RasterColor.FromKnownColor(RasterKnownColor.LightBlue);
docWriter1.SetOptions(DocumentFormat.Html, htmlOptions);
// Show the options again
ShowMyOptions("New options for docWriter1", docWriter1);
// Save these options to the stream
docWriter1.SaveOptions(stream);
// Reset the stream back to its original position
stream.Position = 0;
// Create a new DocumentWriter object
var docWriter2 = new DocumentWriter();
// Show its options, should be the defaults
ShowMyOptions("Default options for docWriter2", docWriter2);
// Load the options from the memory to this object
docWriter2.LoadOptions(stream);
// Show the options now, should be the saved ones
ShowMyOptions("Options for docWriter2 after loading from the XML file", docWriter2);
}
}
private void ShowMyOptions(string message, DocumentWriter docWriter)
{
Console.WriteLine(message);
var pdfOptions = docWriter.GetOptions(DocumentFormat.Pdf) as PdfDocumentOptions;
Console.WriteLine(" PDF options: ");
Console.WriteLine(" DocumentType: " + pdfOptions.DocumentType);
Console.WriteLine(" FontEmbedMode: " + pdfOptions.FontEmbedMode);
Console.WriteLine(" ImageOverText: " + pdfOptions.ImageOverText);
var htmlOptions = docWriter.GetOptions(DocumentFormat.Html) as HtmlDocumentOptions;
Console.WriteLine(" HTML options: ");
Console.WriteLine(" DocumentType: " + htmlOptions.DocumentType);
Console.WriteLine(" FontEmbedMode: " + htmlOptions.FontEmbedMode);
Console.WriteLine(" UseBackgroundColor: " + htmlOptions.UseBackgroundColor);
Console.WriteLine(" BackgroundColor: " + htmlOptions.BackgroundColor);
Console.WriteLine("-------------------------");
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.Document.Writer
Imports Leadtools.Ocr
Public Sub DocumentOptionsStreamExample()
' Use a memory stream to save the options to
Using stream As New MemoryStream()
' Create a new instance of the LEADTOOLS Document Writer
Dim docWriter1 As New DocumentWriter()
' Show the default PDF and HTML options before
ShowMyOptions("Default options for docWriter1", docWriter1)
' Change the PDF options and HTML options
Dim pdfOptions As PdfDocumentOptions = DirectCast(docWriter1.GetOptions(DocumentFormat.Pdf), PdfDocumentOptions)
pdfOptions.DocumentType = PdfDocumentType.PdfA
pdfOptions.ImageOverText = True
docWriter1.SetOptions(DocumentFormat.Pdf, pdfOptions)
Dim htmlOptions As HtmlDocumentOptions = DirectCast(docWriter1.GetOptions(DocumentFormat.Html), HtmlDocumentOptions)
htmlOptions.UseBackgroundColor = True
htmlOptions.BackgroundColor = RasterColor.FromKnownColor(RasterKnownColor.LightBlue)
docWriter1.SetOptions(DocumentFormat.Html, htmlOptions)
' Show the options again
ShowMyOptions("New options for docWriter1", docWriter1)
' Save these options to the stream
docWriter1.SaveOptions(stream)
' Reset the stream back to its original position
stream.Position = 0
' Create a new DocumentWriter object
Dim docWriter2 As New DocumentWriter()
' Show its options, should be the defaults
ShowMyOptions("Default options for docWriter2", docWriter2)
' Load the options from the memory to this object
docWriter2.LoadOptions(stream)
' Show the options now, should be the saved ones
ShowMyOptions("Options for docWriter2 after loading from the XML file", docWriter2)
End Using
End Sub
Private Sub ShowMyOptions(message As String, docWriter As DocumentWriter)
Console.WriteLine(message)
Dim pdfOptions As PdfDocumentOptions = DirectCast(docWriter.GetOptions(DocumentFormat.Pdf), PdfDocumentOptions)
Console.WriteLine(" PDF options: ")
Console.WriteLine(" DocumentType: " + pdfOptions.DocumentType.ToString())
Console.WriteLine(" FontEmbedMode: " + pdfOptions.FontEmbedMode.ToString())
Console.WriteLine(" ImageOverText: " + pdfOptions.ImageOverText.ToString())
Dim htmlOptions As HtmlDocumentOptions = DirectCast(docWriter.GetOptions(DocumentFormat.Html), HtmlDocumentOptions)
Console.WriteLine(" HTML options: ")
Console.WriteLine(" DocumentType: " + htmlOptions.DocumentType.ToString())
Console.WriteLine(" FontEmbedMode: " + htmlOptions.FontEmbedMode.ToString())
Console.WriteLine(" UseBackgroundColor: " + htmlOptions.UseBackgroundColor.ToString())
Console.WriteLine(" BackgroundColor: " + htmlOptions.BackgroundColor.ToString())
Console.WriteLine("-------------------------")
End Sub
Programming with LEADTOOLS Document Writers
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document