Prawn
HexaPDF
Our great sponsors
Prawn | HexaPDF | |
---|---|---|
7 | 23 | |
4,404 | 1,046 | |
0.4% | - | |
3.4 | 6.1 | |
6 days ago | 7 days ago | |
Ruby | Ruby | |
CNRI Python Open Source GPL Compatible License Agreement | AGPL-3.0, Nonstandard |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Prawn
-
Invoicing gem implementation
Prawn pdf: https://github.com/prawnpdf/prawn
-
Working on Script to auto-generate templates, help needed
Javascript isn't really my thing, so first I had a go with the Prawn library in ruby, but now I'm hacking LuaTex via Fennel and having a blast.
-
Creating PDFs in a Ruby on Rails application
You have a few options when trying to create a PDF in a Rails environment. Prawn and Wicked PDF have been around for quite a while. I have been using both gems and they work fine. However, they have a few limitations that can make it difficult to handle more complex PDFs. I recently discovered Grover, which can remediate some of this inflexibility in creating PDFs.
-
What libraries do you miss from other languages?
On this note, Ruby’s Prawn is great at the writing half and I miss it in pretty much every other language.
HexaPDF
-
HexaPDF Extras - Additional functionality for the HexaPDF library
I have just released my new gem hexapdf-extras which provides additional functionality on top of the HexaPDF library.
-
Understanding Text in PDF
Regarding TrueType font support: What I meant was that the library isn't a full TrueType font library but contains just the parts necessary for PDF supports. So what it can do is write a subset of a TrueType file because that's needed. But it can't serialize any arbitrary TrueType tables and it only handles those TrueType tables needed for displaying text in PDF. More advanced things like glyph positioning based on the language and characters in question is also not supported but may be in the future. Have a look at https://github.com/gettalong/hexapdf/tree/master/lib/hexapdf/font/true_type/ to see the implementation. All the things in this folder and below should be independent of PDF.
TrueType subsetting mainly consists of generating the necessary glyph and various index tables, and copying over all the other necessary tables which don't need to be adjusted. See https://github.com/gettalong/hexapdf/blob/master/lib/hexapdf/font/true_type/subsetter.rb for what is needed to subset.
-
What do you use ruby for?
for all my PDF processing needs, courtesy of HexaPDF,
-
One Class/Module per File Rules - Working With Nested Modules
Break the "rules" if need be. There is no need to separate out small classes into their own file because "something says so". If one were to look for the file of such a class, they would see there isn't one and automatically look into the file of the parent module/class. See e.g. https://github.com/gettalong/hexapdf/blob/master/lib/hexapdf/type/annotation.rb
-
[WIP] Creating Digital Signatures for PDFs with HexaPDF
I'm currently in the process of adding support for digital signatures to HexaPDF.
The code for all this is in the devel branch if you want to try it out.
-
Free / low cost software to remove a page from PDF on Windows 10?
There are a variety of command line tools like HexaPDF and qpdf that can do this; however, they need to be used on the command line.
-
Hooking into RDoc for better documentation with automatically executed examples
After I got some feedback about missing examples in the API documentation of HexaPDF, I decided to do something about it.
-
Read, write, and edit PDF files with borb, a pure Python library
If you want to do something like this in Ruby, have a look at HexaPDF - https://hexapdf.gettalong.org/ - which provides a full-blown implementation for reading and writing PDFs and is quite mature already (n.b. I'm the author).
It is licensed AGPL+Commercial but if you just use it for yourself, this does not matter as you can use the AGPL.
What are some alternatives?
Wicked Pdf - PDF generator (from HTML) plugin for Ruby on Rails
Pdfkit - A Ruby gem to transform HTML + CSS into PDFs using the command-line utility wkhtmltopdf
Grover - A Ruby gem to transform HTML into PDFs, PNGs or JPEGs using Google Puppeteer/Chromium
CombinePDF - A Pure ruby library to merge PDF files, number pages and maybe more...
Squid - A Ruby library to plot charts in PDF files
Shrimp - a phantomjs based pdf renderer
RGhost - RGhost is a document creation and conversion API. It uses the Ghostscript framework for the format conversion, utilizes EPS templates and is optimized to work with larger documents. Support(PDF,PS,GIF,TIF,PNG,JPG,etc)
jsPDF - Client-side JavaScript PDF generation for everyone.