]> git.parisson.com Git - pdf.js.git/commitdiff
IE9 breaks when adding to many style elements to the page.
authorbenbro <ben.browitt@gmail.com>
Sat, 12 May 2012 00:40:40 +0000 (03:40 +0300)
committerbenbro <ben.browitt@gmail.com>
Sat, 12 May 2012 00:40:40 +0000 (03:40 +0300)
src/fonts.js

index 22037e7245bebbcfc1c723c0c88919ab7272d9b5..d22a54352a20741b9ad84d241209c27a82751bff 100644 (file)
@@ -20,6 +20,9 @@ var kPDFGlyphSpaceUnits = 1000;
 // Until hinting is fully supported this constant can be used
 var kHintingEnabled = false;
 
+// A reference to a reusable style sheet.
+var styleSheet;
+
 var FontFlags = {
   FixedPitch: 1,
   Serif: 2,
@@ -2374,11 +2377,14 @@ var Font = (function FontClosure() {
                  window.btoa(data) + ');');
       var rule = "@font-face { font-family:'" + fontName + "';src:" + url + '}';
 
-      var styleElement = document.createElement('style');
-      document.documentElement.getElementsByTagName('head')[0].appendChild(
-        styleElement);
 
-      var styleSheet = styleElement.sheet;
+      if(!styleSheet) {
+        var styleElement = document.createElement('style');
+        document.documentElement.getElementsByTagName('head')[0].appendChild(
+          styleElement);
+
+        styleSheet = styleElement.sheet;
+      }
       styleSheet.insertRule(rule, styleSheet.cssRules.length);
 
       if (PDFJS.pdfBug && FontInspector.enabled)