Class HtmlSaveOptions

Class HtmlSaveOptions

Namespace: Aspose.Words.Saving
Assembly: Aspose.Words.dll (25.3.0)

Can be used to specify additional options when saving a document into the Aspose.Words.SaveFormat.Html, Aspose.Words.SaveFormat.Mhtml, Aspose.Words.SaveFormat.Epub, Aspose.Words.SaveFormat.Azw3 or Aspose.Words.SaveFormat.Mobi format.

To learn more, visit the Specify Save Options documentation article.

public class HtmlSaveOptions : SaveOptions

Inheritance

objectSaveOptionsHtmlSaveOptions

Inherited Members

SaveOptions.CreateSaveOptions(SaveFormat), SaveOptions.CreateSaveOptions(string), SaveOptions.SaveFormat, SaveOptions.ExportGeneratorName, SaveOptions.TempFolder, SaveOptions.PrettyFormat, SaveOptions.UseAntiAliasing, SaveOptions.UseHighQualityRendering, SaveOptions.DmlRenderingMode, SaveOptions.DmlEffectsRenderingMode, SaveOptions.ImlRenderingMode, SaveOptions.DefaultTemplate, SaveOptions.UpdateFields, SaveOptions.UpdateLastSavedTimeProperty, SaveOptions.UpdateLastPrintedProperty, SaveOptions.UpdateCreatedTimeProperty, SaveOptions.MemoryOptimization, SaveOptions.UpdateAmbiguousTextFont, SaveOptions.Dml3DEffectsRenderingMode, SaveOptions.ProgressCallback, SaveOptions.AllowEmbeddingPostScriptFonts, SaveOptions.CustomTimeZoneInfo, object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Constructors

HtmlSaveOptions()

Initializes a new instance of this class that can be used to save a document in the Aspose.Words.SaveFormat.Html format.

public HtmlSaveOptions()

HtmlSaveOptions(SaveFormat)

Initializes a new instance of this class that can be used to save a document in the Aspose.Words.SaveFormat.Html, Aspose.Words.SaveFormat.Mhtml, Aspose.Words.SaveFormat.Epub, Aspose.Words.SaveFormat.Azw3 or Aspose.Words.SaveFormat.Mobi format.

public HtmlSaveOptions(SaveFormat saveFormat)

Parameters

saveFormat SaveFormat

Can be Aspose.Words.SaveFormat.Html, Aspose.Words.SaveFormat.Mhtml, Aspose.Words.SaveFormat.Epub, Aspose.Words.SaveFormat.Azw3 or Aspose.Words.SaveFormat.Mobi.

Properties

AllowNegativeIndent

Specifies whether negative left and right indents of paragraphs are normalized when saving to HTML, MHTML or EPUB. Default value is false.

public bool AllowNegativeIndent { get; set; }

Property Value

bool

Remarks

When negative indent is not allowed, it is exported as zero margin to HTML. When negative indent is allowed, a paragraph might appear partially outside of the browser window.

CssClassNamePrefix

Specifies a prefix which is added to all CSS class names. Default value is an empty string and generated CSS class names have no common prefix.

public string CssClassNamePrefix { get; set; }

Property Value

string

Remarks

If this value is not empty, all CSS classes generated by Aspose.Words will start with the specified prefix. This might be useful, for example, if you add custom CSS to generated documents and want to prevent class name conflicts.

If the value is not null or empty, it must be a valid CSS identifier.

Exceptions

ArgumentException

The value is not empty and is not a valid CSS identifier.

CssSavingCallback

Allows to control how CSS styles are saved when a document is saved to HTML, MHTML or EPUB.

public ICssSavingCallback CssSavingCallback { get; set; }

Property Value

ICssSavingCallback

CssStyleSheetFileName

Specifies the path and the name of the Cascading Style Sheet (CSS) file written when a document is exported to HTML. Default is an empty string.

public string CssStyleSheetFileName { get; set; }

Property Value

string

Remarks

This property has effect only when saving a document to HTML format and external CSS style sheet is requested using Aspose.Words.Saving.HtmlSaveOptions.CssStyleSheetType.

If this property is empty, the CSS file will be saved into the same folder and with the same name as the HTML document but with the ".css" extension.

If only path but no file name is specified in this property, the CSS file will be saved into the specified folder and will have the same name as the HTML document but with the ".css" extension.

If the folder specified by this property doesn't exist, it will be created automatically before the CSS file is saved.

Another way to specify a folder where external CSS file is saved is to use Aspose.Words.Saving.HtmlSaveOptions.ResourceFolder.

Aspose.Words.Saving.HtmlSaveOptions.ResourceFolder Aspose.Words.Saving.HtmlSaveOptions.ResourceFolderAlias Aspose.Words.Saving.HtmlSaveOptions.CssStyleSheetType

CssStyleSheetType

Specifies how CSS (Cascading Style Sheet) styles are exported to HTML, MHTML or EPUB. Default value is Aspose.Words.Saving.CssStyleSheetType.Inline for HTML/MHTML and Aspose.Words.Saving.CssStyleSheetType.External for EPUB.

public CssStyleSheetType CssStyleSheetType { get; set; }

Property Value

CssStyleSheetType

Remarks

Saving CSS style sheet into an external file is only supported when saving to HTML. When you are exporting to one of the container formats (EPUB or MHTML) and specifying Aspose.Words.Saving.CssStyleSheetType.External, CSS file will be encapsulated into the output package.

See Also

HtmlSaveOptions.CssStyleSheetFileName

DocumentPartSavingCallback

Allows to control how document parts are saved when a document is saved to HTML or EPUB.

public IDocumentPartSavingCallback DocumentPartSavingCallback { get; set; }

Property Value

IDocumentPartSavingCallback

DocumentSplitCriteria

Specifies how the document should be split when saving to Aspose.Words.SaveFormat.Html, Aspose.Words.SaveFormat.Epub or Aspose.Words.SaveFormat.Azw3 format. Default is Aspose.Words.Saving.DocumentSplitCriteria.None for HTML and Aspose.Words.Saving.DocumentSplitCriteria.HeadingParagraph for EPUB and AZW3.

public DocumentSplitCriteria DocumentSplitCriteria { get; set; }

Property Value

DocumentSplitCriteria

Remarks

Normally you would want a document saved to HTML as a single file. But in some cases it is preferable to split the output into several smaller HTML pages. When saving to HTML format these pages will be output to individual files or streams. When saving to EPUB format they will be incorporated into corresponding packages.

A document cannot be split when saving in the MHTML format.

Aspose.Words.Saving.HtmlSaveOptions.DocumentSplitHeadingLevel Aspose.Words.Saving.HtmlSaveOptions.DocumentPartSavingCallback

DocumentSplitHeadingLevel

Specifies the maximum level of headings at which to split the document. Default value is 2.

public int DocumentSplitHeadingLevel { get; set; }

Property Value

int

Remarks

When Aspose.Words.Saving.HtmlSaveOptions.DocumentSplitCriteria includes Aspose.Words.Saving.DocumentSplitCriteria.HeadingParagraph and this property is set to a value from 1 to 9, the document will be split at paragraphs formatted using Heading 1, Heading 2 , Heading 3 etc. styles up to the specified heading level.

By default, only Heading 1 and Heading 2 paragraphs cause the document to be split. Setting this property to zero will cause the document not to be split at heading paragraphs at all.

Aspose.Words.Saving.HtmlSaveOptions.DocumentSplitCriteria Aspose.Words.Saving.HtmlSaveOptions.DocumentPartSavingCallback

Encoding

Specifies the encoding to use when exporting to HTML, MHTML or EPUB. Default value is new UTF8Encoding(false) (UTF-8 without BOM).

public Encoding Encoding { get; set; }

Property Value

Encoding

ExportCidUrlsForMhtmlResources

Specifies whether to use CID (Content-ID) URLs to reference resources (images, fonts, CSS) included in MHTML documents. Default value is false.

public bool ExportCidUrlsForMhtmlResources { get; set; }

Property Value

bool

Remarks

This option affects only documents being saved to MHTML.

By default, resources in MHTML documents are referenced by file name (for example, "image.png"), which are matched against "Content-Location" headers of MIME parts.

This option enables an alternative method, where references to resource files are written as CID (Content-ID) URLs (for example, "cid:image.png") and are matched against "Content-ID" headers.

In theory, there should be no difference between the two referencing methods and either of them should work fine in any browser or mail agent. In practice, however, some agents fail to fetch resources by file name. If your browser or mail agent refuses to load resources included in an MTHML document (doesn't show images or doesn't load CSS styles), try exporting the document with CID URLs.

ExportDocumentProperties

Specifies whether to export built-in and custom document properties to HTML, MHTML or EPUB. Default value is false.

public bool ExportDocumentProperties { get; set; }

Property Value

bool

ExportDropDownFormFieldAsText

Controls how drop-down form fields are saved to HTML or MHTML. Default value is false.

public bool ExportDropDownFormFieldAsText { get; set; }

Property Value

bool

Remarks

When set to true, exports drop-down form fields as normal text. When false, exports drop-down form fields as SELECT element in HTML.

When exporting to EPUB, text drop-down form fields are always saved as text due to requirements of this format.

