Skip to content

v0.6.0 - Pixel density support & text renderer

Compare
Choose a tag to compare
@humanbydefinition humanbydefinition released this 04 Dec 20:33
· 346 commits to main since this release

Happy to bring more fun and important updates! :)


First, p5.asciify now supports any screen and it's pixel density. This is great, because the rendered ASCII outputs should now look much better on higher pixel density screens, like on a Retina display on a MacBook with a pixel density of 2 for example.

Previously, p5.asciify set the pixel density to 1 internally, so the grid of ASCII characters would at least properly display on all screens. Now, it looks even better on screens with higher pixel density.


Second, there is a new ascii renderer layer, which can be used to render the non-copyable ASCII output of the canvas onto a div, which overlays the canvas and contains the same ASCII output, but is copyable and can be pasted anywhere.

Based on the given settings, there might be a noticeable decrease in frame rate with this active.

To use this mode, you can pass a new object text to setAsciiOptions(), which can contain the following properties:

  • enabled (bool)
  • characterColor (hex string)
  • characterColorMode: (int)
  • backgroundColor: (hex string)
  • invertMode: (bool)

Those options are similar to the same properties in other ascii renderers, which are already more properly documented in this repositories Wiki. Besides that, there is a new test sketch inside the /tests/ folder, which serves as a reference on how to use this text ascii renderer for now.

https://github.com/humanbydefinition/p5.asciify/tree/main/tests/text_ascii_renderer


Lastly, as already announced in previous release notes, some functionalities have been dropped and are no longer available.

  • The whole effect logic, adding pre- and post- effects before/after the ascii rendering, have been removed.

    • As mentioned in another release note, there is now functionality present in p5.asciify, which allows to draw on top of the ASCII rendered result. To not convolute p5.asciify with non-textmode/ascii relevant stuff, those things are now up to the user.
  • The brightness object can no longer be used inside setAsciiOptions(). Use ascii instead.


I'm still lacking behind in terms of the Wiki and documentation overall. That's what I want to focus on next before there are any new features added. Bugs or other issues will of course be handled directly and once one pops up, I'll try to get them sorted asap. Feel free to create an Issue or contact me directly if you notice any! :)

Cheers! 🍸


What's Changed

Full Changelog: v0.5.0...v0.6.0