Commit Graph

94 Commits

Author SHA1 Message Date
Laurenz c0e4fd55e6 Create test runner which renders layouts to images 🗺 2019-10-11 17:53:28 +02:00
Laurenz 8f788f9a4f Add standard `align` function and support right-alignment ➡️ 2019-10-10 23:38:03 +02:00
Laurenz 61470fba68 Basic positional argument parsing 🗃
Supported types are identifiers, strings, numbers, sizes and booleans.
2019-10-10 23:35:16 +02:00
Laurenz f22a307000 Extract into separate repository 🧱 2019-10-09 19:46:42 +02:00
Laurenz Mädje b96a7e0cf3 Reuse font loader across compilations 🔋 2019-07-28 22:27:09 +02:00
Laurenz Mädje 51faad45ad Reformat where clauses 🎈 2019-07-28 21:42:18 +02:00
Laurenz Mädje 19be053cc3 Create some benchmarks 📊 2019-07-28 21:03:33 +02:00
Laurenz Mädje 6c8b5caa9f Improve subsetter testing ✔ 2019-07-27 21:15:10 +02:00
Laurenz 7eec0b8dd7 Add more tests for table parsers 🔋 2019-06-25 21:07:06 +02:00
Laurenz 030d301f0c Refactor subsetter 🧰 2019-06-23 13:32:47 +02:00
Laurenz 7b2a4aa040 Split font module into submodules 🧱 2019-06-22 20:41:04 +02:00
Laurenz 864ae9f604 Parse loca table 🔨 2019-06-22 19:43:06 +02:00
Laurenz 5de92f6d5e Add monospace syntax 📰 2019-06-22 17:01:32 +02:00
Laurenz 099ce71aba Unify font classes + By-value-contexts ⚖ 2019-06-22 15:32:19 +02:00
Laurenz c7ee2b393a Fix top-left text alignment 📐 2019-06-22 12:51:06 +02:00
Laurenz f6fe3b5cdd Implement function layouting ✒ 2019-06-22 12:25:01 +02:00
Laurenz e39a6efccf Deduplicate action lists ✂ 2019-06-21 22:12:36 +02:00
Laurenz 968e121697 Implement flex and box layouting 📏 2019-06-21 21:41:02 +02:00
Laurenz b53ad6b1ec Introduce flex layouting 🎈 2019-06-17 10:08:16 +02:00
Laurenz Mädje 236ebab23a Add more fonts 📜 2019-06-02 19:51:37 +02:00
Laurenz Mädje 3e9f42661e Move to top-left default positioning 📐 2019-06-02 19:15:45 +02:00
Laurenz Mädje 221934df4b Add margins with basic box layouter 📖 2019-06-02 18:01:22 +02:00
Laurenz Mädje c4eb4ee362 Fix some documentation 🚧 2019-06-02 12:39:59 +02:00
Laurenz 0274e93810 Devise text layouter 📑 2019-05-26 22:03:55 +02:00
Laurenz c38e17d91f Thoroughly improve documentation 📝 2019-05-26 21:59:33 +02:00
Laurenz b3734bbc04 Restructure engine into modular layouter 🍂 2019-05-24 12:24:10 +02:00
Laurenz e3215fa3b9 Unify parsing and typesetting functions. 🗳 2019-05-20 11:36:31 +02:00
Laurenz 5c66bac689 Parse line and block comments 📔 2019-05-03 12:41:18 +02:00
Laurenz bc78974fd2 Ignore escaped brackets for body measure 🐥 2019-05-02 09:07:38 +02:00
Laurenz 37c336063b Simplify the parsing model 🔋 2019-05-01 19:47:43 +02:00
Laurenz 27947e212c Require scope for parser ♻ 2019-05-01 17:19:27 +02:00
Laurenz 632bf2f2ef Improve tokenizer 🛢 2019-05-01 16:55:16 +02:00
Laurenz 9d605c3128 Remove the concept of words from tokenization 🎈 2019-04-30 09:20:22 +02:00
Laurenz 90848df5de Create command line interface 💻 2019-04-29 17:25:23 +02:00
Laurenz c384e52480 Improve code quality 🎫 2019-04-29 13:41:00 +02:00
Laurenz d514a05af1 Make parse tokens more static and efficient 🗜 2019-04-29 12:43:58 +02:00
Laurenz 383d8365cf Refactor function parsing ♻ 2019-04-29 11:24:35 +02:00
Laurenz 14c9ff571d Remove stack from parser ♻ 2019-04-29 11:03:17 +02:00
Laurenz f279c52b50 Simple dynamic, scoped function parsing 📥 2019-04-29 00:12:36 +02:00
Laurenz a51e7a0758 Express functions as trait objects 🚄 2019-04-11 17:36:21 +02:00
Laurenz Mädje 98c3788cf1 Fix PDF conformance bugs 🚧
- /DocumentCatalog -> /Catalog
- BT/ -> BT
- OpenType -> TrueType (for now)
2019-04-05 14:01:10 +02:00
Laurenz 6c29e45ce2 Implement paragraphs 📜 2019-04-01 13:33:54 +02:00
Laurenz 3b4b55c59e Implement bold and italics 📜 2019-04-01 12:25:31 +02:00
Laurenz a34d725000 Use interior mutability for font loader ⚙ 2019-04-01 12:00:37 +02:00
Laurenz e589843966 Implement font fallback 🚀 2019-04-01 10:01:42 +02:00
Laurenz 54ace2a7fd Simplify subsetter definition 2019-03-31 17:24:52 +02:00
Laurenz b24bac7cae Fix bug with special characters 🚧 2019-03-31 17:18:59 +02:00
Laurenz a522a15a66 Insert default glyph when subsetting ⚙ 2019-03-31 15:47:57 +02:00
Laurenz 0b2ae78534 Write ToUnicode mapping 📜 2019-03-31 14:13:10 +02:00
Laurenz 0fceff5aa4 Fix some things 🚧 2019-03-31 12:35:44 +02:00