ExportFontResources

Specifies whether font resources should be exported to HTML, MHTML or EPUB. Default is false.

public bool ExportFontResources { get; set; }

Property Value

bool

Remarks

<p>Exporting font resources allows for consistent document rendering independent of the fonts available
        in a given user's environment.</p>

If Aspose.Words.Saving.HtmlSaveOptions.ExportFontResources is set to true, main HTML document will refer to every font via the CSS 3 @font-face at-rule and fonts will be output as separate files. When exporting to IDPF EPUB or MHTML formats, fonts will be embedded into the corresponding package along with other subsidiary files.

If Aspose.Words.Saving.HtmlSaveOptions.ExportFontsAsBase64 is set to true, fonts will not be saved to separate files. Instead, they will be embedded into @font-face at-rules in Base64 encoding.

Important! When exporting font resources, font licensing issues should be considered. Authors who want to use specific fonts via a downloadable font mechanism must always carefully verify that their intended use is within the scope of the font license. Many commercial fonts presently do not allow web downloading of their fonts in any form. License agreements that cover some fonts specifically note that usage via @font-face rules in CSS style sheets is not allowed. Font subsetting can also violate license terms.

Aspose.Words.Saving.HtmlSaveOptions.FontResourcesSubsettingSizeThreshold

ExportFontsAsBase64

Specifies whether fonts resources should be embedded to HTML in Base64 encoding. Default is false.

public bool ExportFontsAsBase64 { get; set; }

Property Value

bool

Remarks

By default, fonts are written to separate files. If this option is set to true, fonts will be embedded into the document's CSS in Base64 encoding.

ExportHeadersFootersMode

Specifies how headers and footers are output to HTML, MHTML or EPUB. Default value is Aspose.Words.Saving.ExportHeadersFootersMode.PerSection for HTML/MHTML and Aspose.Words.Saving.ExportHeadersFootersMode.None for EPUB.

public ExportHeadersFootersMode ExportHeadersFootersMode { get; set; }

Property Value

ExportHeadersFootersMode

Remarks

It is hard to meaningfully output headers and footers to HTML because HTML is not paginated.

When this property is Aspose.Words.Saving.ExportHeadersFootersMode.PerSection, Aspose.Words exports only primary headers and footers at the beginning and the end of each section.

When it is Aspose.Words.Saving.ExportHeadersFootersMode.FirstSectionHeaderLastSectionFooter only first primary header and the last primary footer (including linked to previous) are exported.

You can disable export of headers and footers altogether by setting this property to Aspose.Words.Saving.ExportHeadersFootersMode.None.

ExportImagesAsBase64

Specifies whether images are saved in Base64 format to the output HTML, MHTML or EPUB. Default is false.

public bool ExportImagesAsBase64 { get; set; }

Property Value

bool

Remarks

When this property is set to true images data are exported directly into the img elements and separate files are not created.

ExportLanguageInformation

Specifies whether language information is exported to HTML, MHTML or EPUB. Default is false.

public bool ExportLanguageInformation { get; set; }

Property Value

bool

Remarks

When this property is set to true Aspose.Words outputs lang HTML attribute on the document elements that specify language. This can be needed to preserve language related semantics.

ExportListLabels

Controls how list labels are output to HTML, MHTML or EPUB. Default value is Aspose.Words.Saving.ExportListLabels.Auto.

public ExportListLabels ExportListLabels { get; set; }

Property Value

ExportListLabels

ExportOriginalUrlForLinkedImages

Specifies whether original URL should be used as the URL of the linked images. Default value is false.

public bool ExportOriginalUrlForLinkedImages { get; set; }

Property Value

bool

Remarks

If value is set to trueAspose.Words.Drawing.ImageData.SourceFullName value is used as the URL of linked images and linked images are not loaded into document's folder or Aspose.Words.Saving.HtmlSaveOptions.ImagesFolder.

If value is set to false linked images are loaded into document's folder or Aspose.Words.Saving.HtmlSaveOptions.ImagesFolder and URL of each linked image is constructed depending on document's folder, Aspose.Words.Saving.HtmlSaveOptions.ImagesFolder and Aspose.Words.Saving.HtmlSaveOptions.ImagesFolderAlias properties.

ExportPageMargins

Specifies whether page margins is exported to HTML, MHTML or EPUB. Default is false.

public bool ExportPageMargins { get; set; }

Property Value

bool

Remarks

Aspose.Words does not show area of page margins by default. If any elements are completely or partially clipped by the document edge the displayed area can be extended with this option.

ExportPageSetup

Specifies whether page setup is exported to HTML, MHTML or EPUB. Default is false.

