Hello Ajay:
This is what i have done:
//NoticeRenderer.java
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.OutputStream;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import com.apartment.database.tables.NoticeSettings;
import com.apartment.util.http.HttpSessionHelper;
//PDFHeader.java
//import java.awt.Color;
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Element;
import com.lowagie.text.HeaderFooter;
import com.lowagie.text.Paragraph;
import com.lowagie.text.Phrase;
import com.lowagie.text.pdf.PdfWriter;
import com.lowagie.text.Image;
import com.lowagie.text.PageSize;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import com.lowagie.text.pdf.PdfPageEventHelper;
// import com.lowagie.text.pdf.draw.LineSeparator;
// import com.lowagie.text.pdf.draw.VerticalPositionMark;
/**
*
* @author Sushma
*/
public class NoticeRenderer extends PdfPageEventHelper
{
private void createPDF() throws DocumentException
{
try
{
File inputFile = new File("tomcat.gif");
Document document = new Document(PageSize.A4);
// VerticalPositionMark separator = new LineSeparator(1, 80,
Color.RED, Element.ALIGN_RIGHT, -2);
PdfWriter writer = PdfWriter.getInstance(document, new
FileOutputStream("/home/sushma/workspace1/society/society/src/WebContent" +
File.separator + "previewnotice.pdf"));
writer.setPageEvent(new NoticeRenderer());
String address = "#263, \n Himagiri Meadows, \n BG Road, \n Blr-83";
HeaderFooter header = new HeaderFooter(new Phrase(address), false);
// Image img = Image.getInstance(inputFile.getName());
//img.setAlignment(Element.ALIGN_LEFT);
// header.set(img);
header.setBorder(2);
header.setAlignment(Element.ALIGN_RIGHT);
document.setHeader(header);
// VerticalPositionMark separator = new LineSeparator(1, 80,
Color.RED, Element.ALIGN_RIGHT, -2);
HeaderFooter footer = new HeaderFooter(new Phrase("Page no: "), true);
footer.setBorder(1);
footer.setAlignment(Element.ALIGN_CENTER);
document.setFooter(footer);
Image img = Image.getInstance(inputFile.getName());
img.setAlignment(Element.ALIGN_LEFT);
img.setAbsolutePosition(0 , 846 - img.getScaledHeight());
img.scaleAbsolute(80,70);
System.out.println("*********The scaled height is
***************** :"+img.getScaledHeight());
document.open();
document.add(img);
document.add(new Paragraph("Helloo:"));
document.close();
} catch (IOException ex)
{
Logger.getLogger(NoticeRenderer.class.getName()).log(Level.SEVERE,
null, ex);
}
}
public static void main(String[] args)
{
try
{
NoticeRenderer pdfHeader = new NoticeRenderer();
pdfHeader.createPDF();
} catch (DocumentException ex)
{
Logger.getLogger(NoticeRenderer.class.getName()).log(Level.SEVERE,
null, ex);
}
}
}
__________________________________________________________________________________________________________________________
//previewnotice.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%...@page import="com.apartment.util.http.HttpSessionHelper"%>
<%...@page import="java.net.URLEncoder"%>
<%...@page import="com.lowagie.text.Document"%>
<%...@page import="com.lowagie.text.DocumentException"%>
<%...@page import="com.lowagie.text.Element"%>
<%...@page import="com.lowagie.text.HeaderFooter"%>
<%...@page import="com.lowagie.text.Paragraph"%>
<%...@page import="com.lowagie.text.Phrase"%>
<%...@page import="com.lowagie.text.pdf.PdfWriter"%>
<%...@page import="com.lowagie.text.Image"%>
<%...@page import="com.lowagie.text.PageSize"%>
<%...@page import="java.io.File"%>
<%...@page import="java.io.FileOutputStream"%>
<%...@page import="java.io.IOException"%>
<%...@page import="java.util.logging.Level"%>
<%...@page import="java.util.logging.Logger"%>
<%...@page import="com.lowagie.text.pdf.PdfPageEventHelper"%>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Notice</title>
</head>
<body>
<%
String id = request.getParameter("id");
if (id == null)
return;
int intid = -1;
try {
intid = Integer.parseInt(id);
} catch (Exception ex) {
return;
}
String redirUrl = "previewnotice.jsf?id=" + intid;
if (!HttpSessionHelper.verifySession(response, session)) {
session.setAttribute("redirectUrl", redirUrl);
response.sendRedirect("login.jsf");
return;
}
if (!HttpSessionHelper
.checkIfUserHasRole(RoleDefinition.CAN_ISSUE_NOTICES)) {
session.setAttribute("redirectUrl", redirUrl);
response.sendRedirect("login.jsf");
return;
}
Document tempDoc;
ByteArrayOutputStream tempStream = new ByteArrayOutputStream();
tempDoc = new Document();
PdfWriter writer = PdfWriter.getInstance(tempDoc,tempStream);
response.setContentType("application/pdf");
writer.setPageEvent(new NoticeRenderer());
%>
</body>
</html>
I am unable to view the content of pdf in page.
When i run the .java file seperaltely it's working fine.
Can you please help me with this.
And is there a way to set the image in header rather than hard-coding the
position of the image?
Thanks in advance.
Truly,
-Sushma.
------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
iText-questions mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/itext-questions
Buy the iText book: http://www.1t3xt.com/docs/book.php
Check the site with examples before you ask questions:
http://www.1t3xt.info/examples/
You can also search the keywords list: http://1t3xt.info/tutorials/keywords/