Méthodes alternatives d'impression web_Échange d'expériences
Méthode alternative d'impression sur le Web Sélectionnée sur le blog de wfmazhenhai
Mots clés Méthode alternative d'impression sur le Web
Source
Je crois que quiconque a réalisé des applications en utilisant la méthode B/S peut rencontrer un tel problème, comment faciliter, réaliser magnifiquement impression du rapport. Si vous utilisez le menu d'impression du navigateur pour imprimer, certaines éléments inutiles de la page Web seront imprimés sur le rapport, comme les menus d'application, etc. Parce que la sélection du menu d'impression pour imprimer une page Web imprimera tout le contenu de la page Web. Si votre application comporte des cadres, le contenu imprimé inclura le contenu de chaque cadre, et le contenu que vous souhaitez réellement n'en est qu'une partie. Par conséquent, de nombreuses applications ne peuvent exécuter la fonction d’impression qu’en arrière-plan. Que devons-nous faire dans cette situation ? En fait, il existe de nombreuses façons de mettre en œuvre la fonction d’impression de pages Web.
Une solution consiste à utiliser des outils d'impression professionnels, tels que Crystal Reports. Les amis qui ont utilisé Visual Studio 5.0 doivent se souvenir de cet outil, mais la version à l'époque n'était que 4.0. La dernière version est désormais la version 9 et les versions récentes de Crystal Reports prennent en charge l'impression WEB. La méthode la plus simple consiste à utiliser d'abord Crystal Reports pour créer un modèle, puis à utiliser ASP pour appeler le modèle préparé avec des paramètres. Une fois que Crystal Reports a généré un rapport sur la page Web, celui-ci peut être imprimé directement ou transféré vers d'autres fichiers qui réussissent la comparaison, tels que des fichiers Excel. Vous pouvez créer de très beaux styles à l'aide de Crystal Reports. La clé réside dans votre capacité à développer Crystal Reports. Cependant, en raison du prix élevé de Crystal Reports, vous ne pouvez vous le permettre que si le projet est très rentable.
La deuxième méthode consiste à acheter un contrôle d'impression en ligne tiers. Le coût est moins cher que Crystal Reports, mais l'efficacité et les performances sont différentes.
La troisième méthode consiste à utiliser des feuilles de style et des fonctions personnalisées JavaScript. L'impression de pages Web est réalisée via des feuilles de style et JavaScript, et l'effet est acceptable. Voici un exemple que tout le monde peut consulter. Ce qui suit est une explication détaillée de l'implémentation de la fonction d'impression :
<script language="JavaScript" type="text/JavaScript">
<!--
function DP() {
if ( window.print)
{
var Div1 = document.all.Div1.innerHTML;
var Div2 = document.all.Div2.innerHTML
// *********; ***** **************************************
// Div1 et Div2 êtes-vous dans la zone d'impression
// Selon le contenu que vous souhaitez imprimer, utilisez
// <div id=Div1>Div1....</div><div id=Div2> from la page d'affichage originale Div2...</div>
// Attendez qu'elle soit marquée, marquez autant d'éléments que vous souhaitez imprimer
// ************* ********* ************************************* var css = '< style type="text/css" media=all>' +
'p { hauteur de ligne : 120%}' +
'.ftitle { hauteur de ligne : 120 % ; taille de police : 18 px ; : #000000}' +
'td { font -size: 10px; couleur: #000000}' +
'</style>'
//*********** ******************* *******************************
// Définissez le CSS pour l'impression, plus précisément le format que vous souhaitez imprimer. Tout dépend de vous
//, mais attention : s'il y a quelque chose d'incohérent avec la page Web, le format et la police de l'imprimé la page peut être différente
// de la page web
/ /********************************* ********************** ****
var body ='<table width="640" border="0" cellpacing="0" cellpadding="5">' +
' <tr> ' +
' < td class="fbody"> ' +
' <div align="center" class=ftitle>' + Div1 + '</div>' + Div2 +
' </td>' +
'</tr>' +
'</table>'
//****** *********************** ************************** **
// Réinitialisez le format d'impression ici et modifiez l'affichage d'origine en fonction de vos besoins d'impression
// Réorganisez le contenu DIV de la page Web. Vous pouvez supprimer les
// éléments que vous ne faites pas. Vous ne voulez pas imprimer en fonction du contenu de votre table d'origine. Vous pouvez également utiliser le noprint défini ci-dessous pour ignorer les choses que vous ne souhaitez pas imprimer
// chose, appeler uniquement le contenu que vous souhaitez imprimer, mais celui ignoré. la place sera imprimée
// vide, ce qui n'est pas très beau. La largeur du formulaire doit correspondre à la largeur du papier à imprimer.
//********************************************* *** *********
document.body.innerHTML = '<center>' + css + body + '</center>'
// ******* *** ************************************************* *
// Heavy Set document.body, le document à imprimer est prêt
//****************************** ******** ****************
window.print();
window.history.go(0);// ****** ********************************************** **
//Appelez la commande print pour imprimer le contenu de la fenêtre actuelle. Lorsque vous l'imprimez, il s'agit en fait d'une nouvelle
// page Web, mais le fichier de la page Web est toujours l'original.Appelez ensuite
// window.history.go(0), puis revenez à la page avant l'impression, l'effet est plutôt bon
// **************** *** *****************************************
}
}
- ->
</script>
<style>
@media print {
.noprint {display:none}
}
</style>
<!-- //.noprint définit noprint. Après avoir ajouté class="noprint" aux endroits suivants qui n'ont pas besoin d'être imprimés, l'impression avec window.print() sera ignorée -->
OK , tout est prêt, que faire maintenant Il s'agit d'appeler la fonction DP Si vous concevez le bouton à appeler sur la même page Web, vous pouvez l'appeler directement si vous utilisez la méthode frame et que le bouton à appeler est ; sur une autre page web, puis dans la fonction DP Ajoutez la commande window.focus() en première ligne, sinon seule la page web avec les boutons sera imprimée.
La quatrième méthode, la mise en œuvre est une méthode délicate. La même chose est obtenue en appelant window.print(), mais le contenu que vous souhaitez imprimer est spécialement généré sous forme de page Web et le bouton d'impression se trouve sur un autre cadre. Supposons que la page Web du rapport se trouve sur le mainFrame et que le bouton se trouve sur le topFrame. Le bouton appelle la fonction PrintReports(). La fonction PrintReports() est la suivante pour réaliser l'impression.
function PrintReports() //Fonction dans la page Web topFrame
{
essayez
//*********************** ******* ***********************************
// Gestion des erreurs , si la page Web dans mainFrame n'a pas de fonction DP Ne pas imprimer
//****************************** ***************** *************
{
window.parent.frames("mainFrame").DP() ;
}
catch(e)
{
alert("aucun objet à imprimer!"
}
}
function DP() // Page web MainFrame function
{
window.focus();
if (window.print)
{
window.print();
}
}
Je pense personnellement c'est la méthode la plus pratique.
Enfin, si vous supprimez les paramètres "En-tête, Coin de page" dans le "Fichier - Paramètres de page" du navigateur IE, l'effet sera meilleur. (Repost)

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Ceci est le 3ème article d'une petite série que nous avons faite sur l'accessibilité. Si vous avez manqué le deuxième article, consultez "Gestion de la mise au point des utilisateurs avec: Focus-visible". Dans

Ce tutoriel montre la création de formulaires JavaScript professionnels à l'aide du cadre Smart Forms (Remarque: non plus disponible). Bien que le cadre lui-même ne soit pas disponible, les principes et techniques restent pertinents pour d'autres constructeurs de formulaires.

Le CSS Box-Shadow et les propriétés de contour ont gagné le thème. Laissez regarder quelques exemples de la façon dont cela fonctionne dans des thèmes réels et des options que nous devons appliquer ces styles aux blocs et éléments WordPress.

Si vous avez récemment commencé à travailler avec GraphQL ou examiné ses avantages et ses inconvénients, vous avez sans aucun doute entendu des choses comme "GraphQL ne prend pas en charge la mise en cache" ou

L'API de transition Svelte fournit un moyen d'animer les composants lorsqu'ils entrent ou quittent le document, y compris les transitions Svelte personnalisées.

Combien de temps passez-vous à concevoir la présentation de contenu pour vos sites Web? Lorsque vous écrivez un nouveau blog ou créez une nouvelle page, pensez-vous à

Dans cet article, nous plongerons dans le monde des barres de défilement. Je sais, ça ne semble pas trop glamour, mais croyez-moi, une page bien conçue va de pair

Les commandes NPM exécutent diverses tâches pour vous, soit en tant que processus unique ou en cours d'exécution pour des choses comme le démarrage d'un serveur ou la compilation de code.