public bool ExportPageSetup { get; set; }

Property Value

bool

Remarks

Each Aspose.Words.Section in Aspose.Words document model provides page setup information via Aspose.Words.PageSetup class. When you export a document to HTML format you might need to keep this information for further usage. In particular, page setup might be important for rendering to paged media (printing) or subsequent conversion to the native Microsoft Word file formats (DOCX, DOC, RTF, WML).

In most cases HTML is intended for viewing in browsers where pagination is not performed. So this feature is inactive by default.

ExportRelativeFontSize

Specifies whether font sizes should be output in relative units when saving to HTML, MHTML or EPUB. Default is false.

public bool ExportRelativeFontSize { get; set; }

Property Value

bool

Remarks

In many existing documents (HTML, IDPF EPUB) font sizes are specified in relative units. This allows applications to adjust text size when viewing/processing documents. For instance, Microsoft Internet Explorer has "View->Text Size" submenu, Adobe Digital Editions has two buttons: Increase/Decrease Text Size. If you expect this functionality to work then set Aspose.Words.Saving.HtmlSaveOptions.ExportRelativeFontSize property to true.

Aspose Words document model contains and operates only with absolute font size units. Relative units need additional logic to be recalculated from some initial (standard) size. Font size of Normal document style is taken as standard. For instance, if Normal has 12pt font and some text is 18pt then it will be output as 1.5em. to the HTML.

When this option is enabled, document elements other than text will still have absolute sizes. Also some text-related attributes might be expressed absolutely. In particular, line spacing specified with "exactly" rule might produce unwanted results when scaling text. So the source documents should be properly designed and tested when exporting with Aspose.Words.Saving.HtmlSaveOptions.ExportRelativeFontSize set to true.

ExportRoundtripInformation

Specifies whether to write the roundtrip information when saving to HTML, MHTML or EPUB. Default value is true for HTML and false for MHTML and EPUB.

public bool ExportRoundtripInformation { get; set; }

Property Value

bool

Remarks

Saving of the roundtrip information allows to restore document properties such as tab stops, comments, headers and footers during the HTML documents loading back into a Aspose.Words.Document object.

When true, the roundtrip information is exported as -aw-* CSS properties of the corresponding HTML elements.

When false, causes no roundtrip information to be output into produced files.

ExportShapesAsSvg

Controls whether Aspose.Words.Drawing.Shape nodes are converted to SVG images when saving to HTML, MHTML, EPUB or AZW3. Default value is false.

public bool ExportShapesAsSvg { get; set; }

Property Value

bool

Remarks

If this option is set to true, Aspose.Words.Drawing.Shape nodes are exported as <svg> elements. Otherwise, they are rendered to bitmaps and are exported as <img> elements.

ExportTextInputFormFieldAsText

Controls how text input form fields are saved to HTML or MHTML. Default value is false.

public bool ExportTextInputFormFieldAsText { get; set; }

Property Value

bool

Remarks

When set to true, exports text input form fields as normal text. When false, exports Word text input form fields as INPUT elements in HTML.

When exporting to EPUB, text input form fields are always saved as text due to requirements of this format.

ExportTocPageNumbers

Specifies whether to write page numbers to table of contents when saving HTML, MHTML and EPUB. Default value is false.

public bool ExportTocPageNumbers { get; set; }

Property Value

bool

ExportXhtmlTransitional

Specifies whether to write the DOCTYPE declaration when saving to HTML or MHTML. When true, writes a DOCTYPE declaration in the document prior to the root element. Default value is false. When saving to EPUB or HTML5 (Aspose.Words.Saving.HtmlVersion.Html5) the DOCTYPE declaration is always written.

public bool ExportXhtmlTransitional { get; set; }

Property Value

bool

Remarks

Aspose.Words always writes well formed HTML regardless of this setting.

When true, the beginning of the HTML output document will look like this:

&lt;?xml version="1.0" encoding="utf-8" standalone="no" ?&gt;
&lt;!DOCTYPE html 
      PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;
&lt;html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"&gt;

Aspose.Words aims to output XHTML according to the XHTML 1.0 Transitional specification, but the output will not always validate against the DTD. Some structures inside a Microsoft Word document are hard or impossible to map to a document that will validate against the XHTML schema. For example, XHTML does not allow nested lists (UL cannot be nested inside another UL element), but in Microsoft Word document multilevel lists occur quite often.

FontResourcesSubsettingSizeThreshold

Controls which font resources need subsetting when saving to HTML, MHTML or EPUB. Default is 0.

public int FontResourcesSubsettingSizeThreshold { get; set; }

Property Value

int

Remarks

<p>

