Making a PDF file utilizing Java code
We’ll use the iText API for making a pdf file utilizing java code. Its a open source java API for creating pdf information, However if you’re planning to make use of this iText API for industrial goal that you must purchase a licence for it. You possibly can download this iText API from under hyperlink.
You possibly can create pdf paperwork, XML information, HTML in addition to RTF paperwork utilizing this API. Plenty of customization are there on this iText API which permits customers create paragraphs, making use of completely different fonts, including pictures to pdf information, including watermarks to pdf paperwork and so forth.
Steps to be adopted for making a PDF Doc
- Create a doc utilizing com.itextpdf.textual content.Doc class of iText API.
- Now create a PdfWriter utilizing com.itextpdf.textual content.pdf.PdfWriter.
- Open the doc and begin writing textual content to it.
- After writing content material to it, shut the doc in addition to author.
Beneath is the Snapshots for Utility utilizing Java swings:
Right here person will enter the main points on the UI type of member software. We have now one button additionally which can be used to create pdf file within the location we’ve supplied.
On this snapshots you possibly can see the person has entered all the main points. [Note] We’re contemplating date subject because the string solely.
Now shifting on to source code of this small software:
1 2 |
/*<br/> * To vary this license header, select License Headers in Challenge Properties.<br/> * To vary this template file, select Instruments | Templates<br/> * and open the template within the editor.<br/> */<br/>bundle com.projectsgeek;<br/><br/>import com.itextpdf.textual content.Doc;<br/>import com.itextpdf.textual content.DocumentException;<br/>import com.itextpdf.textual content.Paragraph;<br/>import com.itextpdf.textual content.pdf.PdfWriter;<br/>import java.awt.occasion.ActionEvent;<br/>import java.awt.occasion.ActionListener;<br/>import java.io.FileNotFoundException;<br/>import java.io.FileOutputStream;<br/><br/>/**<br/> *<br/> * @creator Projectsgeek<br/> */<br/>public class MainWindow extends javax.swing.JFrame implements ActionListener{<br/><br/> /**<br/> * Creates new type MainWindow<br/> */<br/> public MainWindow() {<br/> initComponents();<br/> this.setTitle("Create a PDF File Demo");<br/> jButton1.addActionListener(this);<br/> }<br/><br/> /**<br/> * This technique is known as from throughout the constructor to initialize the shape.<br/> * WARNING: Do NOT modify this code. The content material of this technique is at all times<br/> * regenerated by the Type Editor.<br/> */<br/> @SuppressWarnings("unchecked")<br/> // <editor-fold defaultstate="collapsed" desc="Generated Code"> <br/> non-public void initComponents() {<br/><br/> jLabel1 = new javax.swing.JLabel();<br/> jLabel2 = new javax.swing.JLabel();<br/> jTextField1 = new javax.swing.JTextField();<br/> jLabel3 = new javax.swing.JLabel();<br/> jTextField2 = new javax.swing.JTextField();<br/> jLabel4 = new javax.swing.JLabel();<br/> jTextField3 = new javax.swing.JTextField();<br/> jLabel5 = new javax.swing.JLabel();<br/> jTextField4 = new javax.swing.JTextField();<br/> jLabel6 = new javax.swing.JLabel();<br/> jTextField5 = new javax.swing.JTextField();<br/> jButton1 = new javax.swing.JButton();<br/><br/> setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);<br/> setPreferredSize(new java.awt.Dimension(500, 500));<br/><br/> jLabel1.setText("Title");<br/><br/> jLabel2.setText("Create a PDF Utility");<br/><br/> jLabel3.setText("Gender");<br/><br/> jLabel4.setText("Date of Delivery");<br/><br/> jLabel5.setText("Fathers Title");<br/><br/> jLabel6.setText("Tackle");<br/><br/> jButton1.setText("Create a PDF File");<br/><br/> javax.swing.GroupLayout structure = new javax.swing.GroupLayout(getContentPane());<br/> getContentPane().setLayout(structure);<br/> structure.setHorizontalGroup(<br/> structure.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)<br/> .addGroup(structure.createSequentialGroup()<br/> .addContainerGap()<br/> .addGroup(structure.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)<br/> .addGroup(structure.createSequentialGroup()<br/> .addGroup(structure.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)<br/> .addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE)<br/> .addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 70, javax.swing.GroupLayout.PREFERRED_SIZE)<br/> .addComponent(jLabel3)<br/> .addComponent(jLabel5)<br/> .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE))<br/> .addGap(99, 99, 99)<br/> .addGroup( structure.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)<br/> .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 140, javax.swing.GroupLayout.PREFERRED_SIZE)<br/> .addGroup(structure.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)<br/> .addComponent(jTextField2, javax.swing.GroupLayout.DEFAULT_SIZE, 140, Brief.MAX_VALUE)<br/> .addComponent(jTextField3)<br/> .addComponent(jTextField4)<br/> .addComponent(jTextField5)))<br/> .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Brief.MAX_VALUE))<br/> .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, structure.createSequentialGroup()<br/> .addGap(0, 250, Brief.MAX_VALUE)<br/> .addGroup(structure.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)<br/> .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, structure.createSequentialGroup()<br/> .addComponent(jButton1)<br/> .addGap(187, 187, 187))<br/> .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, structure.createSequentialGroup()<br/> .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 163, javax.swing.GroupLayout.PREFERRED_SIZE)<br/> .addGap(162, 162, 162))))))<br/> );<br/> structure.setVerticalGroup(<br/> structure.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)<br/> .addGroup(structure.createSequentialGroup()<br/> .addContainerGap()<br/> .addComponent(jLabel2)<br/> .addGap(41, 41, 41)<br/> .addGroup(structure.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)<br/> .addComponent(jLabel1)<br/> .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))<br/> .addGap(18, 18, 18)<br/> .addGroup(structure.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)<br/> .addComponent(jLabel3)<br/> .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))<br/> .addGap(18, 18, 18)<br/> .addGroup(structure.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)<br/> .addComponent(jLabel4)<br/> .addComponent(jTextField3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))<br/> .addGap(18, 18, 18)<br/> .addGroup(structure.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)<br/> .addComponent(jLabel5)<br/> .addComponent(jTextField4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))<br/> .addGap(24, 24, 24)<br/> .addGroup(structure.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)<br/> .addComponent(jLabel6)<br/> .addComponent(jTextField5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))<br/> .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 49, Brief.MAX_VALUE)<br/> .addComponent(jButton1)<br/> .addGap(42, 42, 42))<br/> );<br/><br/> pack();<br/> }// </editor-fold> <br/><br/> /**<br/> * @param args the command line arguments<br/> */<br/> public static void essential(String args[]) {<br/> /* Set the Nimbus feel and appear */<br/> //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "><br/> /* If Nimbus (launched in Java SE 6) just isn't obtainable, stick with the default feel and appear.<br/> * For particulars see https://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html <br/> */<br/> attempt {<br/> for (javax.swing.UIManager.LookAndFeelInfo information : javax.swing.UIManager.getInstalledLookAndFeels()) {<br/> if ("Nimbus".equals(information.getName())) {<br/> javax.swing.UIManager.setLookAndFeel(information.getClassName());<br/> break;<br/> }<br/> }<br/> } catch (ClassNotFoundException ex) {<br/> java.util.logging.Logger.getLogger(MainWindow.class.getName()).log(java.util.logging.Stage.SEVERE, null, ex);<br/> } catch (InstantiationException ex) {<br/> java.util.logging.Logger.getLogger(MainWindow.class.getName()).log(java.util.logging.Stage.SEVERE, null, ex);<br/> } catch (IllegalAccessException ex) {<br/> java.util.logging.Logger.getLogger(MainWindow.class.getName()).log(java.util.logging.Stage.SEVERE, null, ex);<br/> } catch (javax.swing.UnsupportedLookAndFeelException ex) {<br/> java.util.logging.Logger.getLogger(MainWindow.class.getName()).log(java.util.logging.Stage.SEVERE, null, ex);<br/> }<br/> //</editor-fold><br/><br/> /* Create and show the shape */<br/> java.awt.EventQueue.invokeLater(new Runnable() {<br/> public void run() {<br/> new MainWindow().setVisible(true);<br/> }<br/> });<br/> }<br/><br/> // Variables declaration - don't modify <br/> non-public javax.swing.JButton jButton1;<br/> non-public javax.swing.JLabel jLabel1;<br/> non-public javax.swing.JLabel jLabel2;<br/> non-public javax.swing.JLabel jLabel3;<br/> non-public javax.swing.JLabel jLabel4;<br/> non-public javax.swing.JLabel jLabel5;<br/> non-public javax.swing.JLabel jLabel6;<br/> non-public javax.swing.JTextField jTextField1;<br/> non-public javax.swing.JTextField jTextField2;<br/> non-public javax.swing.JTextField jTextField3;<br/> non-public javax.swing.JTextField jTextField4;<br/> non-public javax.swing.JTextField jTextField5;<br/> // Finish of variables declaration <br/><br/> @Override<br/> public void actionPerformed(ActionEvent e) {<br/> <br/> Doc doc = new Doc();<br/> attempt<br/> {<br/> PdfWriter author = PdfWriter.getInstance(doc, new FileOutputStream("d://MemberDetails.pdf"));<br/> doc.open();<br/> doc.add(new Paragraph("That is registration Web page"));<br/> doc.add(new Paragraph("Member Title:"+this.jTextField1.getText()));<br/> doc.add(new Paragraph("Member Gender:"+this.jTextField2.getText()));<br/> doc.add(new Paragraph("Member DOB:"+this.jTextField3.getText()));<br/> doc.add(new Paragraph("Member Fathers:"+this.jTextField4.getText()));<br/> doc.add(new Paragraph("Member Tackle:"+this.jTextField5.getText()));<br/> doc.shut();<br/> author.shut();<br/> } catch (DocumentException e2)<br/> {<br/> e2.printStackTrace();<br/> } catch (FileNotFoundException e1)<br/> {<br/> e1.printStackTrace();<br/> }<br/> <br/> }<br/>}<br/> |
Obtain the Supply Code
Creating a PDF file using Java Code
Supply projectgeek.com