[cantarell-fonts/respacing] Use pathops for overlap removal: faster, 1-2KB smaller



commit dd36d229a2c304d17052dd62ad959f4e210c3c75
Author: Nikolaus Waxweiler <madigens gmail com>
Date:   Thu Dec 5 23:44:40 2019 +0000

    Use pathops for overlap removal: faster, 1-2KB smaller

 requirements-dev.txt         | 3 ++-
 requirements.in              | 1 +
 requirements.txt             | 3 ++-
 scripts/make-static-fonts.py | 2 +-
 4 files changed, 6 insertions(+), 3 deletions(-)
---
diff --git a/requirements-dev.txt b/requirements-dev.txt
index 95b21fb4..955371be 100644
--- a/requirements-dev.txt
+++ b/requirements-dev.txt
@@ -25,10 +25,11 @@ pyclipper==1.1.0.post3
 pylint==2.4.4
 pytz==2019.3
 six==1.13.0
+skia-pathops==0.2.0.post2
 statmake==0.2.0
 typed-ast==1.4.0          # via astroid, mypy
 typing-extensions==3.7.4.1  # via mypy
-ufo2ft==2.11.0
+ufo2ft==2.11.1
 ufolib2==0.5.1
 unicodedata2==12.1.0      # via fonttools
 wrapt==1.11.2             # via astroid
diff --git a/requirements.in b/requirements.in
index 92f131d7..cf2f206a 100644
--- a/requirements.in
+++ b/requirements.in
@@ -5,3 +5,4 @@ psautohint>=1.8.0
 statmake>=0.1.3
 ufoLib2>=0.4.0
 ufo2ft>=2.9.0
+skia-pathops
diff --git a/requirements.txt b/requirements.txt
index 93310ac0..543e5865 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -17,6 +17,7 @@ psautohint==1.9.4
 pyclipper==1.1.0.post3    # via booleanoperations
 pytz==2019.3              # via fs
 six==1.13.0               # via fs
+skia-pathops==0.2.0.post2
 statmake==0.2.0
-ufo2ft==2.11.0
+ufo2ft==2.11.1
 ufolib2==0.5.1
diff --git a/scripts/make-static-fonts.py b/scripts/make-static-fonts.py
index 3645e62d..1a3adb0c 100644
--- a/scripts/make-static-fonts.py
+++ b/scripts/make-static-fonts.py
@@ -25,7 +25,7 @@ def generate_and_write_autohinted_instance(
     # instance.save(output_dir / f"{file_stem}.ufo", overwrite=True)
 
     # 4. Compile and write instance OTF to disk.
-    instance_font = ufo2ft.compileOTF(instance, removeOverlaps=True, inplace=True)
+    instance_font = ufo2ft.compileOTF(instance, removeOverlaps=True, overlapsBackend="pathops", inplace=True)
     output_path = output_dir / f"{file_stem}.otf"
     instance_font.save(output_path)
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]