Explicitly specify behavior of baseline property in the presence of textangle property #112
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR fixes an error in the specification related in interaction between
baseline
andtextangle
properties.Currently the
baseline
property is underspecified: the polyline refers to "coordinate system of the line" which is not defined anywhere else in the document. This makes it unclear how baseline should be specified whentextangle
is non-zero.The interpretation that
textangle
should be ignored would result in error in the specification because completely vertical text would have slope angle equal to positive or negative infinity which can not be represented by the current grammar.Therefore,
textangle
should be taken into account. However, it's not clear how it should affect baseline because the specification does not constraintextangle
to any specific angle.This issue is fixed by explicitly specifying what coordinate system would be used for the baseline polynomial in all possible values of
textangle
property.Due to this issue tesseract-ocr currently does not output baseline for non-horizontal text at all. Fixing the specification will hopefully allow to output baseline information in all cases.