¿Cómo implementar la función de impresión en un sitio web?
En los sistemas web, la función de impresión siempre ha sido un problema de larga data, por lo que se han producido muchos controles de terceros, la mayoría de los cuales requieren tarifas, y existen ciertos problemas para integrarse con los suyos. sistema.
El sistema utiliza tecnología J2EE y también existen problemas de impresión jsp en OA. Hay tres métodos de impresión:
Uno es llamar directamente a window.print() en javascript para imprimir sin ninguna modificación.
En segundo lugar, de acuerdo con el formato de informe requerido por el cliente, escriba el HTML en el formato correspondiente, cargue los datos para imprimir y también llame a window.print() para imprimir, pero los requisitos de formato para el HTML son relativamente altos.
El tercero es asociar el formato de palabra proporcionado por el cliente con los datos de la base de datos a través del archivo de configuración xml y cargar automáticamente los datos en Word para imprimir. Aquí, la palabra del cliente se utiliza para imprimir.
El primer método casi no requiere programación y es el más simple y rápido. Aquí encontrará varios problemas. Sólo puede imprimir el contenido del formulario, pero no desea que se impriman los botones. No quiero que se impriman los encabezados y pies de página; el título de IE No quiero imprimirlo.
Solución: colocar el botón en una tabla o div, ocultarlo al imprimir y mostrarlo una vez completado. El código de impresión javascript en el sistema es el siguiente:
functionPrint(){vartit=document.title;document.title="";table1.style.display="none";window.print() ;document. title=tit;table1.style.display="";} Sin embargo, solo puede servir para imprimir y el efecto de impresión generalmente es aburrido.
En cualquier caso, es la forma más rápida de permitir que la mayoría de módulos del sistema tengan funciones de impresión.
El segundo método requiere el desarrollo de un programa HTML y Java personalizado según el formato de cada informe, lo que llevará más tiempo. A lo que debe prestar atención es al control de estilo de la tabla en HTML. Cuando navega en IE, el borde se ve muy delgado cuando se imprime, algunas líneas serán más gruesas y otras más delgadas, lo cual es extraño y feo.
Usar bordercolor directamente en la tabla hará que las líneas parezcan gruesas. Usar bordercolorlight y bordercolordark juntos puede mostrar líneas delicadas.
No estés demasiado contento. El efecto impreso no es como el que ves en IE. ¡Aunque los bordes son finos, las líneas interiores son muy gruesas! La razón es que cada TD tiene un borde y habrá líneas superpuestas en la intersección de TD y TD. Aunque no parece estar allí en IE, se mostrará al imprimir.
La solución a este problema es controlar el estilo de cada td y controlar las áreas superpuestas como border-bottom:1px.
Esta solución consume más energía, y es difícil controlar la paginación al imprimir, no siendo posible ajustar la fuente, color del borde, etc. según las necesidades del cliente en cada momento.
La tercera opción: generar documentos de Word, Excel y otros desde el servidor y enviarlos al navegador para imprimirlos. El proceso de implementación: primero importe los datos que deben imprimirse en Word o Excel, y luego. Utilice la función de impresión de Word o Excel para implementar la impresión web. Tomemos Excel como ejemplo para comprender cómo imprimir. Hay muchas formas de importar datos de páginas web a Excel. Aquí primero presentamos un método, que consiste en utilizar el control ActiveX, a saber, Excel.Application. Las tablas proporcionadas por MS para Excel se pueden manipular a través de esta interfaz en muchos lenguajes de programación. A continuación se muestra un ejemplo sencillo que utiliza un script javascript.