सबसे पहले, आपको यह जांचने की आवश्यकता है कि कोई फ़ॉन्ट इंस्टॉल किया गया है या नहीं। मैंने इंटरनेट पर कुछ स्क्रिप्ट का उपयोग किया है जो परीक्षण करेगा कि कोई फ़ॉन्ट स्थापित है या नहीं।
var Font = {
isInstalled : function (name) {
name = name.replace(/['"<>]/g,'');
var body = document.body;
var test = document.createElement('div');
var installed = false;
var teststring = "mmmmmmmmwwwwwwww";
var template = '<b style="display:inline !important; width:auto !important; font:normal 10px/1 \'X\',sans-serif !important">' + teststring + '</b><b style="display:inline !important; width:auto !important; font:normal 10px/1 \'X\',monospace !important">' + teststring + '</b>';
var ab;
if (name) {
test.innerHTML = template.replace(/X/g, name);
test.style.cssText = 'position: absolute; visibility: hidden; display: block !important';
body.insertBefore(test, body.firstChild);
ab = test.getElementsByTagName('b');
installed = ab[0].offsetWidth === ab[1].offsetWidth;
body.removeChild(test);
}
return installed;
}
}
इसके अलावा, निम्नलिखित स्निपेट का उपयोग करें (मुझे लगता है कि अपने आप को लिखा था) font-family
मूल्य और विभाजन के बाद से भागों में मूल्य प्राप्त करने के लिए:
इस somewere कोड का स्निपेट (लुकास स्मिथ के लिए धन्यवाद) शामिल करें।
function workingFont(element) {
var fontString = $(element).css('font-family');
var fonts = fontString.split(",");
for (var f in fonts) {
if (Font.isInstalled(fonts[f])) {
return fonts[f];
}
}
}
आप देख सकते हैं, पहली बार स्थापित फ़ॉन्ट लौटा दी जाएगी: के रूप में वे सीएसएस कोड (जैसे font-family: "Nimbus", "Courier New";
) में एक अल्पविराम के द्वारा अलग कर रहे हैं प्रत्येक भाग, एक फ़ॉन्ट है।
workingFont(element)
का उपयोग करें, जहां तत्व तत्व आईडी, कक्षा या टैगनाम है। यह jQuery API का हिस्सा है। ध्यान दें कि उपर्युक्त स्क्रिप्ट काम करने के लिए आपको jQuery शामिल होना चाहिए।
अद्यतन: मैंने इसे जांचने के लिए यह jsfiddle बनाया है।
स्रोत
2011-09-06 10:10:53
आपको क्यों जानने की आवश्यकता है? – thirtydot
यह प्रश्न देखें: http://stackoverflow.com/questions/1960817/get-computed-font-family-in-javascript (इसे समेटने के लिए, आप इसे आसानी से नहीं कर सकते हैं, लेकिन एक ऐसी तकनीक है जिसे आप आजमा सकते हैं) –
@ थर्डडॉट, मुझे बस जानने की जरूरत है। :)। मैं लागू फ़ॉन्ट के आधार पर कुछ व्यवसाय करना चाहता हूं। (सांख्यिकीय विश्लेषण)। अधिक विशिष्ट होने के लिए, मेरे पास मेरे पृष्ठ पर एक स्क्रिप्ट है, जो कि Google Analytics की तरह ही एक AJAX अनुरोध भेजती है, जिसमें सर्वर पर वर्तमान लागू फ़ॉन्ट के बारे में जानकारी शामिल है। –