Leadtools.Forms.Ocr Namespace > IOcrDocumentManager Interface : SetFontNames Method |
void SetFontNames( string languageName, string[] fontNames )
'Declaration Sub SetFontNames( _ ByVal languageName As String, _ ByVal fontNames() As String _ )
'Usage Dim instance As IOcrDocumentManager Dim languageName As String Dim fontNames() As String instance.SetFontNames(languageName, fontNames)
void SetFontNames( string languageName, string[] fontNames )
- (BOOL)setFontNames:(NSString*)languageName fontNames:(NSArray*)fontNames error:(NSError**)outError;
public void setFontNames(String languageName, String[] fontNames)
function Leadtools.Forms.Ocr.IOcrDocumentManager.SetFontNames( languageName , fontNames )
void SetFontNames( String^ languageName, array<String^>^ fontNames )
Use GetFontNames and SetFontNames to get/set the fonts used in the final recognized document (PDF, DOC, HTML, etc). The fonts will not be used when the final document format is text.
The OCR engine uses six different fonts when creating the final output document as follows. The following table shows the array index and the font description:
Index | Description |
---|---|
0 | The font used with proportional serif characters |
1 | The font used with proportional sans-serif characters |
2 | The font used with monospaced serif characters |
3 | The font used with monospaced sans-serif characters |
4 | The font used with ICR (hand-written) characters |
5 | The font used with MICR (check font) characters |
The OcrCharacter.FontStyle member of each character returned in IOcrPage.GetRecognizedCharacters determines which font to use with the character. If the zone is ICR or MICR (the OcrZone.RecognitionModule member is OcrZoneRecognitionModule.Micr, OcrZoneRecognitionModule.IcrNumeral or OcrZoneRecognitionModule.IcrCharacter), then the character will use the ICR or MICR fonts accordingly.
The OCR engine keeps a list of fonts for some languages, for example all the Latin languages currently use the same font. So passing languageName equals to "en" for English or "de" for German will change the default Latin fonts used in the final document. This is the equivalant of passing null (Nothing in Visual Basic).
If the OCR engine supports Asian languages, then each language will have its own font sets and you can get/set these fonts individually. Currently, the LEADTOOLS OCR toolkits supports individual fonts for Latin (null), Japanese (ja), Korean (ko), Chinese (zh-Hans and zh-Hant) and Korean (ko). The following table lists the default fonts used for each language:
Language | Fonts | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Latin (all other languages) including languageName equals to null |
|
||||||||||||||
Japanese (languageName equals to "ja") |
|
||||||||||||||
Chinese (languageName equals to "zh-Hans" or "zh-Hant") |
|
||||||||||||||
Korean (languageName equals to "ko") |
|
Note that changing the fonts is not recommended in most cases, the character position and size is calculated based on the default fonts even if the user changes the fonts before the recognition process. After the changing the fonts, it might be required to use IOcrPage.GetRecognizedCharacters and IOcrPage.SetRecognizedCharacters to further change the character position and font size to create the final output document.