Dieser Artikel teilt den spezifischen Code von Java mit, das Bilder in PDF -Dateien kombiniert, um Ihre Referenz zu erhalten. Der spezifische Inhalt ist wie folgt
Programmschnittstellendiagramm:
Codeliste:
Paket kombiniert Bilder in PDF -Dateien. importieren java.awt.event.actionEvent; import Java.awt.event.ActionListener; Import Java.io.file; Import Java.io.FileFilter import Java.io.fileOutputStream; Import Java.io.ioxception; Import Javax.swing.jbutton; javax.swing.jframe; import Javax.swing.jlabel; import Javax.swing.joptionpane; import Javax.swing.jpanel; import Javax.swing.jtextfield; Import Javax.Swing.Filechooser.FilenameextensionSesion; com.ithtpdf.text.documentException; import com.ithtpdf.text.image; import com.ithtpdf.text.pageSize; serialversionuid = 1657254256189721759l; endgültige private String shuoming = "Anweisungen zur Verwendung: Die Hauptfunktion dieses Programms besteht darin, die Bildgruppen in die gleiche PDF -Datei im Verhältnis zu skalieren. jb_open = null; private jbutton jb_save = null; private jbutton jb_ok = null; private jtextfield jt_dir_open = null; private jtextfield jt_dir_save = null; privat jlabel jl_dir_open = privat jlabel jlabel jlabel jl_lujing_open = null; private jlabel jl_lujing_save = null; private jTextfield jtf = null; public jiemian_mian () {jf = new JFrame ("kombiniert Bilder in Pdf -Dateien"); JLabel ("Bitte wählen Sie den Ordner aus, in dem sich die Bildgruppe befindet:"); jl_dir_save = new Jlabel ("Bitte den Syntheseort des PDF:"); JL_LUJING_OPEN = new Jlabel ("Path:"); 200, 20); jl_dir_save.setbounds (420, 50, 200, 20); 20); jp.add (jl_dir_open); jp.add (jl_dir_save); = new Jbutton ("Startsynthese"); jb_open.setBounds (230, 80, 65, 20); Save ()); jb_ok.addactionListener (new begin ()); jp.add (jb_open); jp.add (jb_save); JTextfield (); jt_dir_open.setbounds (90, 80, 130, 20); jt_dir_save.setbounds (460, 80, 130, 20); jt_dir_open.seteditable (false); 50); jtf.setenabled (false); Box*/jf.add (jp); jf.setSize (715,315); jf.setResizable (false); jf.setLocationRelativeto (null); ActionListener {public void actionperformed (actionEvent e) {lujing_get lujing_get = new lujing_get (jf); // lujing_get Objekt erstellen und den Bildgruppe Path Dir_open = lujing_get.open_get (); jt_dir_open the -theset -poction (Dirjing); Ort, der durch die PDF*/private class speichern implements actionListener {public void actionPerformed (actionEvent e) {lujing_get lujing_get = new lujing_get (jf); // lujing_get_Get -Objekt und den Pfad zum Speichern des von der PDF DIR_SAVE = erstellten Pfad lujing_get.save_get (); jt_dir_save.setText (DIR_SAVE);}}/*Trunk -Ereignisverarbeitung für die Synthese von PDF*/private Klasse implements actionListener {public void actionPerformed (actionEvent e) {/*Actionely ActionListener {public void actionperformed (actionevent e) {/*Actionely -Action mit dem erworbenen Path*/if (DIgr. Dir_open.equals ("") {joptionpane.showMessagedialog (JF, "Bitte geben Sie den Pfad der Bildgruppe und den Speichern des PDF ein", "Warnung", joptionpane.WARNING_MESSAGE);} sonst {File_Deal fd = neue Datei -Datei -Datei -Datei -Datei -Dateien erstellen. if (fd.files ()! Wm_creatpdf (fd.files (), dir_save); // WM_Creatpdf -Objekt erstellen, um pdftry {pdf_creat.creatpdf () zu generieren; // Synthesize -PDF -Datei} catch (documentException E1) {// todo automatisch generiertes Block E1.Printstacktra (); Oder folder (.jpg/.png/.bmp/.tif)!","Warning",JOptionPane.WARNING_MESSAGE);} }}}class Lujing_get {private JFrame jf = null;public Lujing_get(JFrame jf){this.jf = jf;}public String open_get(){String dir = ""; JFilechooser jfc = new JFilechooSer (); // Erstellen Sie den "Dateibrowser" -Objekt jfc.setDialogtitle ("Bitte den Ordner auswählen, in dem die Bildgruppe") Jfc.setFileSectionMode (jFilechooS.directores_only); jfc.showopendialog (jf); if (jFilechooser.Approve_option == returnVal) {Dir = jfc.getSelectedFile (). toString ();} return Dir; // Path} public String save_get () {String dir. FileNameExtensionSesionFilter ("PDF", "PDF"); // Path}}/ * * die Bilddatei abrufen * * * */class File_deal {private String dir_open = ""; public File_deal (String DIR_OPEN) {this.dir_open = dir_open;} öffentliche Datei [] Dateien () {Datei f = new File (DIRE_OPEN); 0) Rückgabe fs; Elsereturn null;}}/ * * * Dateifilter, geben Sie die Bildformatdatei im Verzeichnis zurück * */class PhotoFileFilter Implements FileFilter {@Overridepublic boolean Accept (Datei Datei) {// todo automatic generated method stub (). Datei.getName (); if (name.endswith (". JPG") || name.endswith (". Png") return true; elseif (name.endswith (". Bmp") || name.endswith (". Tif") Return true; Die Download-Adresse lautet: http://www.java2s.com/code/jar/i/i/iithtpdf.htm) * * * */Klasse Wm_Creatpdf {Final Private Float A4_Weight = 595-60; // Die Breite des Standard-A4-endgültigen privaten Floats = nuls = nuls = nuls = nulg = 842-60; // Die hohe private file = nuls = nulm; private String -DIR_SAVE = ""; public wm_creatpdf (Datei [] Dateien, String DIR_SAVE) {this.files = Dateien; this.dir_save = dir_save;} public void creatpdf () löst documentException, ioException {document document = new document (pageSize.a4,30,30,30); // Dokumentcontainer pdfwriter.getInstance (Dokument, neuer Datei -Putstream erstellen). Container float prozent = 100; float w, h; für (int i = 0; i <files.length; i ++) {Bild img = image.getInstance (Dateien [i] .GetCanonicalPath ();/*Prozess Bild scaling*/w = img.getWidth (); . (A4_height*100)/h;}img.scalePercent(percent);document.add(img);}document.close();//Close the container}public static void main(String[] args) {// TODO automatic generated method stub new Jiemian_mian();}} Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.