[Pkg-javascript-commits] [pdf.js] 22/115: Fix chars scaling for standard fonts.
David Prévot
taffit at moszumanska.debian.org
Wed Dec 16 20:03:10 UTC 2015
This is an automated email from the git hooks/post-receive script.
taffit pushed a commit to branch master
in repository pdf.js.
commit 8200f099a30c128bbe7885ae8ef82a491fdfb4fb
Author: Yury Delendik <ydelendik at mozilla.com>
Date: Tue Nov 17 13:21:27 2015 -0600
Fix chars scaling for standard fonts.
---
src/display/canvas.js | 22 ++++++++++++++--------
1 file changed, 14 insertions(+), 8 deletions(-)
diff --git a/src/display/canvas.js b/src/display/canvas.js
index ad58f84..42cd83c 100644
--- a/src/display/canvas.js
+++ b/src/display/canvas.js
@@ -1421,16 +1421,22 @@ var CanvasGraphics = (function CanvasGraphicsClosure() {
scaledY = 0;
}
- if (font.remeasure && width > 0 && this.isFontSubpixelAAEnabled) {
- // some standard fonts may not have the exact width, trying to
- // rescale per character
+ if (font.remeasure && width > 0) {
+ // Some standard fonts may not have the exact width: rescale per
+ // character if measured width is greater than expected glyph width
+ // and subpixel-aa is enabled, otherwise just center the glyph.
var measuredWidth = ctx.measureText(character).width * 1000 /
fontSize * fontSizeScale;
- var characterScaleX = width / measuredWidth;
- restoreNeeded = true;
- ctx.save();
- ctx.scale(characterScaleX, 1);
- scaledX /= characterScaleX;
+ if (width < measuredWidth && this.isFontSubpixelAAEnabled) {
+ var characterScaleX = width / measuredWidth;
+ restoreNeeded = true;
+ ctx.save();
+ ctx.scale(characterScaleX, 1);
+ scaledX /= characterScaleX;
+ } else if (width !== measuredWidth) {
+ scaledX += (width - measuredWidth) / 2000 *
+ fontSize / fontSizeScale;
+ }
}
if (simpleFillText && !accent) {
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/pdf.js.git
More information about the Pkg-javascript-commits
mailing list