Aspose.Words.Saving.HtmlSaveOptions.ExportFontResources allows exporting fonts as subsidiary files or as parts of the output package. If the document uses many fonts, especially with large number of glyphs, then output size can grow significantly. Font subsetting reduces the size of the exported font resource by filtering out glyphs that are not used by the current document.

Font subsetting works as follows:

  • By default, all exported fonts are subsetted.
  • Setting Aspose.Words.Saving.HtmlSaveOptions.FontResourcesSubsettingSizeThreshold to a positive value instructs Aspose.Words to subset fonts which file size is larger than the specified value.
  • Setting the property to System.Int32.MaxValue suppresses font subsetting.

Important! When exporting font resources, font licensing issues should be considered. Authors who want to use specific fonts via a downloadable font mechanism must always carefully verify that their intended use is within the scope of the font license. Many commercial fonts presently do not allow web downloading of their fonts in any form. License agreements that cover some fonts specifically note that usage via @font-face rules in CSS style sheets is not allowed. Font subsetting can also violate license terms.

Aspose.Words.Saving.HtmlSaveOptions.ExportFontResources

FontSavingCallback

Allows to control how fonts are saved when a document is saved to HTML, MHTML or EPUB.

public IFontSavingCallback FontSavingCallback { get; set; }

Property Value

IFontSavingCallback

FontsFolder

Specifies the physical folder where fonts are saved when exporting a document to HTML. Default is an empty string.

public string FontsFolder { get; set; }

Property Value

string

Remarks

When you save a Aspose.Words.Document in HTML format and Aspose.Words.Saving.HtmlSaveOptions.ExportFontResources is set to true, Aspose.Words needs to save fonts used in the document as standalone files. Aspose.Words.Saving.HtmlSaveOptions.FontsFolder allows you to specify where the fonts will be saved and Aspose.Words.Saving.HtmlSaveOptions.FontsFolderAlias allows to specify how the font URIs will be constructed.

If you save a document into a file and provide a file name, Aspose.Words, by default, saves the fonts in the same folder where the document file is saved. Use Aspose.Words.Saving.HtmlSaveOptions.FontsFolder to override this behavior.

If you save a document into a stream, Aspose.Words does not have a folder where to save the fonts, but still needs to save the fonts somewhere. In this case, you need to specify an accessible folder in the Aspose.Words.Saving.HtmlSaveOptions.FontsFolder property or provide custom streams via the Aspose.Words.Saving.HtmlSaveOptions.FontSavingCallback event handler.

If the folder specified by Aspose.Words.Saving.HtmlSaveOptions.FontsFolder doesn't exist, it will be created automatically.

Aspose.Words.Saving.HtmlSaveOptions.ResourceFolder is another way to specify a folder where fonts should be saved.

Aspose.Words.Saving.HtmlSaveOptions.ResourceFolder Aspose.Words.Saving.HtmlSaveOptions.ExportFontResources Aspose.Words.Saving.HtmlSaveOptions.FontsFolderAlias Aspose.Words.Saving.HtmlSaveOptions.FontSavingCallback

FontsFolderAlias

Specifies the name of the folder used to construct font URIs written into an HTML document. Default is an empty string.

public string FontsFolderAlias { get; set; }

Property Value

string

Remarks

When you save a Aspose.Words.Document in HTML format and Aspose.Words.Saving.HtmlSaveOptions.ExportFontResources is set to true, Aspose.Words needs to save fonts used in the document as standalone files. Aspose.Words.Saving.HtmlSaveOptions.FontsFolder allows you to specify where the fonts will be saved and Aspose.Words.Saving.HtmlSaveOptions.FontsFolderAlias allows to specify how the font URIs will be constructed.

If Aspose.Words.Saving.HtmlSaveOptions.FontsFolderAlias is not an empty string, then the font URI written to HTML will be FontsFolderAlias + <font file name>.

If Aspose.Words.Saving.HtmlSaveOptions.FontsFolderAlias is an empty string, then the font URI written to HTML will be FontsFolder + <font file name>.

If Aspose.Words.Saving.HtmlSaveOptions.FontsFolderAlias is set to '.' (dot), then the font file name will be written to HTML without path regardless of other options.

Alternative way to specify the name of the folder to construct font URIs is to use Aspose.Words.Saving.HtmlSaveOptions.ResourceFolderAlias.

Aspose.Words.Saving.HtmlSaveOptions.ResourceFolderAlias Aspose.Words.Saving.HtmlSaveOptions.ExportFontResources Aspose.Words.Saving.HtmlSaveOptions.FontsFolder Aspose.Words.Saving.HtmlSaveOptions.FontSavingCallback

HtmlVersion

