Html IFrame打印在Google Chrome上不显示文本
我在HTML中有一个Html IFrame打印在Google Chrome上不显示文本,html,google-chrome,iframe,printing,custom-font,Html,Google Chrome,Iframe,Printing,Custom Font,我在HTML中有一个iframe(代码如下所示)。当我尝试打印时,iframe除了虚线之外,在打印中没有任何内容出现(这是针对googlechrome,在Firefox上,它可以正常工作)。 我正在使用自定义字体。 代码如下: 函数printDiv(){ var browser=get_browser_info(); window.document.getElementById('print_frame').contentWindow.document.body.innerHTML=docu
iframe
(代码如下所示)。当我尝试打印时,iframe
除了虚线之外,在打印中没有任何内容出现(这是针对googlechrome
,在Firefox
上,它可以正常工作)。
我正在使用自定义字体
。
代码如下:
函数printDiv(){
var browser=get_browser_info();
window.document.getElementById('print_frame').contentWindow.document.body.innerHTML=document.getElementById('modal').innerHTML;
if((browser.name==“MSIE”| | browser.name==“MSIE”| | browser.name==“IE”| | browser.name==“IE”)){
window.document.getElementById('print_frame').contentWindow.document.execCommand('print',false,null);
}否则{
window.document.getElementById('print_frame').contentWindow.focus();
window.document.getElementById('print_frame').contentWindow.print();
}
window.document.getElementById('print_frame')。contentWindow.document.body.innerHTML=“”;
返回false;
}
函数get_browser_info(){
var ua=navigator.userAgent,tem,M=ua.match(/(opera | chrome | safari | firefox | msie | trident(?=\/)\/?\s*(\d+)/i)|[];
if(/trident/i.test(M[1])){
tem=/\brv[:]+(\d+)/g.exec(ua)| |[];
返回{name:'IE',version:(tem[1]| |''');
}
if(M[1]=='Chrome'){
tem=ua.match(/\bOPR\/(\d+/)
如果(tem!=null){return{name:'Opera',version:tem[1]};}
}
M=M[2]?[M[1],M[2]]:[navigator.appName,navigator.appVersion',-?';
如果((tem=ua.match(/version\/(\d+)/i))!=null){M.splice(1,1,tem[1]);}
返回{
名称:M[0],
版本:M[1]
};
}
@字体{
字体家族:罗森;
src:url(ROsanswebtextregular webfont.eot?)格式('embedded-opentype'),
url(ROsanswebtextregular webfont.woff)格式(“opentype”),
url(ROsanswebtextregular webfont.svg#文件名)格式(“svg”),
url(ROsanswebtextregular webfont.ttf)格式(“truetype”);
字体大小:正常;
字体风格:普通;
}
@字体{
字体家族:罗森;
src:url(ROsanswebtextbold.eot?)格式('embedded-opentype'),
url(ROsanswebtextbold.woff)格式(“opentype”),
url(ROsanswebtextbold.ttf)格式(“truetype”);
字体大小:粗体;
字体风格:普通;
}
这是H4
这个
是第一个Span
第一个TD
第二
运输署
第三个TD
第四个TD
第五个TD
第六个TD
生成
使用此样式表代码。
这应该对你有用
src: url(ROsanswebtextregular-webfont.eot?) format('embedded-opentype')
代码中的这一行似乎是问题的根源
@字体{
字体家族:罗森;
src:url(ROsanswebtextregular webfont.eot')格式(“eot”),
url(ROsanswebtextregular webfont.woff)格式(“opentype”),
url(ROsanswebtextregular webfont.svg#文件名)格式(“svg”),
url(ROsanswebtextregular webfont.ttf)格式(“truetype”);
字体大小:正常;
字体风格:普通;
}
@字体{
字体家族:罗森;
src:url(ROsanswebtextbold.eot')格式(“eot”),
url(ROsanswebtextbold.woff)格式(“opentype”),
url(ROsanswebtextbold.ttf)格式(“truetype”);
字体大小:粗体;
字体风格:普通;
}
@字体{
字体家族:罗森;
src:url(ROsanswebtextregular webfont.eot')格式(“eot”),
url(ROsanswebtextregular webfont.woff)格式(“opentype”),
url(ROsanswebtextregular webfont.svg#文件名)格式(“svg”),
url(ROsanswebtextregular webfont.ttf)格式(“truetype”);
字体大小:正常;
字体风格:普通;
}
@字体{
字体家族:罗森;
src:url(ROsanswebtextbold.eot')格式(“eot”),
url(ROsanswebtextbold.woff)格式(“opentype”),
url(ROsanswebtextbold.ttf)格式(“truetype”);
字体大小:粗体;
字体风格:普通;
}
这只会停止错误,但打印的字体不正确。打印后得到的字体是Times New Roman/CalibriHi@DeepakKumar,欢迎使用Stack Overflow。在这里,我们关心好的问题和好的答案,总是试图超越代码来强调它是如何与解释一起工作的。看一下指南。