J'ai un code qui me permet d'imprimer ce que je veux que l'utilisateur (dépendemmenent si l'usager est loggé ou non) vois sur papier et ça fonctionne:
et dans la page .asp
Code :
Mais le code ne prends pas en considération la ligne :
<LINK REL="stylesheet" TYPE="text/css" MEDIA="print" HREF="script/print.css">
et je l'ai aussi ajouté dans la page asp dans le <head> mais le texte demeure très gros même plus qu'à l'écran.
Je ne sais plus quoi essayer quelqu'un peux m'aider ???
<% @language="JScript" %>
<%
Response.Buffer = true;
Response.ContentType = "text/html"
Response.Charset = "iso-8859-1"
var isRep = (Request.Cookies("status") == "OK")? true : false;
//this is for http print
if (!isRep) {
var _isrep = Request.Querystring("isRep");
if (_isrep == "true") { isRep = true; }
}
function getReferer()
{
return Request.ServerVariables("HTTP_REFERER")
}
function getFileName(str)
{
var rgx = /.*\/(.*)$/
return rgx.exec(str);
}
%>
<%
var arrPrintTags;
var strReferer = new String(Request.ServerVariables("HTTP_REFERER"));
var startpos;
var endpos;
try{
// var XmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
var XmlHttp = new ActiveXObject("Msxml2.ServerXMLHTTP.4.0");
XmlHttp.open("GET", strReferer + "?print=" + Request.Form("print"), false );
XmlHttp.send();
/*var rgxPrintTag = /<print>[\w\W]*<\/print>/ig;*/
arrPrintTags = XmlHttp.responseText;
}
catch(e) {
arrPrintTags = null
}
finally {
XmlHttp = null;
}
%>
<html>
<head>
<title>- Print</title>
<META HTTP-EQUIV="Pragma" CONTENT="no-cache"; charset=iso-8859-1">
<script language="JavaScript">
function main()
{
window.focus();
openAllContents(); // If we have dynamic content, this will open everything.
if (window.print) window.print();
window.location.href = ('<%Response.Write(Request.ServerVariables("HTTP_REFERER"))%>')
}
window.onload=main;
</script>
<script language="JavaScript" type="text/JavaScript" src="/script/script.js"></script>
<script language="JavaScript" src="/script/DynamicContent.js"></script>
<LINK REL="stylesheet" TYPE="text/css" MEDIA="print" HREF="script/print.css">
<link href="/script/style.css" rel="stylesheet" type="text/css">
<!--[if IE]>
<link href="script/iedebug_cam.css" rel="stylesheet" type="text/css">
<LINK REL="stylesheet" TYPE="text/css" MEDIA="print" HREF="script/print.css">
<![endif]-->
<style type="text/css">
/*\*//*/
@import "/script/iedebug_cam.css";
/**/
</style>
</head>
<%
if (arrPrintTags != null)
{
/* for (var i = 0; i< arrPrintTags.length; i++)
{*/
startpos = 0;
while(startpos != -1)
{
startpos = arrPrintTags.indexOf('<!--<Print>-->');
endpos = arrPrintTags.indexOf('<!--</Print>-->');
if (startpos != -1)
{
Response.Write(arrPrintTags.substring(startpos + 14,endpos));
arrPrintTags = arrPrintTags.substring(endpos + 15);
}
}
/* }*/
}
%>
et dans la page .asp
Code :
<form name=authenticatedform action="/fp_print.asp" method="post">
<input type='hidden' name='print' value=<%=Session("Authenticated")%>>
</form>
Mais le code ne prends pas en considération la ligne :
<LINK REL="stylesheet" TYPE="text/css" MEDIA="print" HREF="script/print.css">
et je l'ai aussi ajouté dans la page asp dans le <head> mais le texte demeure très gros même plus qu'à l'écran.
Je ne sais plus quoi essayer quelqu'un peux m'aider ???