Commit Graph

  • 17d2b90d62 Removed some unneccessary CSS selectors & improved header style. Thomas Oltmann 2020-05-25 13:24:10 +02:00
  • daeebbc5c3 Started work on a proper CSS style. Thomas Oltmann 2020-05-25 12:48:56 +02:00
  • 5592cbb064 Added a basic CSS file for man pages. Thomas Oltmann 2020-05-25 11:52:18 +02:00
  • 4a4ef64200 Uploaded a HTML version of the man page as a github page. Thomas Oltmann 2020-05-25 11:47:02 +02:00
  • 65b88fa917 Linted the man page. Thomas Oltmann 2020-05-25 11:34:11 +02:00
  • 3e1b9119ad Documented sft_loadfile(), sft_loadmem(), and sft_freefont() in the man page. Thomas Oltmann 2020-05-25 11:09:19 +02:00
  • 57f9feac2e Documented struct SFT in the man page. Thomas Oltmann 2020-05-23 12:51:55 +02:00
  • 7c0d6a4011 Missing glyph detection API. Thomas Oltmann 2020-05-23 12:32:56 +02:00
  • fe7ea51f49 Renamed SFT_CHAR_IMAGE to SFT_RENDER_IMAGE. Thomas Oltmann 2020-05-23 12:23:01 +02:00
  • 11a8ec7243 Bumped version to 0.6.0 Thomas Oltmann 2020-05-23 12:21:57 +02:00
  • b41db7173c Scraped together two more TODOs from e-mail exchanges. Thomas Oltmann 2020-05-23 11:57:55 +02:00
  • 6f46c2a051 Merged two parallel READMe edits. Thomas Oltmann 2020-05-23 11:43:12 +02:00
  • bf2bb820bc Started versioning libschrift. Thomas Oltmann 2020-05-23 11:41:53 +02:00
  • 949f87d039 Removed obsolete mention about demo UTF-8 support. Thomas Oltmann 2020-05-22 19:50:31 +02:00
  • 4c553aa605 Wrote a TODO List. Thomas Oltmann 2020-05-22 19:46:31 +02:00
  • 522163531e sftdemo is finally UTF-8 aware! Thomas Oltmann 2020-05-19 18:38:00 +02:00
  • e5970cf920 The sftdemo now converts text to UTF32 before drawing. Thomas Oltmann 2020-05-19 18:24:03 +02:00
  • 5d60173e05 Basic kerning support. Needs testing. Thomas Oltmann 2020-05-17 12:38:57 +02:00
  • 035497d6c2 Fixed inconsistent endPts bounds checking. Thomas Oltmann 2020-05-16 13:58:26 +02:00
  • d84b636ed2 Fixed pretty grave unitialized memory oversight in stress.c. Thomas Oltmann 2020-05-15 12:46:05 +02:00
  • c299c6ae5f Fixed leftSideBearing for monospace fonts. Thomas Oltmann 2020-05-12 12:34:11 +02:00
  • 004527cb71 Moved arg.h and aa_tree into a folder for utility code. Thomas Oltmann 2020-05-09 13:25:34 +02:00
  • 1341b2d326 Fixed a single wrong coloring in aa_tree. (Currently still unused.) Thomas Oltmann 2020-05-09 13:12:57 +02:00
  • c4ea964357 Fixed a potential bug that was found with clang-analyzer. Thomas Oltmann 2020-05-06 19:25:36 +02:00
  • f350e05ef6 Updated documentation to reflect current progress. Thomas Oltmann 2020-05-06 12:42:22 +02:00
  • 990c08a2d8 Fixed quantization inaccuracy. Thomas Oltmann 2020-05-06 12:38:00 +02:00
  • 335f8c735a Completely reordered internal functions. Thomas Oltmann 2020-05-06 12:20:56 +02:00
  • 07fca2319d Moving most calculations out of sft_char(). Thomas Oltmann 2020-05-06 11:51:32 +02:00
  • 774c31b933 Separate buffer management functions. Thomas Oltmann 2020-05-06 10:25:08 +02:00
  • de515b5c60 Turned a lot of magic numbers into preprocessor defines. Thomas Oltmann 2020-05-05 18:26:26 +02:00
  • 04a6440d4e Compound glyph per-component scaling. Thomas Oltmann 2020-05-05 14:56:21 +02:00
  • f93ce88a60 Guarding against infinite compound glyph recursion. Thomas Oltmann 2020-05-04 19:22:56 +02:00
  • f6c1048f06 Very basic compound glyph support - Missing scaling, recursion checking etc. Thomas Oltmann 2020-05-04 19:19:19 +02:00
  • c3bf27d362 draw_contours() now returns outline instead of directly drawing it. Thomas Oltmann 2020-05-03 14:46:59 +02:00
  • 20f388be06 Removed some superfluous uses of floor() from hot path. Thomas Oltmann 2020-05-03 14:27:41 +02:00
  • 544afc3d1a Perf Optimization: less branching in draw_line(). Thomas Oltmann 2020-05-03 14:13:25 +02:00
  • ab768804f4 Manually inlined push_*() functions. Thomas Oltmann 2020-05-01 21:25:02 +02:00
  • 140bebde67 Unified lines and curves arrays into a single struct outline. Thomas Oltmann 2020-05-01 21:13:51 +02:00
  • 35cb2de5df Removed the contour struct. Thomas Oltmann 2020-05-01 10:50:22 +02:00
  • 22998518db tesselate_curves() instead of draw_curve(). Thomas Oltmann 2020-05-01 00:45:05 +02:00
  • 6e9efc9546 Nicer array macros. Thomas Oltmann 2020-05-01 00:30:13 +02:00
  • 59da81eb58 draw_contours() buffers segments before drawing them. Thomas Oltmann 2020-05-01 00:09:57 +02:00
  • 50d9d6b069 Merged sft_char() and proc_outline(). Thomas Oltmann 2020-04-28 18:04:57 +02:00
  • c3a8fba423 Moved extents data bounds check into proc_outline(). Thomas Oltmann 2020-04-28 17:06:01 +02:00
  • b15150788a Documented some of the fields of struct SFT_Char. Thomas Oltmann 2020-04-26 16:32:48 +02:00
  • eeefd2f30f Unicode code points are now stored as 'unsigned long'. Thomas Oltmann 2020-04-26 15:47:44 +02:00
  • db5809b600 Implemented a BST; Will be useful for sftdemo UTF-8 support. Thomas Oltmann 2020-04-26 15:43:45 +02:00
  • e66f99de11 Preparing sftdemo for new features. Thomas Oltmann 2020-04-25 17:16:09 +02:00
  • c78b4b49f5 Internal draw buffer is now organized by rows. Thomas Oltmann 2020-04-25 15:23:51 +02:00
  • a3389fe17e Bounds checking contour indices. Thomas Oltmann 2020-04-25 12:10:02 +02:00
  • d8bae09e83 Merge pull request #3 from maandree/master Thomas Oltmann 2020-04-24 22:50:38 +02:00
  • f960632c34 Fix POSIX-compatibility in Makefile Mattias Andrée 2020-04-24 22:03:57 +02:00
  • a0297b1da3 Incoming coordinates are now clamped against the buffer to mitigate overflow exploits. Thomas Oltmann 2020-04-24 21:22:56 +02:00
  • 0bec190a2e NumContours now only gets read by draw_outline(). Thomas Oltmann 2020-04-22 18:33:22 +02:00
  • 2c97a845d7 Moven draw_simple() vs. draw_compound() decision into its own function. Thomas Oltmann 2020-04-22 17:31:51 +02:00
  • 02886983cb Started implementing compound glyph outlines. Thomas Oltmann 2020-04-22 17:19:40 +02:00
  • 578d6b8339 Internal transformation matrices are now column-major. Thomas Oltmann 2020-04-22 16:31:57 +02:00
  • afe5c3a006 Comments summarizing the functionalities of functions / programs. Thomas Oltmann 2020-04-21 22:57:40 +02:00
  • 344e7223ed Merge branch 'master' of github.com:tomolt/libschrift Thomas Oltmann 2020-04-21 22:11:46 +02:00
  • be4415fbc8 Fixed library order in Makefile. Thomas Oltmann 2020-04-21 22:11:13 +02:00
  • 338dcc86b9 Clarified demo program ASCII limitation. Thomas Oltmann 2020-04-21 09:51:00 +02:00
  • 302fa11599 Clarifications about the current state of the project. Thomas Oltmann 2020-04-21 09:43:32 +02:00
  • 9f1abcf324 Internally moved from separate coord transforms to an affine matrix. Thomas Oltmann 2020-04-20 15:48:51 +02:00
  • dbe12b6797 Implemented cmap format 6. Thomas Oltmann 2020-04-19 15:04:27 +02:00
  • c5fd187c06 Removed ground truth thingy again. Thomas Oltmann 2020-04-19 14:36:26 +02:00
  • 0e2ec016e3 Split off stress testing functionality of sftdemo into separate executable. Thomas Oltmann 2020-04-19 14:32:59 +02:00
  • 1f04aec1c0 Made all occurences of struct SFT constant; Also optimized post_process() a bit. Thomas Oltmann 2020-04-19 14:18:38 +02:00
  • f1a99d3d45 All round much better documentation. Thomas Oltmann 2020-04-19 13:56:44 +02:00
  • b8843bebda Updated TODO list again. Thomas Oltmann 2020-04-16 17:33:45 +02:00
  • c48fc24782 Dialed is_flat() heuristic a bit. Thomas Oltmann 2020-04-16 17:15:49 +02:00
  • c0686d7b7e Small allocations are now done on the stack. Thomas Oltmann 2020-04-16 14:14:36 +02:00
  • 7071f878bb Better draw_line() loop condition, integer floor(), DRAW_SEGMENT shortcutting. Thomas Oltmann 2020-04-15 19:06:18 +02:00
  • d4da7a6590 Some pretty massive speedups through minor math optimizations. Thomas Oltmann 2020-04-15 18:44:05 +02:00
  • 6bdf4af6bf sftdemo properly handles spaces now. Thomas Oltmann 2020-04-15 16:08:23 +02:00
  • bc166cde1b The user can now start sftdemo with a custom ASCII message (UTF8 support will follow). Thomas Oltmann 2020-04-15 16:03:29 +02:00
  • 884e8ef764 Fixed sftdemo glyph metrics; Had to reverse-engineer XGlyphInfo details from Xft source and FT2 docs for this ... Thomas Oltmann 2020-04-15 15:55:58 +02:00
  • 059ba9f8f9 Last fix was still buggy, but this *really* should work now. Thomas Oltmann 2020-04-15 15:18:20 +02:00
  • 3d0a688433 Removed accidentally commited temporary file. Thomas Oltmann 2020-04-15 14:53:05 +02:00
  • fe9c258bf5 Fixed a bug in computing the raycasters starting values. Thomas Oltmann 2020-04-15 14:52:15 +02:00
  • e1a37c5b42 User can now alternatively supply their fonts from memory. Thomas Oltmann 2020-04-13 17:26:33 +02:00
  • 0b9009f432 sftdemo cleanly exits when its window gets closed. Thomas Oltmann 2020-04-13 17:12:24 +02:00
  • 93324d8b76 User now has to manually advance x position. Thomas Oltmann 2020-04-13 14:32:22 +02:00
  • fbd0a21736 Made struct SFT internals public. Thomas Oltmann 2020-04-13 14:20:27 +02:00
  • abdcbbe8d5 API improvement: struct SFT_Char. Thomas Oltmann 2020-04-13 14:08:12 +02:00
  • 654196e68e Working on making sftdemo an X11 application. Thomas Oltmann 2020-04-12 11:32:55 +02:00
  • 4a1951fa27 Updated TODO list again. Thomas Oltmann 2020-04-10 16:40:08 +02:00
  • f15a0ec750 Fixed some contours not getting closed properly. Thomas Oltmann 2020-04-10 16:35:59 +02:00
  • dd5f52afe6 Don't have to track previous x coordinate anymore. Thomas Oltmann 2020-04-10 14:51:17 +02:00
  • eeb362b8d0 Never explicitly calculate dot y coordinates (only the difference). Thomas Oltmann 2020-04-10 11:51:02 +02:00
  • 2b9b6a13be Slightly faster dot coordinate calculations. Thomas Oltmann 2020-04-10 11:39:52 +02:00
  • a0b9ee889e Don't have to recalculate pixel coordinates all the time anymore. Thomas Oltmann 2020-04-10 11:22:37 +02:00
  • 75a1d6544a Implemented optional vertical flipping. Thomas Oltmann 2020-04-09 16:52:18 +02:00
  • 88f36e48a5 Also cleaned up & lightly optimized draw_curve(). Thomas Oltmann 2020-04-09 16:28:14 +02:00
  • 5522c635df Cleaned up and lightly optimized post_process(). Thomas Oltmann 2020-04-09 16:00:32 +02:00
  • 8391007e22 Proper image outputting API. Thomas Oltmann 2020-04-09 15:36:56 +02:00
  • 87c71504df Updated TODO list. Thomas Oltmann 2020-04-09 15:14:59 +02:00
  • 19864a1cdf Drastically simplified draw_contours(). Thomas Oltmann 2020-04-09 15:07:35 +02:00
  • 57efac645e Got rasterization temporarily working now; Very numerically unstable. Thomas Oltmann 2020-04-08 19:25:40 +02:00
  • 15464cade3 Turns out, cast to int doesn't always round down, but towards zero. Thomas Oltmann 2020-04-08 15:58:16 +02:00
  • 01bceabafb Temporary SVG visualization & fixed tesselation bug. Thomas Oltmann 2020-04-08 14:42:59 +02:00