mirror of
https://github.com/mozilla/pdf.js.git
synced 2025-04-26 10:08:06 +02:00
Accent positioning in Type1 seac
glyphs
In `display/canvas.js` the accent offsets must be multiplied by `fontSize` to make the offsets large enough. Another problem is in `core/type1_parser.js` when the Type1 command `seac` is handled. There is an error in the Adobe Type1 spec. See chapter 6 in Type1 Font Format Supplement, which provides an errata: The arguments of `seac` specify the offset of the left side bearing (LSB) points, not the offset of origins. This can be fixed in `core/type1_parser.js` by adding the difference of the LSB values.
This commit is contained in:
parent
7df8aa34a5
commit
e7febbf0f7
2 changed files with 6 additions and 2 deletions
|
@ -232,7 +232,9 @@ var Type1CharString = (function Type1CharStringClosure() {
|
|||
// seac is like type 2's special endchar but it doesn't use the
|
||||
// first argument asb, so remove it.
|
||||
if (seacAnalysisEnabled) {
|
||||
const asb = this.stack[this.stack.length - 5];
|
||||
this.seac = this.stack.splice(-4, 4);
|
||||
this.seac[0] += this.lsb - asb;
|
||||
error = this.executeCommand(0, COMMAND_MAP.endchar);
|
||||
} else {
|
||||
error = this.executeCommand(4, COMMAND_MAP.endchar);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue