使用JavaScript獲取系統字體的幾種方法。下方提供包含演示的參考鏈接。
try { // 向页面添加swf并读取字体 $('body').append(''); $('#flashcontent').flash({ "src": "resources/FontList.swf", "width": "1", "height": "1", "swliveconnect": "true", "id": "flashfontshelper", "name": "flashfontshelper" }, { update: false }); // swf稳定需要超时。 setTimeout(function() { console.log(window.fonts); return window.fonts; }, _this.settings.flashDelay); } catch (ex) { _this.errors.push('未检测到字体。'); return fonts; }
try { // 向页面添加swf并读取字体 $('body').append('').flash({ "src": "resources/fonts.swf", "width": "1", "height": "1", "swliveconnect": "true", "id": "flashfontshelper", "name": "flashfontshelper" }, { update: false }); // swf稳定需要超时。 setTimeout(function() { var fonts = "", obj = document.getElementById("flashfontshelper"); // 获取字体 if (obj && typeof(obj.GetVariable) != "undefined") { fonts = obj.GetVariable("/:user_fonts").replace(/,/g,", "); } if (!fonts) { fonts = "未检测到Flash或Java字体"; _this.errors.push('未检测到Flash或Java字体。'); } console.log(fonts); return fonts; }, 100); return true; } catch (ex) { fonts = this.errors.push('未检测到Flash或Java字体。'); }
JavaScript沒有內置方法來列出用戶瀏覽器可以顯示的所有字體。但是,您可以使用像“FontFaceSet”這樣的JavaScript庫來加載並檢查字體是否可用。您還可以使用“document.fonts.check()”方法來檢查特定字體是否可用。請記住,由於隱私問題,瀏覽器不允許腳本直接訪問已安裝字體的列表。
網絡安全字體是在各種計算機系統上都可能存在的字體,因此非常適合在網絡上使用。這些字體包括Arial、Times New Roman和Courier New等。在CSS中,您可以通過在“font-family”屬性中指定這些字體來使用它們。例如,“font-family: Arial, sans-serif;”。瀏覽器將使用用戶系統上安裝的列表中的第一個字體。
本地字體訪問API是一個Web API,允許您訪問用戶本地安裝的字體。但是,由於隱私問題,此API並未得到廣泛支持,並且通常不建議使用。如果您仍然想使用它,可以通過調用“navigator.fonts.query()”方法來實現,該方法返回一個promise,該promise解析為代表用戶已安裝字體的FontMetadata對象的列表。
在HTML和CSS中,您可以使用“font-family”屬性指定網絡安全字體。您應該按首選項順序列出字體,用逗號分隔。瀏覽器將使用用戶系統上安裝的列表中的第一個字體。例如,“font-family: Arial, Helvetica, sans-serif;”。
有幾個可用的JavaScript庫可以檢測用戶已安裝的字體,例如“FontFaceSet”和“FontDetector”。這些庫通過加載字體然後檢查它是否可用。但是,由於隱私問題,通常不建議使用此類庫。
最常見的網絡安全字體包括Arial、Times New Roman、Courier New、Georgia和Verdana。這些字體很可能安裝在各種計算機系統上,因此非常適合在網絡上使用。
您可以使用JavaScript中的“document.fonts.check()”方法檢查特定字體是否已安裝。此方法返回一個布爾值,指示字體是否可用。例如,“document.fonts.check(’16px Arial’)”如果安裝了Arial,則返回true。
由於隱私問題,瀏覽器不允許腳本直接訪問已安裝字體的列表。但是,您可以使用方法如“document.fonts.check()”來檢查特定字體是否可用。
在CSS中,您可以通過在“font-family”屬性中列出多個字體(用逗號分隔)來指定備用字體。瀏覽器將使用用戶系統上安裝的列表中的第一個字體。如果未安裝任何列出的字體,瀏覽器將使用默認字體。
訪問用戶已安裝的字體可能是一個隱私問題,因為它可以用於指紋識別,這是一種允許網站根據用戶的系統配置唯一識別和跟踪用戶的技術。因此,瀏覽器不允許腳本直接訪問已安裝字體的列表。
以上是使用JavaScript獲取系統字體的詳細內容。更多資訊請關注PHP中文網其他相關文章!