Specifies version of HTML standard that should be used when saving the document to HTML or MHTML. Default value is Aspose.Words.Saving.HtmlVersion.Xhtml.

public HtmlVersion HtmlVersion { get; set; }

Property Value

HtmlVersion

ImageResolution

Specifies the output resolution for images when exporting to HTML, MHTML or EPUB. Default is 96 dpi.

public int ImageResolution { get; set; }

Property Value

int

Remarks

This property effects raster images when Aspose.Words.Saving.HtmlSaveOptions.ScaleImageToShapeSize is true and effects metafiles exported as raster images. Some image properties such as cropping or rotation require saving transformed images and in this case transformed images are created in the given resolution.

See Also

HtmlSaveOptions.ScaleImageToShapeSize

ImageSavingCallback

Allows to control how images are saved when a document is saved to HTML, MHTML or EPUB.

public IImageSavingCallback ImageSavingCallback { get; set; }

Property Value

IImageSavingCallback

ImagesFolder

Specifies the physical folder where images are saved when exporting a document to HTML format. Default is an empty string.

public string ImagesFolder { get; set; }

Property Value

string

Remarks

When you save a Aspose.Words.Document in HTML format, Aspose.Words needs to save all images embedded in the document as standalone files. Aspose.Words.Saving.HtmlSaveOptions.ImagesFolder allows you to specify where the images will be saved and Aspose.Words.Saving.HtmlSaveOptions.ImagesFolderAlias allows to specify how the image URIs will be constructed.

If you save a document into a file and provide a file name, Aspose.Words, by default, saves the images in the same folder where the document file is saved. Use Aspose.Words.Saving.HtmlSaveOptions.ImagesFolder to override this behavior.

If you save a document into a stream, Aspose.Words does not have a folder where to save the images, but still needs to save the images somewhere. In this case, you need to specify an accessible folder in the Aspose.Words.Saving.HtmlSaveOptions.ImagesFolder property or provide custom streams via the Aspose.Words.Saving.HtmlSaveOptions.ImageSavingCallback event handler.

If the folder specified by Aspose.Words.Saving.HtmlSaveOptions.ImagesFolder doesn't exist, it will be created automatically.

Aspose.Words.Saving.HtmlSaveOptions.ResourceFolder is another way to specify a folder where images should be saved.

Aspose.Words.Saving.HtmlSaveOptions.ResourceFolder Aspose.Words.Saving.HtmlSaveOptions.ImagesFolderAlias Aspose.Words.Saving.HtmlSaveOptions.ImageSavingCallback

ImagesFolderAlias

Specifies the name of the folder used to construct image URIs written into an HTML document. Default is an empty string.

public string ImagesFolderAlias { get; set; }

Property Value

string

Remarks

When you save a Aspose.Words.Document in HTML format, Aspose.Words needs to save all images embedded in the document as standalone files. Aspose.Words.Saving.HtmlSaveOptions.ImagesFolder allows you to specify where the images will be saved and Aspose.Words.Saving.HtmlSaveOptions.ImagesFolderAlias allows to specify how the image URIs will be constructed.

If Aspose.Words.Saving.HtmlSaveOptions.ImagesFolderAlias is not an empty string, then the image URI written to HTML will be ImagesFolderAlias + <image file name>.

If Aspose.Words.Saving.HtmlSaveOptions.ImagesFolderAlias is an empty string, then the image URI written to HTML will be ImagesFolder + <image file name>.

If Aspose.Words.Saving.HtmlSaveOptions.ImagesFolderAlias is set to '.' (dot), then the image file name will be written to HTML without path regardless of other options.

Alternative way to specify the name of the folder to construct image URIs is to use Aspose.Words.Saving.HtmlSaveOptions.ResourceFolderAlias.

Aspose.Words.Saving.HtmlSaveOptions.ResourceFolderAlias Aspose.Words.Saving.HtmlSaveOptions.ImagesFolder Aspose.Words.Saving.HtmlSaveOptions.ImageSavingCallback

MetafileFormat

Specifies in what format metafiles are saved when exporting to HTML, MHTML, or EPUB. Default value is Aspose.Words.Saving.HtmlMetafileFormat.Png, meaning that metafiles are rendered to raster PNG images.

public HtmlMetafileFormat MetafileFormat { get; set; }

Property Value

HtmlMetafileFormat

Remarks

Metafiles are not natively displayed by HTML browsers. By default, Aspose.Words converts WMF and EMF images into PNG files when exporting to HTML. Other options are to convert metafiles to SVG images or to export them as is without conversion.

Some image transforms, in particular image cropping, will not be applied to metafile images if they are exported to HTML without conversion.

