←Select platform

UseStyles Property

Summary
Consider font styles when creating bookmarks in the PDF document.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public bool UseStyles { get; set; } 
@property (nonatomic, assign) BOOL useStyles; 
public boolean getUseStyles() 
public void setUseStyles(boolean useStyles) 
public: 
property bool UseStyles { 
   bool get(); 
   void set (    bool ); 
} 
UseStyles # get and set (PdfAutoBookmark) 

Property Value

true to allow checking for font styles such as bold or italic while creating the bookmark in the PDF document using the automatic bookmarking feature, otherwise; false The default value is false.

Remarks

Autobookmarking (automatic bookmarking) creates bookmark items based on font information whenever UseStyles is true. This means that different font styles are considered to be different. For example, when UseStyles is true, Arial bold and Arial are handled as two different fonts.

Example
C#
using Leadtools.Document.Writer; 
using Leadtools.Ocr; 
using Leadtools; 
using Leadtools.Codecs; 
 
 
public void PdfAutoBookmarksExample() 
{ 
   var inputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.docx"); 
   var outputFileName = Path.Combine(LEAD_VARS.ImagesDir, "AutoBookmarks.pdf"); 
 
   // 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 PDF options to enable generating auto bookmarks 
   var pdfOptions = docWriter.GetOptions(DocumentFormat.Pdf) as PdfDocumentOptions; 
 
   pdfOptions.AutoBookmarksEnabled = true; 
 
   pdfOptions.TotalBookmarkLevels = 2; 
   var firstLevel = new PdfAutoBookmark(); 
   firstLevel.FontFaceName = "Arial"; 
   firstLevel.FontHeight = 20; 
   pdfOptions.AutoBookmarks.Add(firstLevel); 
   var secondLevel = new PdfAutoBookmark(); 
   secondLevel.FontFaceName = "Arial"; 
   secondLevel.FontHeight = 12; 
   secondLevel.UseStyles = true; // font size is not enough for this level, so we'll use styles too 
   secondLevel.BoldStyle = true; 
   secondLevel.ItalicStyle = false; 
   pdfOptions.AutoBookmarks.Add(secondLevel); 
 
   docWriter.SetOptions(DocumentFormat.Pdf, pdfOptions); 
 
   // Create a new PDF document 
   Debug.WriteLine("Creating new PDF document: {0}", outputFileName); 
   docWriter.BeginDocument(outputFileName, DocumentFormat.Pdf); 
 
   // 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 PDF file on disk 
   docWriter.EndDocument(); 
   codecs.Dispose(); 
       
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
Requirements

Target Platforms

Help Version 23.0.2024.8.21
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.