Forum Replies Created
-
AuthorPosts
-
in reply to: Which licence should I purchase ? May 21, 2024 at 07:18#38231
> Is it possible to convert PDF to PDF UA (accessible PDF) using PD4ML
No. I am afraid this type of conversion is not possible robust automated way.
PDF/UA requires a lot of additional information, normally missing in regular PDFs: alternative text description for all content portions, for visual elements and artifacts; requires structure information (tagging) for tables, lists, headings etc.
By HTML-to-PDF conversion the info can be provided via HTML tag attributes, the structure info comes from the HTML document structure.in reply to: Licensing / Purchasing of PD4ML May 21, 2024 at 13:14#38232We have purchased the PD4ML V4 Java Single PRO License and plan to use it within the Eclipse environment on Java Module Projects. However, we are facing issues with activating the license. We are using the org.zefer.pd4ml.PD4ML class with the pd4ml-4.0.19fx1-jakarta.jar file. We chose not to use com.pd4ml.PD4ML as its structure is very different from that in org.zefer.pd4ml.PD4ML.
Below is the code we use for PDF conversion, but we are still receiving a demo license warning. Despite meticulously following the instructions provided by the system, we have not been able to find a solution.
Sample Code:
org.zefer.pd4ml.PD4ML pd4ml = new org.zefer.pd4ml.PD4ML();
pd4ml.setPageInsets(new Insets(15, 5, 10, 5));
pd4ml.setHtmlWidth(1024);
pd4ml.setPageSize(pd4ml.changePageOrientation(format));
..in reply to: License Activation May 21, 2024 at 13:59#38233Hi! Try to switch debug on with pd4ml.enableDebugInfo() API call and inspect STDOUT for possible license reading errors.
pd4ml.lic is expected to be in the application workdir or in the classpath root (not in lib/ dir where pd4ml.jar is)
Also even if you use legacy API with PD4ML v3 wrapper, you always have access to v4 instance with
pd4ml.pd4mlNew.applyLicense(code);
in reply to: Technical questions / Troubleshooting May 21, 2024 at 16:50#38234Hi PD4ML team,
We are using an older version of pd4ml which is using JSP tags to convert HTML to PDF. Now we are planning to use the latest version of it but looks like the new tag library is not working.
Do we have a working example of the latest version? We are trying 4.0.19fx1-jakarta version.
Can you please help?
Thanks
Satenderin reply to: Technical questions / Troubleshooting May 26, 2024 at 16:28#38246Hi.
on setting password in my test run on ubuntu i get every time i try to set a permission this below shown exception.
doing this:
pd4ml.setPermissions(if(password.trim.isEmpty) "empty" else password ,0xffffffff)
pd4ml.setPermissions(if(password.trim.isEmpty) "empty" else password ,0xffffffff)
I want to modify it with change permissions like this:
pd4ml.setPermissions( "test", Constants.DefaultPermissions ^ Constants.AllowFillingForms )
pd4ml.setPermissions( "test", Constants.DefaultPermissions ^ Constants.AllowFillingForms )always getting the same error.
java.lang.NullPointerException: Cannot read the array length because "buf" is null at java.base/java.io.ByteArrayInputStream.<init>(ByteArrayInputStream.java:108) at com.pd4ml.pdf.encryption.s.o00000(y:3227) at com.pd4ml.pdf.parser.obj.f.o00000(y:1998) at com.pd4ml.pdf.parser.d.o00000(y:1818) at com.pd4ml.pdf.parser.d.o00000(y:1849) at com.pd4ml.html.doc.render.to.m.Ò00000(y:1055) at com.pd4ml.html.doc.render.to.f.o00000(y:3119) at com.pd4ml.PD4ML.writePDF(y:1482) at com.pd4ml.PD4ML.writePDF(y:151) at de.heilpraktikerelbmarsch.pdf.PDFPrinter.writePdf(PDFPrinter.scala:80) at core.client.services.PdfServiceController.$anonfun$generatePdf$10(PdfServiceController.scala:358)
java.lang.NullPointerException: Cannot read the array length because "buf" is null at java.base/java.io.ByteArrayInputStream.<init>(ByteArrayInputStream.java:108) at com.pd4ml.pdf.encryption.s.o00000(y:3227) at com.pd4ml.pdf.parser.obj.f.o00000(y:1998) at com.pd4ml.pdf.parser.d.o00000(y:1818) at com.pd4ml.pdf.parser.d.o00000(y:1849) at com.pd4ml.html.doc.render.to.m.Ò00000(y:1055) at com.pd4ml.html.doc.render.to.f.o00000(y:3119) at com.pd4ml.PD4ML.writePDF(y:1482) at com.pd4ml.PD4ML.writePDF(y:151) at de.heilpraktikerelbmarsch.pdf.PDFPrinter.writePdf(PDFPrinter.scala:80) at core.client.services.PdfServiceController.$anonfun$generatePdf$10(PdfServiceController.scala:358)current version i am using: 4.1.0-SNAPSHOT
in reply to: Licensing / Purchasing of PD4ML May 27, 2024 at 04:23#38247How can I get in touch with the vendor on PDF4ML enterprise license
in reply to: How can I get in touch with the vendor on PDF4ML enterprise license May 27, 2024 at 05:43#38248Hi! please contact sales @ pd4ml . com
in reply to: Technical questions / Troubleshooting May 28, 2024 at 19:32#38249Hi,
We are using the PD4ML Trasform tag in the jso to convert the page to PDF. The tag is causing the page to be reloaded in Safari browser. Basically the page is getting loaded twice.
Please let me know if anyone has encountered this and if there is a fix.
Note: It worked fine for me on Chrome but another user reported the reload on Chrome.
Here is the tag that we are using:<%@ taglib uri=”http://pd4ml.com/tlds/4.0″ prefix=”pd4tl” %><%@page
contentType=”text/html; charset=UTF-8″%><pd4tl:transform
screenWidth=”900″
pageFormat=”A4″
pageOrientation=”portrait”
pageInsets=”25,25,25,25,points”
fileName=”filename123.pdf”
inline=”true”
enable=”true”
debug=”1″>Thanks in advance.
Madhviin reply to: PD4ML – Which licence key should we use May 29, 2024 at 07:55in reply to: Technical questions / Troubleshooting May 29, 2024 at 14:39#38255The left-border in the table is cut-out by the parent div, but it should not since div and parent-div have same width.
PD4ML v3 renders it correctly, but PD4ML v4 does not (it cuts out the border).
The code follows. For the files, see attachments:
– issue-1.html is the HTML source to be converted into PDF
– issue-1-PDF4MLv3.pdf is the correct rendering made by version 3
– issue-1-PDF4MLv4.pdf is the wrong rendering made by version 4public static void main(String[] args) throws Exception { PD4ML pd4ml = new PD4ML(); pd4ml.applyLicense("...omissis..."); pd4ml.setPageSize(new PageSize(595, 842)); pd4ml.setPageMargins(new PageMargins(0, 0, 0, 0)); pd4ml.setHtmlWidth(1190); pd4ml.generateForms(true, "sans-serif"); String html = Files.readString(Paths.get("src/main/resources/sblend5.html")); ByteArrayInputStream bais = new ByteArrayInputStream(html.getBytes("UTF-8")); pd4ml.readHTML(bais, null, "utf-8"); File pdf = File.createTempFile("result", ".pdf"); FileOutputStream fos = new FileOutputStream(pdf); pd4ml.writePDF(fos); Desktop.getDesktop().open(pdf); }
- public static void main(String[] args) throws Exception {
- PD4ML pd4ml = new PD4ML();
- pd4ml.applyLicense("...omissis...");
- pd4ml.setPageSize(new PageSize(595, 842));
- pd4ml.setPageMargins(new PageMargins(0, 0, 0, 0));
- pd4ml.setHtmlWidth(1190);
- pd4ml.generateForms(true, "sans-serif");
- String html = Files.readString(Paths.get("src/main/resources/sblend5.html"));
- ByteArrayInputStream bais = new ByteArrayInputStream(html.getBytes("UTF-8"));
- pd4ml.readHTML(bais, null, "utf-8");
- File pdf = File.createTempFile("result", ".pdf");
- FileOutputStream fos = new FileOutputStream(pdf);
- pd4ml.writePDF(fos);
- Desktop.getDesktop().open(pdf);
- }
public static void main(String[] args) throws Exception { PD4ML pd4ml = new PD4ML(); pd4ml.applyLicense("...omissis..."); pd4ml.setPageSize(new PageSize(595, 842)); pd4ml.setPageMargins(new PageMargins(0, 0, 0, 0)); pd4ml.setHtmlWidth(1190); pd4ml.generateForms(true, "sans-serif"); String html = Files.readString(Paths.get("src/main/resources/sblend5.html")); ByteArrayInputStream bais = new ByteArrayInputStream(html.getBytes("UTF-8")); pd4ml.readHTML(bais, null, "utf-8"); File pdf = File.createTempFile("result", ".pdf"); FileOutputStream fos = new FileOutputStream(pdf); pd4ml.writePDF(fos); Desktop.getDesktop().open(pdf); }
Attachments:
You must be logged in to view attached files.in reply to: Wrong clipping using “box-sizing:border-box” in CSS May 29, 2024 at 14:40#38259Since HTML file was rejected as attachment, here is the code:
<?xml version="1.0" encoding="utf-8" ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> * { box-sizing:border-box; margin:0px; padding:0px; } body, td, div, b, th { font-family: Arial, Helvetica, sans-serif; font-size:19px; line-height:24px; } td { border: solid 1px #000000; } table { border-spacing: 0; border-collapse: collapse; } .fixed { height: 500px; overflow: hidden; } .page { padding: 95px; } </style> </head> <body> <div class="page"> <table style="width:100%"> <tr> <td style="border:none">TEST STRING</td><td>TEST STRING</td> </tr> <tr> <td>TEST STRING</td><td>TEST STRING</td> </tr> </table> <br> <div class="fixed"> <table style="width:100%"> <tr> <td style="border:none">TEST STRING</td><td>TEST STRING</td> </tr> <tr> <td>TEST STRING</td><td>TEST STRING</td> </tr> </table> </div> </div> </body> </html>
- <?xml version="1.0" encoding="utf-8" ?>
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>Title</title>
- <style>
- * {
- box-sizing:border-box;
- margin:0px;
- padding:0px;
- }
- body, td, div, b, th {
- font-family: Arial, Helvetica, sans-serif;
- font-size:19px;
- line-height:24px;
- }
- td {
- border: solid 1px #000000;
- }
- table {
- border-spacing: 0;
- border-collapse: collapse;
- }
- .fixed {
- height: 500px;
- overflow: hidden;
- }
- .page {
- padding: 95px;
- }
- </style>
- </head>
- <body>
- <div class="page">
- <table style="width:100%">
- <tr>
- <td style="border:none">TEST STRING</td><td>TEST STRING</td>
- </tr>
- <tr>
- <td>TEST STRING</td><td>TEST STRING</td>
- </tr>
- </table>
- <br>
- <div class="fixed">
- <table style="width:100%">
- <tr>
- <td style="border:none">TEST STRING</td><td>TEST STRING</td>
- </tr>
- <tr>
- <td>TEST STRING</td><td>TEST STRING</td>
- </tr>
- </table>
- </div>
- </div>
- </body>
- </html>
<?xml version="1.0" encoding="utf-8" ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> * { box-sizing:border-box; margin:0px; padding:0px; } body, td, div, b, th { font-family: Arial, Helvetica, sans-serif; font-size:19px; line-height:24px; } td { border: solid 1px #000000; } table { border-spacing: 0; border-collapse: collapse; } .fixed { height: 500px; overflow: hidden; } .page { padding: 95px; } </style> </head> <body> <div class="page"> <table style="width:100%"> <tr> <td style="border:none">TEST STRING</td><td>TEST STRING</td> </tr> <tr> <td>TEST STRING</td><td>TEST STRING</td> </tr> </table> <br> <div class="fixed"> <table style="width:100%"> <tr> <td style="border:none">TEST STRING</td><td>TEST STRING</td> </tr> <tr> <td>TEST STRING</td><td>TEST STRING</td> </tr> </table> </div> </div> </body> </html>
in reply to: Technical questions / Troubleshooting May 30, 2024 at 09:08#38260We use Java 21 and Tomcat 9.
There are two “versions” of the same “version”, one Jakarta and one not-Jakarta.Which are the differences?
We use PD4MLv3 and there are:
– pd4ml.prof.3115fx3.zip
– pd4ml.prof.3115fx4-jakarta.zipWhich one is the correct one?
in reply to: What is Jakarta version? May 30, 2024 at 09:27#38261The difference between the versions is in use of
jakarta.servlet.*
jakarta.servlet.* instead ofjavax.servlet.*
javax.servlet.*. Both are built with Tomcat 9.0’sservlet-api.jar
servlet-api.jar andjsp-api.jar
jsp-api.jarIf your environment is strict javax-less, use the jakarta version. If not, then the regular one since currently it is a bit advanced at the patch level.
in reply to: Licensing / Purchasing of PD4ML June 17, 2024 at 09:52#38301Hi Team,
I have to purchase license for below dependency.
<dependency>
<groupId>com.pd4ml</groupId>
<artifactId>pd4ml</artifactId>
<version>4.0.19</version>
</dependency>How can i purchase the license for this above dependency. Which license i should purchase Single, Site License or Enterprise ? I have a spring application where i just need to convert the html into pdf.
Regards,
Aayushin reply to: Technical questions / Troubleshooting June 27, 2024 at 14:36#38340Hello,
I’ld like to know where exactly I can find documentation about all JSP custom tags (i.e.
pd4ml:page.header
pd4ml:page.header etc.) and all their attributes, etc.On the programmers manual there are no details about.
many thanks
A. de Manzano
-
AuthorPosts