See Also

HtmlSaveOptions.ImageResolution, HtmlSaveOptions.ScaleImageToShapeSize

NavigationMapLevel

Specifies the maximum level of headings populated to the navigation map when exporting to EPUB, MOBI, or AZW3 formats. Default value is 3.

public int NavigationMapLevel { get; set; }

Property Value

int

Remarks

The navigation map allows user agents to provide an easy way of navigation through the document structure. Usually navigation points correspond to headings in the document. In order to populate headings up to level N assign this value to Aspose.Words.Saving.HtmlSaveOptions.NavigationMapLevel.

By default, three levels of headings are populated: paragraphs of styles Heading 1, Heading 2 and Heading 3. You can set this property to a value from 1 to 9 in order to request the corresponding maximum level. Setting it to zero will reduce the navigation map to only the document root or roots of document parts.

OfficeMathOutputMode

Controls how OfficeMath objects are exported to HTML, MHTML or EPUB. Default value is Aspose.Words.Saving.HtmlOfficeMathOutputMode.Image.

public HtmlOfficeMathOutputMode OfficeMathOutputMode { get; set; }

Property Value

HtmlOfficeMathOutputMode

ReplaceBackslashWithYenSign

Specifies whether backslash characters should be replaced with yen signs. Default value is false.

public bool ReplaceBackslashWithYenSign { get; set; }

Property Value

bool

Remarks

By default, Aspose.Words mimics MS Word’s behavior and doesn’t replace backslash characters with yen signs in generated HTML documents. However, previous versions of Aspose.Words performed such replacements in certain scenarios. This flag enables backward compatibility with previous versions of Aspose.Words.

ResolveFontNames

Specifies whether font family names used in the document are resolved and substituted according to Aspose.Words.Document.FontSettings when being written into HTML-based formats.

public bool ResolveFontNames { get; set; }

Property Value

bool

Remarks

By default, this option is set to false and font family names are written to HTML as specified in source documents. That is, Aspose.Words.Document.FontSettings are ignored and no resolution or substitution of font family names is performed.

If this option is set to true, Aspose.Words uses Aspose.Words.Document.FontSettings to resolve each font family name specified in a source document into the name of an available font family, performing font substitution as required.

ResourceFolder

Specifies a physical folder where all resources like images, fonts, and external CSS are saved when a document is exported to HTML. Default is an empty string.

public string ResourceFolder { get; set; }

Property Value

string

Remarks

Aspose.Words.Saving.HtmlSaveOptions.ResourceFolder is the simplest way to specify a folder where all resources should be written. Another way is to use individual properties Aspose.Words.Saving.HtmlSaveOptions.FontsFolder, Aspose.Words.Saving.HtmlSaveOptions.ImagesFolder, and Aspose.Words.Saving.HtmlSaveOptions.CssStyleSheetFileName.

Aspose.Words.Saving.HtmlSaveOptions.ResourceFolder has a lower priority than folders specified via Aspose.Words.Saving.HtmlSaveOptions.FontsFolder, Aspose.Words.Saving.HtmlSaveOptions.ImagesFolder, and Aspose.Words.Saving.HtmlSaveOptions.CssStyleSheetFileName. For example, if both Aspose.Words.Saving.HtmlSaveOptions.ResourceFolder and Aspose.Words.Saving.HtmlSaveOptions.FontsFolder are specified, fonts will be saved to Aspose.Words.Saving.HtmlSaveOptions.FontsFolder, while images and CSS will be saved to Aspose.Words.Saving.HtmlSaveOptions.ResourceFolder.

If the folder specified by Aspose.Words.Saving.HtmlSaveOptions.ResourceFolder doesn't exist, it will be created automatically.

Aspose.Words.Saving.HtmlSaveOptions.FontsFolder Aspose.Words.Saving.HtmlSaveOptions.ImagesFolder Aspose.Words.Saving.HtmlSaveOptions.CssStyleSheetFileName

ResourceFolderAlias

Specifies the name of the folder used to construct URIs of all resources written into an HTML document. Default is an empty string.

public string ResourceFolderAlias { get; set; }

Property Value

string

Remarks

Aspose.Words.Saving.HtmlSaveOptions.ResourceFolderAlias is the simplest way to specify how URIs for all resource files should be constructed. Same information can be specified for images and fonts separately via Aspose.Words.Saving.HtmlSaveOptions.ImagesFolderAlias and Aspose.Words.Saving.HtmlSaveOptions.FontsFolderAlias properties, respectively. However, there is no individual property for CSS.

