Save work.

This commit is contained in:
Michael R Sweet 2024-12-21 14:04:27 -05:00
parent 62df5f5c78
commit 41ebe39f3b
No known key found for this signature in database
GPG Key ID: BE67C75EC81F3244
3 changed files with 943 additions and 84 deletions

File diff suppressed because it is too large Load Diff

View File

@ -829,7 +829,7 @@ format_code(docdata_t *dd, // I - Document data
{ {
new_page(dd); new_page(dd);
margin_top = (1.0 - LINE_HEIGHT) * lineheight; margin_top = 0.0;
} }
dd->y -= lineheight + margin_top + CODE_PADDING; dd->y -= lineheight + margin_top + CODE_PADDING;
@ -838,7 +838,7 @@ format_code(docdata_t *dd, // I - Document data
{ {
new_page(dd); new_page(dd);
dd->y -= lineheight / LINE_HEIGHT + CODE_PADDING; dd->y -= lineheight + CODE_PADDING;
} }
// Draw the top padding... // Draw the top padding...
@ -870,7 +870,7 @@ format_code(docdata_t *dd, // I - Document data
new_page(dd); new_page(dd);
set_font(dd, DOCFONT_MONOSPACE, SIZE_CODEBLOCK); set_font(dd, DOCFONT_MONOSPACE, SIZE_CODEBLOCK);
dd->y -= lineheight / LINE_HEIGHT; dd->y -= lineheight;
pdfioContentTextBegin(dd->st); pdfioContentTextBegin(dd->st);
pdfioContentTextMoveTo(dd->st, left, dd->y); pdfioContentTextMoveTo(dd->st, left, dd->y);
@ -1010,7 +1010,7 @@ format_doc(docdata_t *dd, // I - Document data
break; break;
case MMD_TYPE_CODE_BLOCK : case MMD_TYPE_CODE_BLOCK :
format_code(dd, current, left + CODE_PADDING, right + CODE_PADDING); format_code(dd, current, left + CODE_PADDING, right - CODE_PADDING);
break; break;
} }
} }
@ -1486,7 +1486,7 @@ render_line(docdata_t *dd, // I - Document data
if (!dd->st) if (!dd->st)
{ {
new_page(dd); new_page(dd);
margin_top = (1.0 - LINE_HEIGHT) * lineheight; margin_top = 0.0;
} }
dd->y -= margin_top + lineheight; dd->y -= margin_top + lineheight;
@ -1494,7 +1494,7 @@ render_line(docdata_t *dd, // I - Document data
{ {
new_page(dd); new_page(dd);
dd->y -= lineheight / LINE_HEIGHT; dd->y -= lineheight;
} }
for (i = 0, frag = frags; i < num_frags; i ++, frag ++) for (i = 0, frag = frags; i < num_frags; i ++, frag ++)

View File

@ -1,22 +1,10 @@
--- ---
title: Markdown to PDF Converter Example title: Markdown to PDF Converter Test File
... ...
Markdown to PDF Converter Example
=================================
The `md2pdf` example program reads a markdown file and formats the content onto Markdown to PDF Converter Test File
pages in a PDF file. It demonstrates how to: ===================================
- Embed base and TrueType fonts,
- Format text,
- Embed JPEG and PNG images,
- Add headers and footers, and
- Add hyperlinks.
Source Files
------------
The `md2pdf` program is organized into three source files: `md2pdf.c` which The `md2pdf` program is organized into three source files: `md2pdf.c` which
contains the code to format the markdown content and `mmd.h` and `mmd.c` (from contains the code to format the markdown content and `mmd.h` and `mmd.c` (from
@ -24,4 +12,73 @@ the [Miniature Markdown Library][MMD] project) which load the markdown content.
[MMD]: https://www.msweet.org/mmd/ [MMD]: https://www.msweet.org/mmd/
This is a test file for `md2pdf`. Here is a bullet list:
- Embed base and TrueType fonts,
- Format text with embedded JPEG and PNG images and check boxes, with support
for wrapping, alignment in table cells, leader text (as used for lists), and
variable line height,
- Add headers and footers, and
- Add hyperlinks and document platform.
And here is an ordered list:
1. Embed base and TrueType fonts,
2. Format text with embedded JPEG and PNG images and check boxes, with support
for wrapping, alignment in table cells, leader text (as used for lists), and
variable line height,
3. Add headers and footers, and
4. Add hyperlinks and document platform.
Code Blocks
-----------
```
0 1 2 3 4 5 6 7 8
12345678901234567890123456789012345678901234567890123456789012345678901234567890
```
Images
------
PDFio book cover image:
![PDFio](../doc/pdfio-epub.png)
Tables
------
Table with leading/trailing pipes:
| Heading 1 | Heading 2 | Heading 3 |
| --------- | --------- | --------- |
| Cell 1,1 | Cell 1,2 | Cell 1,3 |
| Cell 2,1 | Cell 2,2 | Cell 2,3 |
| Cell 3,1 | Cell 3,2 | Cell 3,3 |
Table without leading/trailing pipes:
Heading 1 | Heading 2 | Heading 3
--------- | --------- | ---------
Cell 1,1 | Cell 1,2 | Cell 1,3
Cell 2,1 | Cell 2,2 | Cell 2,3
Cell 3,1 | Cell 3,2 | Cell 3,3
Table with alignment:
Left Alignment | Center Alignment | Right Alignment
:-------- | :-------: | --------:
Cell 1,1 | Cell 1,2 | 1
Cell 2,1 | Cell 2,2 | 12
Cell 3,1 | Cell 3,2 | 123
Table in block quote:
> Heading 1 | Heading 2 | Heading 3
> --------- | --------- | ---------
> Cell 1,1 | Cell 1,2 | Cell 1,3
> Cell 2,1 | Cell 2,2 | Cell 2,3
> Cell 3,1 | Cell 3,2 | Cell 3,3