MainClass.java Source code

Java tutorial

Introduction

Here is the source code for MainClass.java

Source

import java.io.FileOutputStream;
import java.util.ArrayList;

import com.lowagie.text.Chunk;
import com.lowagie.text.Document;
import com.lowagie.text.Phrase;
import com.lowagie.text.pdf.BaseFont;
import com.lowagie.text.pdf.PdfAction;
import com.lowagie.text.pdf.PdfContentByte;
import com.lowagie.text.pdf.PdfLayer;
import com.lowagie.text.pdf.PdfWriter;

public class MainClass {
    public static void main(String[] args) throws Exception {
        Document document = new Document();
        PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("2.pdf"));
        writer.setPdfVersion(PdfWriter.VERSION_1_5);
        document.open();
        PdfLayer a1 = new PdfLayer("answer 1", writer);
        a1.setOn(false);

        BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED);
        PdfContentByte cb = writer.getDirectContent();
        cb.beginText();
        cb.setTextMatrix(50, 790);
        cb.setLeading(24);
        cb.setFontAndSize(bf, 18);
        cb.newlineShowText("This is a question?");
        cb.beginLayer(a1);
        cb.setRGBColorFill(0xFF, 0x00, 0x00);
        cb.newlineShowText("This is the answer");
        cb.resetRGBColorFill();
        cb.endLayer();
        cb.endText();

        ArrayList stateOn = new ArrayList();
        stateOn.add("ON");
        stateOn.add(a1);
        PdfAction actionOn = PdfAction.setOCGstate(stateOn, true);
        ArrayList stateOff = new ArrayList();
        stateOff.add("OFF");
        stateOff.add(a1);
        PdfAction actionOff = PdfAction.setOCGstate(stateOff, true);
        ArrayList stateToggle = new ArrayList();
        stateToggle.add("Toggle");
        stateToggle.add(a1);
        PdfAction actionToggle = PdfAction.setOCGstate(stateToggle, true);
        Phrase p = new Phrase("Change the state of the answers:");
        Chunk on = new Chunk(" on ").setAction(actionOn);
        p.add(on);
        Chunk off = new Chunk("/ off ").setAction(actionOff);
        p.add(off);
        Chunk toggle = new Chunk("/ toggle").setAction(actionToggle);
        p.add(toggle);
        document.add(p);
        document.close();
    }
}