Aspose.Words.Saving.HtmlSaveOptions.ResourceFolderAlias has lower priority than Aspose.Words.Saving.HtmlSaveOptions.FontsFolderAlias and Aspose.Words.Saving.HtmlSaveOptions.ImagesFolderAlias. For example, if both Aspose.Words.Saving.HtmlSaveOptions.ResourceFolderAlias and Aspose.Words.Saving.HtmlSaveOptions.FontsFolderAlias are specified, fonts' URIs will be constructed using Aspose.Words.Saving.HtmlSaveOptions.FontsFolderAlias, while URIs of images and CSS will be constructed using Aspose.Words.Saving.HtmlSaveOptions.ResourceFolderAlias.

If Aspose.Words.Saving.HtmlSaveOptions.ResourceFolderAlias is empty, the Aspose.Words.Saving.HtmlSaveOptions.ResourceFolder property value will be used to construct resource URIs.

If Aspose.Words.Saving.HtmlSaveOptions.ResourceFolderAlias is set to '.' (dot), resource URIs will contain file names only, without any path.

Aspose.Words.Saving.HtmlSaveOptions.ResourceFolder Aspose.Words.Saving.HtmlSaveOptions.FontsFolderAlias Aspose.Words.Saving.HtmlSaveOptions.ImagesFolderAlias

SaveFormat

Specifies the format in which the document will be saved if this save options object is used. Can be Aspose.Words.SaveFormat.Html, Aspose.Words.SaveFormat.Mhtml, Aspose.Words.SaveFormat.Epub, Aspose.Words.SaveFormat.Azw3 or Aspose.Words.SaveFormat.Mobi.

public override SaveFormat SaveFormat { get; set; }

Property Value

SaveFormat

ScaleImageToShapeSize

Specifies whether images are scaled by Aspose.Words to the bounding shape size when exporting to HTML, MHTML or EPUB. Default value is true.

public bool ScaleImageToShapeSize { get; set; }

Property Value

bool

Remarks

An image in a Microsoft Word document is a shape. The shape has a size and the image has its own size. The sizes are not directly linked. For example, the image can be 1024x786 pixels, but shape that displays this image can be 400x300 points.

In order to display an image in the browser, it must be scaled to the shape size. The Aspose.Words.Saving.HtmlSaveOptions.ScaleImageToShapeSize property controls where the scaling of the image takes place: in Aspose.Words during export to HTML or in the browser when displaying the document.

When Aspose.Words.Saving.HtmlSaveOptions.ScaleImageToShapeSize is true, the image is scaled by Aspose.Words using high quality scaling during export to HTML. When Aspose.Words.Saving.HtmlSaveOptions.ScaleImageToShapeSize is false, the image is output with its original size and the browser has to scale it.

In general, browsers do quick and poor quality scaling. As a result, you will normally get better display quality in the browser and smaller file size when Aspose.Words.Saving.HtmlSaveOptions.ScaleImageToShapeSize is true, but better printing quality and faster conversion when Aspose.Words.Saving.HtmlSaveOptions.ScaleImageToShapeSize is false.

In addition to shapes containing individual raster images, this option also affects group shapes consisting of raster images. If Aspose.Words.Saving.HtmlSaveOptions.ScaleImageToShapeSize is false and a group shape contains raster images whose intrinsic resolution is higher than the value specified in Aspose.Words.Saving.HtmlSaveOptions.ImageResolution, Aspose.Words will increase rendering resolution for that group. This allows to better preserve quality of grouped high resolution images when saving to HTML.

See Also

HtmlSaveOptions.ImageResolution

TableWidthOutputMode

Controls how table, row and cell widths are exported to HTML, MHTML or EPUB. Default value is Aspose.Words.Saving.HtmlElementSizeOutputMode.All.

public HtmlElementSizeOutputMode TableWidthOutputMode { get; set; }

Property Value

HtmlElementSizeOutputMode

Remarks

In the HTML format, table, row and cell elements (<table>, <tr>, <th>, <td>) can have their widths specified either in relative (percentage) or in absolute units. In a document in Aspose.Words, tables, rows and cells can have their widths specified using either relative or absolute units too.

When you convert a document to HTML using Aspose.Words, you might want to control how table, row and cell widths are exported to affect how the resulting document is displayed in the visual agent (e.g. a browser or viewer).

Use this property as a filter to specify what table widths values are exported into the destination document. For example, if you are converting a document to EPUB and intend to view the document on a mobile reading device, then you probably want to avoid exporting absolute width values. To do this you need to specify the output mode Aspose.Words.Saving.HtmlElementSizeOutputMode.RelativeOnly or Aspose.Words.Saving.HtmlElementSizeOutputMode.None so the viewer on the mobile device can layout the table to fit the width of the screen as best as it can.