<commit_before>PDFGen
======

Simple C PDF Creation/Generation library.
All contained a single C-file with header and no external library dependencies.

Useful for embedding into other programs that require rudimentary PDF output.

Supports the following PDF features
* Text of various fonts/sizes/colours
* Lines/Rectangles/Filled Rectangles
* Bookmarks
* Barcodes (Code-128)
* PPM Images

Example usage
=============
```c
#include "pdfgen.h"
 ...
struct pdf_doc *pdf = pdf_create(PDF_A4_WIDTH, PDF_A4_HEIGHT);
pdf_append_page(pdf);
pdf_add_text(pdf, NULL, "This is text", 12, 50, 20);
pdf_add_line(pdf, NULL, 50, 24, 150, 24);
pdf_save(pdf, "output.pdf");
pdf_destroy(pdf);
```<commit_msg>Mention jpeg support<commit_after>PDFGen
======

Simple C PDF Creation/Generation library.
All contained a single C-file with header and no external library dependencies.

Useful for embedding into other programs that require rudimentary PDF output.

Supports the following PDF features
* Text of various fonts/sizes/colours
* Lines/Rectangles/Filled Rectangles
* Bookmarks
* Barcodes (Code-128)
* PPM Images
* JPEG Images

Example usage
=============
```c
#include "pdfgen.h"
 ...
struct pdf_doc *pdf = pdf_create(PDF_A4_WIDTH, PDF_A4_HEIGHT);
pdf_append_page(pdf);
pdf_add_text(pdf, NULL, "This is text", 12, 50, 20);
pdf_add_line(pdf, NULL, 50, 24, 150, 24);
pdf_save(pdf, "output.pdf");
pdf_destroy(pdf);
```
{'fraction_non_alphanumeric': 0.12758374910905204, 'fraction_numerical': 0.02851033499643621, 'mean_word_length': 5.685714285714286, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '432053', 'n_tokens_mistral': 504, 'n_tokens_neox': 455, 'n_words': 150}