Trabajando con Flex y ActionScript, me he topado con AlivePDF, una librería SWC que permite generar este tipo de documentos desde ActionScript. En la web hay un par de video tutoriales muy sencillos y para empezar vienen muy bien.
Aunque en los ejemplos utilizan un PHP para devolver el documento, yo he probado con el servlet de Java que tienen posteado, y también funciona.
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class CreatePDFServlet extends HttpServlet {
public void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
{
doGet(req, resp);
}
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
{
int i = 0;
int k = 0;
int maxLength = req.getContentLength();
byte[] bytes = new byte[maxLength];
String method = req.getParameter("method");
String name = req.getParameter("name");
ServletInputStream si = req.getInputStream();
while (true)
{
k = si.read(bytes,i,maxLength);
i += k;
if (k <= 0)
break;
}
if (bytes != null)
{
ServletOutputStream stream = resp.getOutputStream();
resp.setContentType("application/pdf");
resp.setContentLength(bytes.length);
resp.setHeader("Content-Disposition",method + ";filename=" + name);
stream.write(bytes);
stream.flush();
stream.close();
}
else
{
resp.setContentType("text");
resp.getWriter().write("bytes is null");
}
}
}
Se puede hacer de todo con el documento, hasta dibujar, usando el API que proporciona.
AS:
myPDF = new PDF( Orientation.PORTRAIT, Unit.MM, Size.A4 );
myPDF.setDisplayMode( Display.FULL_PAGE, Layout.SINGLE_PAGE );
No hay comentarios:
Publicar un comentario