←Select platform

HtmlDocumentOptions Class

Summary
Provides extra options to use when saving a document using the HyperText Markup Language (HTML) format.
Syntax
C#
Objective-C
C++/CLI
Java
Python
[SerializableAttribute()] 
[DataContractAttribute()] 
public class HtmlDocumentOptions : DocumentOptions 
@interface LTHtmlDocumentOptions : LTDocumentOptions<NSCopying, NSCoding> 
public class HtmlDocumentOptions extends DocumentOptions 
[DataContractAttribute()] 
[SerializableAttribute()] 
public ref class HtmlDocumentOptions : public DocumentOptions  
class HtmlDocumentOptions(DocumentOptions): 
Remarks

The options set in the HtmlDocumentOptions class will be used when the user saves a document using the DocumentFormat.Html format.

To change the options used with the DOC format, perform the following steps:

  1. Use the DocumentWriter.GetOptions method of the DocumentWriter object being used. Passing DocumentFormat.Html to the format parameter. Note that the resulting object from the base DocumentOptions class needs to be cast to HtmlDocumentOptions.
  2. Use the various HtmlDocumentOptions properties to change the options.
  3. Use DocumentWriter.SetOptions to set the new options in the engine.
  4. Now you can call the DocumentWriter.BeginDocument method (with DocumentFormat.Html for the format parameter) to create a new document and add the pages.

The HtmlDocumentOptions class contains the following properties:

Property Description
EmbedFonts Indicates whether fonts are to be embedded in the document.
FontEmbedMode Control what fonts are embedded in the document.
FontTypes Font types to embed in the document.
EmbedImages Indicate whether images are to be embedded in the document.
ImageType Format to use when saving images in the document.
EmbedCSS Indicate whether CSS elements are to be embedded in the document.
DropObjects Controls which object types to drop from the document.
UseBackgroundColor and BackgroundColor Controls the background color in the document.

Note that this format does not support calling DocumentWriter.InsertPage.

Example

This example will create a new HyperText Markup Language document (HTML) file using the various supported options.

C#
Java
using Leadtools.Document.Writer; 
using Leadtools; 
using Leadtools.Codecs; 
 
 
public void HtmlDocumentOptionsExample() 
{ 
   var inputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.pdf"); 
   var outputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Example.html"); 
 
   // Setup a new RasterCodecs object 
   var codecs = new RasterCodecs(); 
   codecs.Options.RasterizeDocument.Load.Resolution = 300; 
 
   // Get the number of pages in the input document 
   var pageCount = codecs.GetTotalPages(inputFileName); 
 
   // Create a new instance of the LEADTOOLS Document Writer 
   var docWriter = new DocumentWriter(); 
 
   // Change the HTML options 
   var htmlOptions = docWriter.GetOptions(DocumentFormat.Html) as HtmlDocumentOptions; 
   htmlOptions.FontEmbedMode = DocumentFontEmbedMode.None; 
   htmlOptions.UseBackgroundColor = true; 
   htmlOptions.BackgroundColor = RasterColor.FromKnownColor(RasterKnownColor.LightBlue); 
   docWriter.SetOptions(DocumentFormat.Html, htmlOptions); 
 
   // Create a new HTML document 
   Debug.WriteLine("Creating new HTML document: {0}", outputFileName); 
   docWriter.BeginDocument(outputFileName, DocumentFormat.Html); 
 
   // Loop through all the pages 
   for (var pageNumber = 1; pageNumber <= pageCount; pageNumber++) 
   { 
      // Get the page as SVG 
      Debug.WriteLine("Loading page {0}", pageNumber); 
      var page = new DocumentWriterSvgPage(); 
      page.SvgDocument = codecs.LoadSvg(inputFileName, pageNumber, null); 
 
      // Add the page 
      Debug.WriteLine("Adding page {0}", pageNumber); 
      docWriter.AddPage(page); 
 
      page.SvgDocument.Dispose(); 
   } 
 
   // Finally finish writing the HTML file on disk 
   docWriter.EndDocument(); 
   codecs.Dispose(); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
 
import java.io.File; 
import java.io.IOException; 
 
import org.junit.*; 
import org.junit.runner.JUnitCore; 
import org.junit.runner.Result; 
import org.junit.runner.notification.Failure; 
import static org.junit.Assert.*; 
 
import leadtools.*; 
import leadtools.codecs.*; 
import leadtools.document.writer.*; 
 
 
public void htmlDocumentOptionsExample() { 
 
   final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images"; 
   Platform.loadLibrary(LTLibrary.DOCUMENT_WRITER); 
   String inputFileName = combine(LEAD_VARS_IMAGES_DIR, "Leadtools.pdf"); 
   String outputFileName = combine(LEAD_VARS_IMAGES_DIR, "Example.html"); 
 
   // Setup a new RasterCodecs object 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.getOptions().getRasterizeDocument().getLoad().setResolution(300); 
 
   // Get the number of pages in the input document 
   int pageCount = codecs.getTotalPages(inputFileName); 
 
   // Create a new instance of the LEADTOOLS Document Writer 
   DocumentWriter docWriter = new DocumentWriter(); 
 
   // Change the HTML options 
   HtmlDocumentOptions htmlOptions = (HtmlDocumentOptions) docWriter.getOptions(DocumentFormat.HTML); 
   htmlOptions.setFontEmbedMode(DocumentFontEmbedMode.NONE); 
   htmlOptions.setUseBackgroundColor(true); 
   htmlOptions.setBackgroundColor(RasterColor.fromKnownColor(RasterKnownColor.LIGHT_BLUE)); 
   docWriter.setOptions(DocumentFormat.HTML, htmlOptions); 
 
   // Create a new HTML document 
   System.out.printf("Creating new HTML document: %s%n", outputFileName); 
   docWriter.beginDocument(outputFileName, DocumentFormat.HTML); 
 
   // Loop through all the pages 
   for (int pageNumber = 1; pageNumber <= pageCount; pageNumber++) { 
 
      // Get the page as SVG 
      System.out.printf("Loading page %s%n", pageNumber); 
      DocumentWriterSvgPage page = new DocumentWriterSvgPage(); 
      page.setSvgDocument(codecs.loadSvg(inputFileName, pageNumber, null)); 
      assertTrue(page.getSvgDocument() != null); 
      System.out.println(("Page Exists")); 
 
      // Add the page 
      System.out.printf("Adding page %s%n", pageNumber); 
      docWriter.addPage(page); 
      page.getSvgDocument().dispose(); 
 
   } 
   // Finally finish writing the HTML file on disk 
   docWriter.endDocument(); 
   codecs.dispose(); 
 
   assertTrue(new File(outputFileName).exists()); 
   System.out.println("Output document was created successfully"); 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Document.Writer Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.