Provides support for loading and creating Document objects as well as managing the global cache.
public static class DocumentFactory
The main class used for the LEADTOOLS Document class library is LEADDocument. This class abstracts the internal implementation to provide unified properties and methods to access the internal document. Users can create a new document or load existing documents from disk file or a URL.
Documents cannot be created directly. Instead, use the static DocumentFactory methods to obtain a LEADDocument instance, as follows:
Member | Description |
---|---|
Loads a document from existing data stored in a disk file. |
|
Loads a document from existing data stored in a remote URI. |
|
Loads a document asynchronously from an existing data stored in remote URI. |
|
Loads a document from existing data stored in a stream. |
|
Create |
Creates a new empty virtual document. |
MimeTypes |
MIME type whitelisting support. |
Global template used when loading and saving raster and SVG images. |
These methods, when combined with the ObjectCache, provide the following extra functionality:
Member | Description |
---|---|
The global LEADTOOLS ObjectCache object responsible for managing cache items and expiration policies. The cache can be stored in this value (if the system requires the use of a single global cache) or a new instance is passed directly to the various uploading, loading and saving methods to use distinct or shared caches with each document. |
|
Creates a new empty document. |
|
Loads a previously saved document from the cache. |
|
Deletes a document from the cache. |
|
Retrieves information about a document in the cache. |
|
BeginUpload, UploadDocument, UploadAnnotations and AbortUploadDocument |
Supports uploading a document to the cache system used by the factory. |
Supports uploading a document to the cache system used by the factory. |
|
Clones (creates a copy) of an existing document in the cache. |
using Leadtools;
using Leadtools.Caching;
using Leadtools.Document;
public void DocumentFactoryExample()
{
var options = new LoadDocumentOptions();
using (var document = DocumentFactory.LoadFromFile(Path.Combine(LEAD_VARS.ImagesDir, "Leadtools.pdf"), options))
{
PrintOutDocumentInfo(document);
}
}
public void PrintOutDocumentInfo(LEADDocument document)
{
Console.WriteLine("General");
Console.WriteLine(" DocumentId:" + document.DocumentId);
if (document.Uri != null)
Console.WriteLine(" Uri:" + document.Uri);
Console.WriteLine(" Name:" + document.Name);
Console.WriteLine(" CacheStatus:" + document.CacheStatus);
Console.WriteLine(" LastCacheSyncTime:" + document.LastCacheSyncTime);
Console.WriteLine(" IsReadOnly:" + document.IsReadOnly);
Console.WriteLine(" IsLocal:" + document.IsLocal);
Console.WriteLine(" MimeType:" + document.MimeType);
Console.WriteLine(" IsEncrypted:" + document.IsEncrypted);
Console.WriteLine(" IsDecrypted:" + document.IsDecrypted);
Console.WriteLine(" UserData:" + document.UserData);
Console.WriteLine("Cache");
Console.WriteLine(" HasCache:" + document.HasCache);
Console.WriteLine(" AutoDeleteFromCache:" + document.AutoDeleteFromCache);
Console.WriteLine("Metadata");
foreach (var item in document.Metadata)
Console.WriteLine(" {0} {1}", item.Key, item.Value);
Console.WriteLine("Documents");
Console.WriteLine(" Count:" + document.Documents.Count);
foreach (var childDocument in document.Documents)
{
Console.WriteLine(" Name:" + childDocument.Name);
}
Console.WriteLine("Pages");
Console.WriteLine(" Count:" + document.Pages.Count);
for (var pageNumber = 1; pageNumber <= document.Pages.Count; pageNumber++)
{
var page = document.Pages[pageNumber - 1];
Console.WriteLine(" PageNumber:" + pageNumber);
Console.WriteLine(" OriginalPageNumber:" + page.OriginalPageNumber);
Console.WriteLine(" OriginalDocumentName:" + page.Document.Name);
Console.WriteLine(" Size:{0}", page.Size);
}
Console.WriteLine("--------");
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";
}
Loading Using LEADTOOLS Document Library
Creating Documents with LEADTOOLS Document Library
Document Library Coordinate System
Loading Encrypted Files Using the Document Library
Parsing Text with the Document Library
Barcode processing with the Document Library
Using LEADTOOLS Document Viewer