mirror of
https://github.com/mozilla/pdf.js.git
synced 2025-04-22 16:18:08 +02:00
Text widget annotations: implement comb support
This commit is contained in:
parent
c0e82dbc38
commit
6100ab4b18
7 changed files with 113 additions and 4 deletions
|
@ -715,6 +715,11 @@ var TextWidgetAnnotation = (function TextWidgetAnnotationClosure() {
|
|||
// Process field flags for the display layer.
|
||||
this.data.readOnly = this.hasFieldFlag(AnnotationFieldFlag.READONLY);
|
||||
this.data.multiLine = this.hasFieldFlag(AnnotationFieldFlag.MULTILINE);
|
||||
this.data.comb = this.hasFieldFlag(AnnotationFieldFlag.COMB) &&
|
||||
!this.hasFieldFlag(AnnotationFieldFlag.MULTILINE) &&
|
||||
!this.hasFieldFlag(AnnotationFieldFlag.PASSWORD) &&
|
||||
!this.hasFieldFlag(AnnotationFieldFlag.FILESELECT) &&
|
||||
this.data.maxLen !== null;
|
||||
}
|
||||
|
||||
Util.inherit(TextWidgetAnnotation, WidgetAnnotation, {
|
||||
|
|
|
@ -461,6 +461,14 @@ var TextWidgetAnnotationElement = (
|
|||
if (this.data.maxLen !== null) {
|
||||
element.maxLength = this.data.maxLen;
|
||||
}
|
||||
|
||||
if (this.data.comb) {
|
||||
var fieldWidth = this.data.rect[2] - this.data.rect[0];
|
||||
var combWidth = fieldWidth / this.data.maxLen;
|
||||
|
||||
element.classList.add('comb');
|
||||
element.style.letterSpacing = 'calc(' + combWidth + 'px - 1ch)';
|
||||
}
|
||||
} else {
|
||||
element = document.createElement('div');
|
||||
element.textContent = this.data.fieldValue;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue