|
|
|
|
|
by frognumber
159 days ago
|
|
This was painful to read. It become better and simpler with a basic signals & systems background: - His breaking up images into grids was a poor-man's convolution. Render each letter. Render the image. Dot product. - His "contrast" setting didn't really work. It was meant to emulate a sharpen filter. Convolve with a kernel appropriate for letter size. He operated over the wrong dimensions (intensity, rather than X-Y) - Dithering should be done with something like Floyd-Steinberg: You spill over errors to adjacent pixels. Most of these problems have solutions, and in some cases, optimal ones. They were reinvented, perhaps cleverly, but not as well as those standard solutions. Bonus: - Handle above as a global optimization problem. Possible with 2026-era CPUs (and even more-so, GPUs). - Unicode :) |
|