jay3332 / pilmoji

Pilmoji is a fast and reliable emoji renderer for PIL.
MIT License
77 stars 28 forks source link

`node_spacing` parameter for .text() similar to `spacing`, for number of pixels between nodes #27

Closed WitherredAway closed 1 year ago

WitherredAway commented 1 year ago

This pull request adds an additional parameter to Pilmoji.text() that lets you specify the spacing between each node. This can come in handy as illustrated by the following example:

Before

Without the node_spacing parameter, you would have no choice but to accept this ugly spacing between each node (emoji in this case) on each line. You can pass in a negative value in the spacing parameter to deal with the line spacing, but there is no way to do that for between nodes image

After

With the node_spacing parameter, you can pass in a negative value to deal with the spacing between nodes, and have smooth emoji arrays! image

Note: I initially renamed spacing parameter to line_spacing to properly distinguish them, but that would be a breaking change and I'm not sure how you'd feel about that so I leave that up to you if you deem fit!

jay3332 commented 1 year ago

LGTM, thanks for the PR!