rtfarte / openpdf Goto Github PK
View Code? Open in Web Editor NEWThis project forked from kulatamicuda/itext-4.2.0
No longer actively maintained. Please send all pull requests to: https://github.com/librepdf/openpdf
License: Other
This project forked from kulatamicuda/itext-4.2.0
No longer actively maintained. Please send all pull requests to: https://github.com/librepdf/openpdf
License: Other
I sometimes get the following exception in the latest version of OpenPDF when getting bookmarks from a PDF:
Caused by: java.lang.ClassCastException: com.lowagie.text.pdf.PdfString cannot be cast to com.lowagie.text.pdf.PdfDictionary
at com.lowagie.text.pdf.SimpleBookmark.getBookmark(SimpleBookmark.java:289)
.....
The ClassCastException occurs here:
https://github.com/rtfarte/OpenPDF/blob/master/openpdf/src/main/java/com/lowagie/text/pdf/SimpleBookmark.java#L289
@andreasrosdal would you add yourself to the block of developers in the main pom? (if you're interested in doing so)
I would like to continue to create submodules that encapsulate different pieces of functionality. For example, I would like to create a crypto module that includes the bouncy castle libraries. This would be optional and you would include it only if you needed crypto functionality. Eventually, the core library would be just for managing generic documents. Even the pdf functionality would be a submodule.
Hi,
I've prepared the test example showing an issue: https://gist.github.com/syakovyn/8a28ab096bf5fa160f0baf0c6559a24a
The attached PDF shows a workaround that has bullets, but without spaces; the original lists without bullets at all; and the required behavior (default one when creating lists programmatically)
test.pdf
There are two issues here:
Serhiy
I'm torn on this one. We might want to go as far as Java 7, as it's everywhere by now. However, Oracle has dropped support for even java 7. It might be best to go with java 8, which allows us to use the newest language features.
We don't want to be held to any copyright or protected works. We need to remove anything that might get others into trouble by including this library in their projects. I would like the license to be as open as possible, but we need to make sure we can open it up first.
I noticed that you changed the license to MIT in b7af357. However, the original iText source files state that they are licensed under LGPL/MPL. I assume that only new contributions are licensed under the MIT license? I don't think you can change the license of the whole code base unless you're the original copyright holder, especially from a restrictive license like LGPL to more permissive MIT.
Another question is what would be the license of the whole library. I'm under the impression that because LGPL is a copyleft license, the whole work would have to be licensed under that?
Perhaps you could clarify the license status in README? In my opinion the clearest and (from a legal perspective) safest thing to do would be to revert back to the original license. But again, I'm not a legal expert on FOSS licenses and I would just like to know your reasoning.
This comment by @gilbertoca suggests that we make an official repo under a github organization. I think that's a good idea. And it would make more sense to publish to Maven Central from an OpenPDF organization repo than from the fork on my personal account.
What do you think?
I get the following build failure error messages when running 'mvn install' on the current git master branch of this project, related to the goal org.apache.maven.plugins:maven-gpg-plugin:1.5:sign.
I think we should update the README to document how to build OpenPDF with maven-gpg-plugin.
A workaround to fix 'mvn install' is to comment out the containing the 'maven-gpg-plugin' in pom.xml.
[INFO] ------------------------------------------------------------------------
[INFO] Building OpenPDF - Free and Open PDF 1.0.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-javadoc-plugin:2.10.1:jar (attach-javadocs) @ openpdf-parent ---
[INFO] Not executing Javadoc as the project is not a Java classpath-capable package
[INFO]
[INFO] --- maven-source-plugin:2.4:jar-no-fork (attach-sources) @ openpdf-parent ---
[INFO]
[INFO] --- maven-gpg-plugin:1.5:sign (sign-artifacts) @ openpdf-parent ---
gpg: no default secret key: secret key not available
gpg: signing failed: secret key not available
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] OpenPDF - Free and Open PDF ........................ FAILURE [ 1.450 s]
[INFO] openpdf ............................................ SKIPPED
[INFO] pdf-xml ............................................ SKIPPED
[INFO] pdf-rtf ............................................ SKIPPED
[INFO] pdf-html ........................................... SKIPPED
[INFO] pdf-swing .......................................... SKIPPED
[INFO] pdf-toolbox ........................................ SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.635 s
[INFO] Finished at: 2016-05-12T14:27:45+02:00
[INFO] Final Memory: 14M/245M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-gpg-plugin:1.5:sign (sign-artifacts) on project openpdf-parent: Exit code: 2 -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
Please create a public maven release of OpenPDF so that I can include it as a dependency in my pom.xml file.
It seems like it would be good to point people to https://github.com/LibrePDF/OpenPDF as the most active version of OpenPDF.
Goals
Right now, this version (rtfarte/OpenPDF) appears as the most active. Here are the steps that I think it would take to make LibrePDF/OpenPDF more official:
Please comment here if you have any reservations about this plan, or if you'd like to add, remove or change it. Thanks.
Many of the tests generate files in the root of their module. We should make sure that the tests only generate files in the target director so that they get cleaned up and don't clutter the module folders. Another option is to have the data written to byte arrays in memory rather than to a file on disk.
I've never been the biggest fan of the iText style of document creation. It's an extremely powerful library, but it can be difficult to use at times. If we could investigate a way to make document creation more simple, something like a concise, fluid API, I think it might help increase adoption.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.