summaryrefslogtreecommitdiff
path: root/src/export
AgeCommit message (Collapse)Author
2021-10-10Move paint and colors into `geom`Laurenz
2021-09-15Bugfix and tidyingLaurenz
2021-09-09Bump pdf-writerLaurenz
2021-08-29Subset CFF subrs referenced by FD arrayLaurenz
2021-08-28Primitive CFF1 subsettingLaurenz
The subsetting strategy is somewhat crazy for now: Simply zero the glyph data for all unused glyphs. While the CFF table itself doesn't shrink, the actual embedded font is compressed and greatly benefits from the repeated zeros. This already compresses the fonts a lot (~90% for NotoSerifCJK), but they are still quite large. Therefore, the plan of action: - First, find more data that can be zeroed out. - Then _maybe_ see whether we can instead properly rebuild the subsetted font.
2021-08-27Refactor subsetterLaurenz
- Gracefully handle failed subsetting of one table - Remove need for creating a ttf-parser face
2021-08-27Subset post tableLaurenz
2021-08-25Compress all PDF streamsLaurenz
2021-08-25Support decoding of mac roman namesLaurenz
This allows discovery of Apple fonts without unicode name entries.
2021-08-25Subset glyf and loca tablesLaurenz
2021-08-24Basic subsetting architectureLaurenz
Constructs a brand new font file where only necessary tables are contained.
2021-08-24PDF bug fixesLaurenz
- Write correct subtype for CID Font - Write CIDToGIDMap attribute - Deduplicate CMap pairings - Bump pdf-writer for string primitive fix
2021-08-24Switch from state to decorations for underline/strikethrough/overlineLaurenz
2021-08-23Links! (#43)Martin
Co-authored-by: Laurenz <laurmaedje@gmail.com>
2021-08-23Kerned PDF outputLaurenz
2021-08-21Shorter/clearer field name for geometry typesLaurenz
Size { width, height } => Size { w, h } Spec { horizontal, vertical } => Spec { x, y } Gen { cross, main } => Gen { inline, block }
2021-08-09New source loading architectureLaurenz
2021-07-21Main context structLaurenz
2021-07-08Rename Fill to PaintLaurenz
2021-06-18Ref count the framesMartin
2021-06-11Remove props in favor of using state for everythingLaurenz
2021-06-10Text decorationsMartin Haug
2021-06-01Refactor path handlingLaurenz
2021-05-28Refactored loading and cache architectureLaurenz
2021-03-24Make pdf module top-level 🧱Laurenz
2021-03-24Text shaping 🚀Laurenz
- Shapes text with rustybuzz - Font fallback with family list - Tofus are shown in the first font Co-Authored-By: Martin <mhaug@live.de>
2021-03-20Square, circle and ellipse 🔵Laurenz
2021-03-19Text colors 🦩 (#18)Martin
2021-03-19Configurable font edges ⚙Laurenz
Adds top-edge and bottom-edge parameters to the font function. These define how the box around a word is computed. The possible values are: - ascender - cap-height (default top edge) - x-height - baseline (default bottom edge) - descender The defaults are chosen so that it's easy to create good-looking designs with vertical alignment. Since they are much tighter than what most other software uses by default, the default leading had to be increased to 50% of the font size and paragraph spacing to 100% of the font size. The values cap-height and x-height fall back to ascender in case they are zero because this value may occur in fonts that don't have glyphs with cap- or x-height (like Twitter Color Emoji). Since cap-height is the default top edge, doing no fallback would break things badly. Removes softness in favor of a simple boolean for pages and a more finegread u8 for spacing. This is needed to make paragraph spacing consume line spacing created by hard line breaks.
2021-03-19Merge text and shape PDF loops 🎡Martin Haug
2021-03-10Better line spacing calculations ↕Laurenz
- Only add line spacing between lines. Previously, line spacing was added below every line, making `#box[word]` higher than just `word`. - Compute box height of text as `ascender - descender` so that the full word is contained in the box.
2021-02-11Small fixes ♻Laurenz
2021-02-07Dry-clean visitor with a macro 🏜Laurenz
2021-02-06Merge `rect` and `box` 🦚Martin Haug
2021-02-04Add rectangle function 🎛Martin Haug
2021-01-03Move and rename many things 🚛Laurenz
2020-12-17Test [font] 🧣Laurenz
2020-12-11Switch to miniz_oxide 🔼Laurenz
2020-11-30Compress images in PDFs ⚙Laurenz
2020-11-28Export alpha channel into PDF 🧊Laurenz
2020-11-27Embed each image only once into the PDF 🥔Laurenz
2020-11-27Basic environment and resource loader 🏞Laurenz
2020-11-27Export images in PDF 🖼Laurenz
2020-11-24Use newly stabilized intra doc links ↩Laurenz
2020-11-20Basic image support 🖼Laurenz
- [image] function - Image rendering in tests - Supports JPEG and PNG - No PDF export so far
2020-11-19Switch to pdf-writer ⬆️Laurenz
2020-10-11Refactor layouting base 🪁Laurenz
2020-10-10Switch back to custom geometry types, unified with layout primitives 🏞Laurenz
2020-10-07Fix some clippy warnings ✔Laurenz
2020-10-04Small improvements 🍪Laurenz