BaseTextExtractor Class
Free Trial Web API version Licensing Request A Quote
HAVE QUESTIONS OR NEED HELP?SUBMIT THE SUPPORT REQUEST FORM or write email toSUPPORT@BYTESCOUT.COM
Defines a base class for text-related PDF extractors.
Inheritance Hierarchy
Bytescout.PDFExtractorBaseExtractor
Bytescout.PDFExtractorBaseTextExtractor
More...Namespace:Bytescout.PDFExtractor
Assembly: Bytescout.PDFExtractor (in Bytescout.PDFExtractor.dll) Version: 13.4.0.4760-master
Syntax
public abstract class BaseTextExtractor : BaseExtractor, IBaseTextExtractor, IBaseOCRExtractor
The BaseTextExtractor type exposes the following members.
Constructors
Name | Description | |
---|---|---|
BaseTextExtractor | Constructs the object. | |
BaseTextExtractor(String, String) | Constructs the object and sets registration name and key. |
Properties
Name | Description | |
---|---|---|
AutoAlignColumnsToHeader | Sets whether to align text in the columns to the header. | |
CheckPermissions | Defines whether to respect permissions set by document owner. If True, extractor throws exception when the extraction is prohibited. IMPORTANT: THIS OPTION HAVE TO BE ENABLED AND SET TO "TRUE" TO RESPECT OWNERS OF PDF DOCUMENTS. IF YOU SET IT TO FALSE TO IGNORE PERMISSIONS WHICH ARE SET IN PDF DOCUMENT THEN YOU ARE SOLELY LIABLE FOR THIS ACTION AND ANY COPYRIGHT OR OTHER VIOLATIONS AT YOUR OWN RISK. BYTESCOUT IS NOT LIABLE FOR ANY DAMAGES, LOSSES, COPYRIGHT INFRINGEMENTS OR ANY OTHER CONSEQUENCES CAUSED BY IGNORING PERMISSIONS OF PDF DOCUMENT. BY CHANGING THIS OPTION YOU ARE CONFIRMING YOU ARE UNDERSTANDING ALL WRITTEN ABOVE AND DOING IT AT YOUR OWN RISK. (Inherited from BaseExtractor.) | |
ColumnDetectionByTextAlignment | Suggests the extractor the visual text alignment in table cells. It helps to detect columns when tables don't have vertical separating lines between columns and the columns are formed by text alignment. | |
ColumnDetectionMode | Sets how columns are detected. Default is 'ContentGroupsAndBorders' - columns are detected by grouping of text objects and by vertical vector lines. | |
ComHelpers | Set of utility functions and properties to use from COM/ActiveX. (Inherited from BaseExtractor.) | |
ConsiderBackgroundColors | Consider background colors under text objects when detecting table structure. It can be useful for striped tables, but may degrade extraction quality on scanned documents because of uneven image background. Default is false. | |
ConsiderFontColors | Consider font colors in document text when detecting table structure. Default is false. | |
ConsiderFontNames | Consider font names in document text when detecting table structure. Default is false. | |
ConsiderFontSizes | Consider font sizes in document text when detecting table structure. Default is false. | |
ConsiderHorizontalBorders | Consider horizontal borders between text objects when detecting table structure and merging objects. Default is true. | |
ConsiderVerticalBorders | Consider vertical borders between text objects when detecting table structure and merging objects. Default is true. | |
ContentType | Returns content type of PDF document: normal document, portfolio or XFA form. To extract files from PDF portfolio use AttachmentExtractor class. To extract XFA form content use XFAFormExtractor class. (Inherited from BaseExtractor.) | |
CustomExtractionColumns | Allows to override automatic columns detection with custom columns coordinates. | |
DetectLinesInsteadOfParagraphs | Obsolete. Lines detection option. Obsolete: Use LineGroupingMode instead. | |
DetectNewColumnBySpacesRatio | Space ratio between words. Large spacing is treated as column separator. Using this parameter you can control the column detection. | |
EmbeddedFileCount | Obsolete. Property is disabled to speed up the document loading. Use AttachmentExtractor to work with attachments. (Inherited from BaseExtractor.) | |
EnableTextAnalysis | Enables or disables extracted text analysis. Check TextAnalysisResults after the extraction for analysis results. | |
Encrypted | Gets whether the document is encrypted. (Inherited from BaseExtractor.) | |
ExtractAnnotations | Sets whether to extract text from annotation objects. Default is true. | |
ExtractColumnByColumn | Sets whether we should reconstruct table structure or extract text objects as they go in the PDF document stream. Default is true. | |
ExtractInvisibleText | Sets whether to extract invisible text from a PDF document. | |
ExtractionArea | Sets the extraction area by coordinates and dimensions (left, top, width, height). (Inherited from BaseExtractor.) | |
ExtractionAreaRect | Sets the extraction area by rectangle. (Inherited from BaseExtractor.) | |
ExtractionAreaUsageMode | Gets or sets how to use the ExtractionArea: whether to extract any object intersecting with the area or only objects completely located inside the area. (Inherited from BaseExtractor.) | |
ExtractionColumns | Contains columns detected from last processed document page. | |
ExtractShadowLikeText | Sets whether to extract shadow-like text from a PDF document (when the same text is drawn twice with small offset). Default is 'true' - includes all decoded text, regardless of its appearance. | |
IsDocumentLoaded | Get the document loaded state. (Inherited from BaseExtractor.) | |
LicenseInfo | Gets license information. (Inherited from BaseExtractor.) | |
LineGroupingMode | Sets how lines are grouped into paragraphs. Default is None (no line grouping is performed). | |
NormalizeText | Set whether the extracted text should be normalized. Default is false. | |
OCRAutoModeMinExistingTextLength | Applies to OCRMode.Auto only. Sets the minimal total length of normal text objects on the current page to decide whether to perform OCR or not. If the length of the text is less than this value then extractor will use OCR for this page. Otherwise it extracts the existing normal text objects only. | |
OCRBlackList | A set of characters not allowed to be recognized from scanned document. The resulting text will only contain characters that are not in this list. This helps improve uncertain recognition. | |
OCRCacheMode | Sets caching of OCR results. Default is Off (no caching). In WholePage caching mode you can save processing time as the SDK will check if need to re-run OCR on the page or it can just pull results from previously cached OCR results. | |
OCRCorrections | A set of corrections automatically applied to recognized text to fix repeating recognition errors. | |
OCRDetectLines | Sets whether to detect horizontal and vertical lines during OCR. They help to detect the table structure in scanned documents. Default is false. | |
OCRDetectPageRotation | Sets whether to detect scanned page rotation. Slightly slows down the processing. | |
OCRDisableAutoSegmentation | Sets whether to disable the automatic segmentation. All pages will be treated as containing sparse text (as a typical document such as an invoice). | |
OCRImagePreprocessingFilters | A set of corrections automatically applied to recognized text to fix repeating recognition errors. | |
OCRLanguage | Language of OCR (Optical Character Recognition). The valid values are:
Download more languages at https://github.com/bytescout/ocrdata. | |
OCRLanguageDataFolder | Folder containing OCR language data files. | |
OCRMaximizeCPUUtilization | Gets or sets maximum OCR performance using Intel OpenMP (if available) to accelerate to approximately 30%. Default is false. | |
OCRMode | Enables use of the OCR (Optical Character Recognition) which allows you to recognize text from images embedded in PDF pages. Set the language using the OCRLanguage property. This option requires Bytescout.PDFExtractor.OCRExtension.dll assembly reference and relevant language files in OCRLanguageDataFolder folder. The SDK is shipped with language files for English, French, German and Spanish. You can download more languages at https://github.com/bytescout/ocrdata. | |
OCROverallConfidence | Gets overall OCR confidence. This value is calculated after the extraction is performed. | |
OCRPageCount | Gets count of processed pages for which OCR was performed. This value is calculated after the extraction is finished. | |
OCRResolution | Resolution of OCR (Optical Character Recognition). Default is 300 DPI. | |
OCRWhiteList | A set of characters allowed to be recognized from scanned document. Only characters from this list will appear in the result text. This helps improve uncertain recognition. | |
PageDataCaching | Controls page data caching behavior. (Inherited from BaseExtractor.) | |
Password | PDF document password. (Inherited from BaseExtractor.) | |
PreserveFormattingOnTextExtraction | Sets whether to preserve the text formatting on the extraction. | |
Profiles | Comma-separated list of profiles to apply to the extractor. Profiles must be previously loaded. (Inherited from BaseExtractor.) | |
RegistrationKey | Registration key. (Inherited from BaseExtractor.) | |
RegistrationName | Registration name. (Inherited from BaseExtractor.) | |
RemoveHyphenation | Sets whether to automatically remove hyphenations in end of lines (works when is true). | |
RotationAngle | Sets whether to rotate document pages to specified angle before the extraction. | |
RTLTextAutoDetectionEnabled | Enables RTL (Right-To-Left) text auto detection. Default is true. | |
ShrinkMultipleSpaces | Replaces multiple spaces in text objects with a single space. Multiple spaces affect column detection, so removing them may improve the result. Default is false. | |
TableXMinIntersectionRequiredInPercents | During the reconstruction of table structure, sets how much of the cell rectangle should intersect (by X coordinate axis) with the previous cell to treat both cells belong to the same row. | |
TableYMinIntersectionRequiredInPercents | During the reconstruction of table structure, sets how much of the cell rectangle should intersect (by Y coordinate axis) with the previous cell to treat both cells belong to the same column. | |
TextAnalysisCorruptedTextThreshold | The criterion of detection of the corrupted text used in text analysis. Default is 0.5. | |
TextAnalysisResults | Results of the text analysis. Enable the analysis using EnableTextAnalysis property. | |
TextEncodingCodePage | Sets the default text encoding. Default encoding is "iso-8859-1". | |
TrimSpaces | Sets whether to remove trailing and ending spaces from the text of table cells. Default is true. | |
Unwrap | Sets whether to unwrap the contents of a multiline table cell into a single line. Default is true. | |
Version | Gets the component version number. (Inherited from BaseExtractor.) | |
XCoordinateToleranceFactor | Sets X coordinate tolerance to use when constructing table structure of PDF page. | |
YCoordinateToleranceFactor | Sets Y coordinate tolerance to use when constructing table structure of PDF page. |
Methods
Name | Description | |
---|---|---|
AddFilter(String, Boolean, Boolean) | Adds a filter to remove a text from extracted data. | |
AddFilter(String, Int32, Boolean) | Adds filter to exclude text objects with specified attributes. | |
AddFilter(String, Int32, Color, Boolean) | Adds filter to exclude text objects with specified attributes. | |
AddFilter(String, String, Boolean, Boolean) | Adds a filter to replace a text in extracted data. | |
AddFilter(String, Int32, Int32, Int32, Int32, Boolean) | Adds filter to exclude text objects with specified attributes. | |
CreateProfile(String, Boolean, Boolean, Boolean) | Creates JSON profile will all extractor properties with current values. (Inherited from BaseExtractor.) | |
CreateProfile(String, String, Boolean, Boolean, Boolean) | Creates JSON profile will all extractor properties with current values. (Inherited from BaseExtractor.) | |
Dispose | Releases the unmanaged resources used by the instance and optionally releases the managed resources. (Inherited from BaseExtractor.) | |
DisposePage | Disposes the page object. Uses this method carefully to destroy the page object that should not be used further. Useful to free allocated memory when processing huge PDF documents. | |
Equals | (Inherited from Object.) | |
Finalize | (Inherited from Object.) | |
FireParsingError | (Inherited from BaseExtractor.) | |
FireProgressChanged | (Inherited from BaseExtractor.) | |
GetHashCode | (Inherited from Object.) | |
GetPageCount | Returns document page count. (Inherited from BaseExtractor.) | |
GetPageRect_Height | Gets the specified page height. (Inherited from BaseExtractor.) | |
GetPageRect_Left | Gets the specified page left coordinate. (Inherited from BaseExtractor.) | |
GetPageRect_Top | Gets the specified page top coordinate. (Inherited from BaseExtractor.) | |
GetPageRect_Width | Gets the specified page width. (Inherited from BaseExtractor.) | |
GetPageRectangle(Int32) | Gets the page rectangle in PDF Points (1 Point = 1/72 in.). (Inherited from BaseExtractor.) | |
GetPageRectangle(Int32, Boolean) | Gets the page rectangle in PDF Points (1 Point = 1/72 in.). (Inherited from BaseExtractor.) | |
GetPageRotationAngle | Returns the rotation angle of specified page. (Inherited from BaseExtractor.) | |
GetPreprocessedPagePreview | Returns preview image of document page with preprocessing filters applied. | |
GetType | (Inherited from Object.) | |
IsEncrypted | Gets the document encrypted state. (Inherited from BaseExtractor.) | |
IsOCRRecommendedForPage | Detects whether OCR is recommended for specified page. OCR (Optical Character Recognition) is recommended when pages has no text objects bat has an image that might contain text. | |
LoadAndApplyProfiles | Loads profiles from JSON string and automatically applies them. Note that profiles containing detection keywords will be deferred until the extraction. (Inherited from BaseExtractor.) | |
LoadDocumentFromFile | Loads PDF document from specified file. (Inherited from BaseExtractor.) | |
LoadDocumentFromStream | Loads PDF document from provided stream. (Inherited from BaseExtractor.) | |
LoadDocumentFromVariant | Loads PDF document from byte array presented as array of Variant or Byte objects ('Variant()' or 'Byte()'). This is COM/ActiveX-compatible version of the method LoadDocumentFromStream(Stream) for in-memory processing of PDF files. (Inherited from BaseExtractor.) | |
LoadProfiles | Loads profiles from JSON file. (Inherited from BaseExtractor.) | |
LoadProfilesFromString | Loads profiles from JSON string. (Inherited from BaseExtractor.) | |
MemberwiseClone | (Inherited from Object.) | |
PerformTextAnalysis | ||
Reset | Resets the instance and disposes internal resources. Also automatically invoked by Dispose. (Overrides BaseExtractorReset.) | |
ResetBaseExtractionData | ||
ResetExtractionArea | Resets the extraction area to the full page. (Inherited from BaseExtractor.) | |
ResetFilters | Reset text filters. | |
SavePreprocessedPagePreview | Saves preview image of document page with preprocessing filters applied. Image is saved in PNG format. | |
SetCustomExtractionColumns | Helper method to set CustomExtractionColumns property when using the extractor though COM from VC++ VB, VBA, VBScript, or Delphi. | |
SetExtractionArea(RectangleF) | Sets the extraction area by rectangle. (Inherited from BaseExtractor.) | |
SetExtractionArea(Double, Double, Double, Double) | Sets the extraction area by coordinates and dimensions. (Inherited from BaseExtractor.) | |
SetExtractionArea(Single, Single, Single, Single) | Sets the extraction area by coordinates and dimensions. (Inherited from BaseExtractor.) | |
ToString | (Inherited from Object.) |
Events
Name | Description | |
---|---|---|
ParsingError | Raised on PDF document parsing errors. This usually indicates a damaged document. (Inherited from BaseExtractor.) | |
PasswordRequired | Occurs when the password required to decrypt the document. (Inherited from BaseExtractor.) | |
ProgressChanged | Raised for each reported progress value. Allows to cancel the processing. (Inherited from BaseExtractor.) |
Fields
Name | Description | |
---|---|---|
ExtractionAreaInternal | (Inherited from BaseExtractor.) |
See Also
Reference
Inheritance Hierarchy
Bytescout.PDFExtractorBaseExtractor
Bytescout.PDFExtractorBaseTextExtractor
Bytescout.PDFExtractorCSVExtractor
Bytescout.PDFExtractorJSONExtractor
Bytescout.PDFExtractorStructuredExtractor
Bytescout.PDFExtractorTableDetector
Bytescout.PDFExtractorTextExtractor
Bytescout.PDFExtractorXFDFExtractor
Bytescout.PDFExtractorXLSExtractor
Bytescout.PDFExtractorXMLExtractor