LEADTOOLSフォーム(Leadtools.Forms.DocumentWritersアセンブリ)

フレームを表示

PdfAutoBookmark構造体








メンバ 
Adobe Portable Document Format(PDF)ドキュメントを作成するとき、自動的にドキュメントのフォント情報に基づくブックマーク作成時に使うオプション。
オブジェクトモデル
構文
[DataContractAttribute()]
[SerializableAttribute()]
public struct PdfAutoBookmark : System.ValueType 
'Declaration
 
<DataContractAttribute()>
<SerializableAttribute()>
Public Structure PdfAutoBookmark 
   Inherits System.ValueType
'Usage
 
Dim instance As PdfAutoBookmark
[DataContractAttribute()]
[SerializableAttribute()]
public class PdfAutoBookmark
@interface LTPdfAutoBookmark : NSObject <NSCopying, NSCoding>
public class PdfAutoBookmark
JAVASCRIPT_NOSTRUCTS
[DataContractAttribute()]
[SerializableAttribute()]
public value class PdfAutoBookmark : public System.ValueType 
解説

DocumentFormat.Pdf形式を用いてドキュメントを保存するとき、PdfDocumentOptionsPdfAutoBookmark構造体を使います。

このクラスはブックマークの作成を考慮に入れます。そして、それはドキュメントの部分を速いアクセスの対象に選ぶのに用いられることができます。これを実現するには、セクションやサブセクションを含むアウトライン形式または章形式によって文書が一貫して書式設定されていて、各セクションを示す固有のフォントが各レベルに指定されている必要があります。

ドキュメントライタ自動ブックマーク機能は、その目次のために一意なフォントを持っているかなり体系化されたドキュメントのために、自動的にブックマークを作成します。自動ブックマーク機能を適切に機能させるためには、この種の規則を念頭に置いて文書を構成する必要があります。

たとえば、次のような目次を持つ文書があるとします。

ドキュメントのためにブックマークを設定するために、最初は、望むブックマークのレベルの数を設定しました。「Levels」は、ブックマークの階層を結果として生じるブックマーク輪郭線で表します。上記の例では、3つのレベルがブックマークになるため、レベル数3をPdfDocumentOptions.TotalBookmarkLevelsプロパティに設定する必要があります。

自動ブックマークを生成するために、PdfDocumentOptions.AutoBookmarksEnabledtrueに最初に設定しなければなりません。

最初のレベルのブックマークのために、以下を設定しなければなりません:「Arial」へのFontFaceNametrueへのUseStylestrueへのBoldStylefalseへのItalicStyleと17へのFontHeight

第2のレベルのブックマーク(以下ならば)のために:「Tahoma」へのFontFaceNamefalseへのUseStylesと13と等しいFontHeight

第3のレベルのブックマークのために、以下を設定しなければなりません:「タイムズ新しいローマン」へのFontFaceNametrueへのUseStylesfalseへのBoldStyletrueへのItalicStyleと12と等しいFontHeight

メモ:

この形式がDocumentWriter.InsertPageを呼び出すことをサポートしないことに注意すべきです。

サンプル

このサンプルは、いろいろなサポートされたオプションを用いて新しいAdobe Portable Document Formatドキュメント(PDF)ファイルを作成します。

