Stevens Institute of Technology



Creating PDF on the fly

Now we are creating dynamic PDF’s on the fly using DOMPDF.

Advantages:-

1. Very less time to implement and integrate to the application since it’s developed by using PHP

2. Reside under storage01/w3far$. We don’t have to install the application on other server.

3. Handles most CSS2.1 properties & selectors, including @import, @media & @page rules (see here)

4. Supports most presentational HTML 4.0 attributes

5. Supports external stylesheets, either on the local machine or through http/ftp (via fopen-wrappers)

6. Supports complex tables, including row & column spans, separate & collapsed border models, individual cell styling, multi-page tables (no nested tables yet however)

7. Image support (png, gif & jpeg)

8. No dependencies on external PDF libraries

9. link and anchor support

10. Inline PHP support.

11. It’s free.

Limitations:

1. Tables cannot be reliably nested (though some have them is a success)

2. Ordered lists are currently unsupported.

3. Large files (greater than 40 pages) can take a while to render

4. Doesn’t support all the Greek letters

We chose DOMPDF previously because we could implement it in 5-6 days.

______________________________________________________________________________

To solve the limitations of DOMPDF we have to develop our own PDF creator using PDF SDK development kit

Advantage: Depending upon the development Kit we choose it may solve the Limitations of DOMPDF

Disadvantage: We need to install the development kit on one of the secure server we have.

We can install SDK on the below servers:-

soesrv01.campus.stevens-tech.edu (previous assessment system)

soesrv02. campus.stevens-tech.edu (Assessment System)

soesrv03. campus.stevens-tech.edu (Sakai & FAR)

If we choose soesrv03. campus.stevens-tech.edu (Sakai & FAR), we may have a problem, if we decide to put FAR on another server.

Servers we have don’t have PHP installed, so we need to install PHP on the server we choose.

Work involved when the user request for a PDF is

1) The request has to come to the server where SDK is installed.

2) Write a script using the given SDK and convert it into PDF

3) Pass the response back to the user

__________________________________________________________________________________

Some of the SDK available in the market which supports creation of PDF’s on the fly:-

|SDK name |Support for Programming language |

|BCL PDF SDK |.NET Environment , JAVA, ASP, Visual C++ 6.0 , Visual Basic 6.0, PHP, ColdFusion, Perl, Python (requires |

| |PythonWin), Any programming language that supports COM Object, ActiveX, OLE |

| |Samples available in NET Environment , JAVA, ASP |

|novaPDF SDK |samples available in , C#, C++, Delphi, Java, Ms Access, Visual Basic, VBNet |

|Foxit PDF SDK (DLL) |Foxit Reader SDK is packaged in a DLL (Dynamic Link Library), which can be called from different programming |

| |languages, including C/C++, C#, Delphi, Visual Basic, etc. |

|Adobe PDF Library SDK |They have a SDK but they have some samples with java script. |

There are many more SDK’s available but above ones are the frequently used ones. Most of the SDK’s provide support or samples for .net & java. Since we use PHP, any SDK we choose we have to write the code from the scratch. There is not much support available. If we implement creating PDF’s using java or .net then we have to work on how to call a java function or .net function from PHP.

In the above SDK’s I could test only BCL PDF SDK. I tested it both on java & PHP. But to test the full functionality and to integrate into our application I need some more time.

Writing a script for creating the PDF using the SDK may take up to 7-8 days. And another 10-12 days to integrate into the application. Choosing the correct SDK may take 5-6 days.

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download