Project: Remove and replace html2pdf with a more up to date tool

By all means, review the PR for that!

@teryhill are we having this project for GSOC?

It is a project that could be done during GSoC. We will review all the proposals and make selections from them.

@teryhill we are using html2pdf here which uses TCPDF. I think we can directly use TCPDF?

There are a number of options out there. The tool used needs to be a current version.

I will search for more.

@teryhill I searched on the net and the best library I found was TCPDF. It is the most easy to use PHP library to create PDF’s and it doesn’t require executable files as everything works with Plain PHP

1 Like

Is there a version of it in the current code base?

I think its not in the current code base.

We are having FPDF perhaps.

Goto GSoC Chat channel

@teryhill I am interested in this project.

@teryhill we have put the pdf generation code in interface/patient_file/report/custom_report.php. I propose that we create a separate file for pdf generation and which will be called when pdf generation is needed in this way we will increase the speed of the code by not unnecessarily using the pdf generation code in custom_report.php.

html2pdf is by itself, and under /modules. We should only be calling it (or similar) by including the class file. Header include function files are pretty small, but should have very narrow scope. custom_report.php does not exactly meet that standard.

@aethelwulffe I made a separate file, passed the data to the file for pdf generation. The readability of the code is improved. Today I created the pdf for Transactions part of the report. Tomorrow I will show the prototype code.

@teryhill I was thinking of making a separate folder named pdf_generator (or something like that). All the files required for making PDFs will be kept there.

That is a good Idea, maybe putting it in the Modules directory

Yes, this type of approach will make our codebase more clean

I am thinking about more improvements, excited for 23rd :grin:

I am sweating for y’all. :worried:

1 Like