use*_*627 7 css fonts tinymce font-face
我已经查看了这个帖子:谷歌字体和TinyMCE,事实上以前甚至成功地为用户添加了新字体到TinyMCE字体选项.
但我不确定这里出了什么问题以及为什么我不能再这样做了.我正在尝试添加一个新字体,Samman
我刚从MyFonts.com获得.
在我的TinyMCE初始化中,我包括:
content_css : "css/fonts.css,css/userdesigntool.css,http://fonts.googleapis.com/css?family=Paytone+One,http://fonts.googleapis.com/css?family=Aclonica",
Run Code Online (Sandbox Code Playgroud)
css/fonts.css
是我描述新字体的地方.在这个文件中,我刚刚保存在fonts/css
我服务器上的文件夹中的新字体如下所示:
@font-face {
font-family: 'sammanregular';
src: url('fonts/samman/samman-webfont.eot');
src: url('fonts/samman/samman-webfont.eot?#iefix') format('embedded-opentype'),
url('fonts/samman/samman-webfont.woff') format('woff'),
url('fonts/samman/samman-webfont.ttf') format('truetype'),
url('fonts/samman/samman-webfont.svg#sammanregular') format('svg');
font-weight: normal;
font-style: normal;
}
Run Code Online (Sandbox Code Playgroud)
我从Font-Squirrel中获得了这些(因为我之前已成功完成其他字体),并且我已经仔细检查以确保文件实际上在预期的路径上,并且它们是.
在theme_advanced_fonts
TinyMCE初始化的条目中,我有这个:
theme_advanced_fonts : tm_fonts,
// some more stuff below
Run Code Online (Sandbox Code Playgroud)
tm_fonts
我的javascript中描述的变量在哪里:
var tm_fonts = "Andale Mono=andale mono,times;"+
"Arial=arial,helvetica,sans-serif;"+
"Arial Black=arial black,avant garde;"+
"Book Antiqua=book_antiquaregular,palatino;"+
"Corda Light=CordaLight,sans-serif;"+
"Courier New=courier_newregular,courier;"+
"Flexo Caps=FlexoCapsDEMORegular;"+
"Lucida Console=lucida_consoleregular,courier;"+
"Georgia=georgia,palatino;"+
"Helvetica=helvetica;"+
"Impact=impactregular,chicago;"+
"Museo Slab=MuseoSlab500Regular,sans-serif;"+
"Museo Sans=MuseoSans500Regular,sans-serif;"+
"Oblik Bold=OblikBoldRegular;"+
"Sofia Pro Light=SofiaProLightRegular;"+
"Symbol=webfontregular;"+
"Tahoma=tahoma,arial,helvetica,sans-serif;"+
"Terminal=terminal,monaco;"+
"Tikal Sans Medium=TikalSansMediumMedium;"+
"Times New Roman=times new roman,times;"+
"Trebuchet MS=trebuchet ms,geneva;"+
"Verdana=verdana,geneva;"+
"Webdings=webdings;"+
"Wingdings=wingdings,zapf dingbats"+
"Aclonica=Aclonica, sans-serif;"+
"Michroma=Michroma;"+
"Paytone One=Paytone One, sans-serif;"+
"Andalus=andalusregular, sans-serif;"+
"Arabic Style=b_arabic_styleregular, sans-serif;"+
"Andalus=andalusregular, sans-serif;"+
"KACST_1=kacstoneregular, sans-serif;"+
"Mothanna=mothannaregular, sans-serif;"+
"Nastaliq=irannastaliqregular, sans-serif;"+
"Samman=sammanregular;";
Run Code Online (Sandbox Code Playgroud)
现在发生的事情Samman
显示在用户可以在TinyMCE中选择的字体列表中,但是当我选择这种字体时,文本没有任何反应,文本只保留在它使用的任何现有字体上.
当我使用浏览器的调试器时,我确实可以看到TinyMCE的iframe确实包含了css/fonts.css
提到Samman 的正确文件.但是当我在TinyMCE中更改字体时,我可以在调试器中看到该文本的span
样式font-family
没有改变.如果我选择另一种字体,span
样式会改变,但如果我选择Samman
,则不会发生任何变化.
我添加字体已经有一段时间了,所以也许我只是忘记了什么?但我似乎无法弄明白.
好的,我发现了这个问题.
我看到列表中字体列表的最后一行theme_advanced_fonts
是这样的:
"Mothanna=mothannaregular, sans-serif;"+
"Nastaliq=irannastaliqregular, sans-serif;"+
"Samman=sammanregular;",
Run Code Online (Sandbox Code Playgroud)
我所要做的只是在最后摆脱分号,所以新字体显示正常:
"Mothanna=mothannaregular, sans-serif;"+
"Nastaliq=irannastaliqregular, sans-serif;"+
"Samman=sammanregular",
Run Code Online (Sandbox Code Playgroud)