Copy Code  
Imports Leadtools.Forms.DocumentWriters
Imports Leadtools.Forms.Ocr
Imports Leadtools
Imports Leadtools.Codecs

      
Public Sub PdfDocumentOptionsExample()
   Dim inputFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.docx")
   Dim outputFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Example.pdf")
   ' Setup a new RasterCodecs object
   Dim codecs As New RasterCodecs()
   codecs.Options.RasterizeDocument.Load.Resolution = 300

   ' Get the number of pages in the input document
   Dim pageCount As Integer = codecs.GetTotalPages(inputFileName)

   ' Create a new instance of the LEADTOOLS Document Writer
   Dim docWriter As New DocumentWriter()

   ' Change the PDF options
   Dim pdfOptions As PdfDocumentOptions = DirectCast(docWriter.GetOptions(DocumentFormat.Pdf), PdfDocumentOptions)
   pdfOptions.DocumentType = PdfDocumentType.Pdf
   pdfOptions.FontEmbedMode = DocumentFontEmbedMode.None
   pdfOptions.ImageOverText = False
   pdfOptions.Linearized = False
   pdfOptions.Title = "Add your title here"
   pdfOptions.Subject = "Add your subject here"
   pdfOptions.Keywords = "Add your keywords here"
   pdfOptions.Author = "Add author name here"
   pdfOptions.Protected = True
   pdfOptions.UserPassword = "User password"
   pdfOptions.OwnerPassword = "Owner password"
   pdfOptions.EncryptionMode = PdfDocumentEncryptionMode.RC128Bit
   pdfOptions.PrintEnabled = False
   pdfOptions.HighQualityPrintEnabled = True
   pdfOptions.CopyEnabled = False
   pdfOptions.EditEnabled = True
   pdfOptions.AnnotationsEnabled = True
   pdfOptions.AssemblyEnabled = False
   pdfOptions.OneBitImageCompression = OneBitImageCompressionType.Flate
   pdfOptions.ColoredImageCompression = ColoredImageCompressionType.FlateJpeg
   pdfOptions.QualityFactor = 2

   ' Use default resolution
   pdfOptions.DocumentResolution = 0
   pdfOptions.PageRestriction = DocumentPageRestriction.Relaxed

   ' Setup empty page size (Letter size)
   pdfOptions.EmptyPageWidth = 8.5
   pdfOptions.EmptyPageHeight = 11
   pdfOptions.EmptyPageResolution = 300

   docWriter.SetOptions(DocumentFormat.Pdf, pdfOptions)

   ' Create a new PDF document
   Console.WriteLine("Creating new PDF document: {0}", outputFileName)
   docWriter.BeginDocument(outputFileName, DocumentFormat.Pdf)

   ' Loop through all the pages
   For pageNumber As Integer = 1 To pageCount
      ' Get the page as SVG
      Console.WriteLine("Loading page {0}", pageNumber)
      Dim page As New DocumentSvgPage()
      page.SvgDocument = codecs.LoadSvg(inputFileName, pageNumber, Nothing)

      ' Add the page
      Console.WriteLine("Adding page {0}", pageNumber)
      docWriter.AddPage(page)

      page.SvgDocument.Dispose()
   Next

   ' Finally finish writing the PDF file on disk
   docWriter.EndDocument()
   codecs.Dispose()
End Sub
using Leadtools.Forms.DocumentWriters;
using Leadtools.Forms.Ocr;
using Leadtools;
using Leadtools.Codecs;

public void PdfDocumentOptionsExample()
{
   var inputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.docx");
   var outputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Example.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
   var pdfOptions = docWriter.GetOptions(DocumentFormat.Pdf) as PdfDocumentOptions;
   pdfOptions.DocumentType = PdfDocumentType.Pdf;
   pdfOptions.FontEmbedMode = DocumentFontEmbedMode.None;
   pdfOptions.ImageOverText = false;
   pdfOptions.Linearized = false;
   pdfOptions.Title = "Add your title here";
   pdfOptions.Subject = "Add your subject here";
   pdfOptions.Keywords = "Add your keywords here";
   pdfOptions.Author = "Add author name here";
   pdfOptions.Protected = true;
   pdfOptions.UserPassword = "User password";
   pdfOptions.OwnerPassword = "Owner password";
   pdfOptions.EncryptionMode = PdfDocumentEncryptionMode.RC128Bit;
   pdfOptions.PrintEnabled = false;
   pdfOptions.HighQualityPrintEnabled = true;
   pdfOptions.CopyEnabled = false;
   pdfOptions.EditEnabled = true;
   pdfOptions.AnnotationsEnabled = true;
   pdfOptions.AssemblyEnabled = false;
   pdfOptions.OneBitImageCompression = OneBitImageCompressionType.Flate;
   pdfOptions.ColoredImageCompression = ColoredImageCompressionType.FlateJpeg;
   pdfOptions.QualityFactor = 2;

   // Use default resolution
   pdfOptions.DocumentResolution = 0;
   pdfOptions.PageRestriction = DocumentPageRestriction.Relaxed;

   // Setup empty page size (Letter size)
   pdfOptions.EmptyPageWidth = 8.5;
   pdfOptions.EmptyPageHeight = 11;
   pdfOptions.EmptyPageResolution = 300;

   docWriter.SetOptions(DocumentFormat.Pdf, pdfOptions);

   // Create a new PDF document
   Console.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
      Console.WriteLine("Loading page {0}", pageNumber);
      var page = new DocumentSvgPage();
      page.SvgDocument = codecs.LoadSvg(inputFileName, pageNumber, null);

      // Add the page
      Console.WriteLine("Adding page {0}", pageNumber);
      docWriter.AddPage(page);

      page.SvgDocument.Dispose();
   }

   // Finally finish writing the PDF file on disk
   docWriter.EndDocument();
   codecs.Dispose();
}
必要条件

ターゲットプラットホーム

参照

参照

PdfAutoBookmarkメンバ
Leadtools.Forms.DocumentWriters名前空間
DocumentWriterクラス
LEADTOOLSドキュメントライタでのプログラミング
アプリケーションに含まれるファイル
特殊なLEAD機能のアンロック

Leadtools.Forms.DocumentWritersは、DocumentまたはMedicalツールキットのライセンスと、解除キーが必要です。詳細は、以下を参照してください。Imaging Pro/Document/Medicalの機能