1
0
Fork 0
mirror of https://github.com/mozilla/pdf.js.git synced 2025-04-22 16:18:08 +02:00

Provides right fallback fonts for text layer

This commit is contained in:
Yury Delendik 2012-09-14 10:58:33 -07:00
parent 53c66f8a54
commit ac7b6aeff4
4 changed files with 9 additions and 14 deletions

View file

@ -596,8 +596,7 @@ var CanvasGraphics = (function CanvasGraphicsClosure() {
(fontObj.bold ? 'bold' : 'normal');
var italic = fontObj.italic ? 'italic' : 'normal';
var serif = fontObj.isSerifFont ? 'serif' : 'sans-serif';
var typeface = '"' + name + '", ' + serif;
var typeface = '"' + name + '", ' + fontObj.fallbackName;
// Some font backends cannot handle fonts below certain size.
// Keeping the font at minimal size and using the fontSizeScale to change
@ -792,7 +791,7 @@ var CanvasGraphics = (function CanvasGraphicsClosure() {
}
if (textSelection)
this.textLayer.appendText(text, font.loadedName, fontSize);
this.textLayer.appendText(text, font.fallbackName, fontSize);
return text;
},
@ -856,7 +855,7 @@ var CanvasGraphics = (function CanvasGraphicsClosure() {
}
if (textSelection)
this.textLayer.appendText(text, font.loadedName, fontSize);
this.textLayer.appendText(text, font.fallbackName, fontSize);
},
nextLineShowText: function CanvasGraphics_nextLineShowText(text) {
this.nextLine();

View file

@ -1522,17 +1522,13 @@ var Font = (function FontClosure() {
names = names.split(/[-,_]/g)[0];
this.isSerifFont = !!(properties.flags & FontFlags.Serif);
this.isSymbolicFont = !!(properties.flags & FontFlags.Symbolic);
this.isMonospace = !!(properties.flags & FontFlags.FixedPitch);
var type = properties.type;
this.type = type;
// If the font is to be ignored, register it like an already loaded font
// to avoid the cost of waiting for it be be loaded by the platform.
if (properties.ignore) {
this.loadedName = this.isSerifFont ? 'serif' : 'sans-serif';
this.loading = false;
return;
}
this.fallbackName = this.isMonospace ? 'monospace' :
this.isSerifFont ? 'serif' : 'sans-serif';
this.differences = properties.differences;
this.widths = properties.widths;