Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / Java / Imprimir imagen con Print

Imprimir imagen con Print

Por jc mouse viernes, mayo 4, 2012

susto a media noche

La siguiente clase hace uso de PRINT para imprimir una imagen que se encuentra en un variable de tipo FileInputStream, esta clase a su vez es implementada desde una interfaz que hace fácil su uso, la clase así como todo el proyecto esta comentado.

import java.io.File;
import javax.print.Doc;
import java.io.IOException;
import javax.print.DocFlavor;
import javax.print.SimpleDoc;
import java.io.FileInputStream;
import javax.print.DocPrintJob;
import javax.print.PrintService;
import javax.swing.JFileChooser;
import javax.print.PrintException;
import javax.print.PrintServiceLookup;
import javax.print.attribute.standard.Copies;
import javax.print.attribute.PrintRequestAttributeSet;
import javax.swing.filechooser.FileNameExtensionFilter;
import javax.print.attribute.HashPrintRequestAttributeSet;
/**
 * @web https://www.jc-mouse.net
 * @author Mouse
 */
public class jcPrint {

    private JFileChooser fileChooser;
    private FileNameExtensionFilter filter = new FileNameExtensionFilter("Imagen","jpg","gif","png");
    private FileInputStream fileInputStream = null;
    private File file=null;

   public jcPrint(){}

   public boolean Abrir()
    {
     fileChooser = new JFileChooser();
       fileChooser.setFileFilter(filter);       
       int result = fileChooser.showOpenDialog(null);
       if ( result == JFileChooser.APPROVE_OPTION ){
            try {
                this.fileInputStream = new FileInputStream( fileChooser.getSelectedFile() );
                this.file = fileChooser.getSelectedFile();
                return true;
            } catch (IOException ex) {
               System.out.println("Error al abrir archivo " + ex);
            }
        }
       return false;
    }

   public String getPathImage()
   {
        return this.file.toString();
   }

   //funcion que imprime una imagen almacenda en "fileInputStream"
    public void Imprimir()
    {
        if( this.fileInputStream != null )
        {
        try {
            //atributos de la impresora
            PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
            pras.add(new Copies(1));                       
            //Impresora configurada del sistema
            PrintService ps = PrintServiceLookup.lookupDefaultPrintService();

            DocPrintJob docPrintJob = ps.createPrintJob();
            Doc doc = new SimpleDoc(fileInputStream, DocFlavor.INPUT_STREAM.GIF, null);
            docPrintJob.print(doc, pras);
            fileInputStream.close();
        } catch (PrintException ex) {
            System.out.println(ex);
        } catch (IOException ex) {
            System.out.println(ex);
        }  finally {
            try {
                fileInputStream.close();
            } catch (IOException ex) {
                System.out.println(ex);
            }
        }
        }
    }  

}

IDE: Netbeans 6.9

Bájate el proyecto desde este enlace

Tags

Artículos similares

Creación de GUI con Matlab GUIDE

En este videotutorial se vera la creación de Interfaces Gráficas de Usuario (GUI) utilizando MatLab GUIDE herramienta vi[...]

Código Único de Factura en C Sharp

En este post implementamos el «Código Único de Factura» según la documentación otorgada por Impuestos Bolivia en su siti[...]

Manejo de excepciones: Uso de Throw Exception en Laravel 11

El manejo correcto de excepciones permite que nuestras aplicaciones sean robustas, tolerante a fallos y amigable con el[...]

base de datos multiple – parte II

Continuación del tutorial «Utiliza 2 bases de datos diferentes en una aplicación» La Interfaz frmSelected.java: Haciendo[...]

Microservicio REST Java con Spark – Parte 1

En este y un segundo post desarrollaremos un microservicio java utilizando el framework Spark que implementara las funci[...]

API completo y ligero para el uso de webcams desde java

Webcam Capture es un API  que permite usar una cámara web incorporada o externa directamente desde código Java utilizand[...]