git: 1f58d8b468b5 - main - print/py-collidoscope: Add py-collidoscope 0.0.6
Po-Chuan Hsieh
sunpoet at FreeBSD.org
Sun May 16 15:25:53 UTC 2021
The branch main has been updated by sunpoet:
URL: https://cgit.FreeBSD.org/ports/commit/?id=1f58d8b468b56dc1e51e32972c3d2cfc10dd85c8
commit 1f58d8b468b56dc1e51e32972c3d2cfc10dd85c8
Author: Po-Chuan Hsieh <sunpoet at FreeBSD.org>
AuthorDate: 2021-05-16 15:12:44 +0000
Commit: Po-Chuan Hsieh <sunpoet at FreeBSD.org>
CommitDate: 2021-05-16 15:23:45 +0000
print/py-collidoscope: Add py-collidoscope 0.0.6
collidoscope reports on situations where paths overlap in a shaped piece of
text.
This software tries every combination of glyphs within a specified Unicode range
and up to a specified length of string and outputs a report of all situations
where the glyphs collide. It has a number of collision tests:
- Paths in non-adjacent glyphs are never allowed to collide.
- If the cursive test is turned on, then paths with a cursive attachment anchor
are allowed to overlap with paths in an adjacent glyph which also contain a
cursive attachment anchor, but are not allowed to overlap with a path without
a cursive attachment anchor.
- If the area test is turned on, then paths in adjacent glyphs may collide so
long as the area of overlap does not exceed a given percentage of the smallest
path's area. i.e. if the area percentage is set to 25%, then two strokes may
connect, because the overlap is likely to be quite small compared to the size
of the paths involved. But if a stroke significantly overlaps a nukta, it will
be reported as a collision. (Of course, this will not detect strokes which
merely graze a nukta.)
WWW: https://github.com/simoncozens/collidoscope
---
print/Makefile | 1 +
print/py-collidoscope/Makefile | 24 ++++++++++++++++++++++++
print/py-collidoscope/distinfo | 3 +++
print/py-collidoscope/pkg-descr | 20 ++++++++++++++++++++
4 files changed, 48 insertions(+)
diff --git a/print/Makefile b/print/Makefile
index bcd612d9897d..44ad1d3cdfc5 100644
--- a/print/Makefile
+++ b/print/Makefile
@@ -169,6 +169,7 @@
SUBDIR += pslib
SUBDIR += pstotext
SUBDIR += psutils
+ SUBDIR += py-collidoscope
SUBDIR += py-font-v
SUBDIR += py-fontaine
SUBDIR += py-fontbakery
diff --git a/print/py-collidoscope/Makefile b/print/py-collidoscope/Makefile
new file mode 100644
index 000000000000..991e6c19e7df
--- /dev/null
+++ b/print/py-collidoscope/Makefile
@@ -0,0 +1,24 @@
+# Created by: Po-Chuan Hsieh <sunpoet at FreeBSD.org>
+
+PORTNAME= collidoscope
+PORTVERSION= 0.0.6
+CATEGORIES= print python
+MASTER_SITES= CHEESESHOP
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= sunpoet at FreeBSD.org
+COMMENT= Brute force detection of glyph collisions
+
+LICENSE= MIT
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}beziers>=0.0.3:graphics/py-beziers@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}fonttools>=0:print/py-fonttools@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}glyphtools>=0:print/py-glyphtools@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}uharfbuzz>=0:print/py-uharfbuzz@${PY_FLAVOR}
+
+USES= python:3.6+
+USE_PYTHON= autoplist concurrent distutils
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/print/py-collidoscope/distinfo b/print/py-collidoscope/distinfo
new file mode 100644
index 000000000000..fc7f8e7d2747
--- /dev/null
+++ b/print/py-collidoscope/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1620928535
+SHA256 (collidoscope-0.0.6.tar.gz) = c6435a76f8d9d0ed9dbb64507758f276b3845272678fd7eda6ac09bd91db231a
+SIZE (collidoscope-0.0.6.tar.gz) = 8202
diff --git a/print/py-collidoscope/pkg-descr b/print/py-collidoscope/pkg-descr
new file mode 100644
index 000000000000..f852401affb4
--- /dev/null
+++ b/print/py-collidoscope/pkg-descr
@@ -0,0 +1,20 @@
+collidoscope reports on situations where paths overlap in a shaped piece of
+text.
+
+This software tries every combination of glyphs within a specified Unicode range
+and up to a specified length of string and outputs a report of all situations
+where the glyphs collide. It has a number of collision tests:
+- Paths in non-adjacent glyphs are never allowed to collide.
+- If the cursive test is turned on, then paths with a cursive attachment anchor
+ are allowed to overlap with paths in an adjacent glyph which also contain a
+ cursive attachment anchor, but are not allowed to overlap with a path without
+ a cursive attachment anchor.
+- If the area test is turned on, then paths in adjacent glyphs may collide so
+ long as the area of overlap does not exceed a given percentage of the smallest
+ path's area. i.e. if the area percentage is set to 25%, then two strokes may
+ connect, because the overlap is likely to be quite small compared to the size
+ of the paths involved. But if a stroke significantly overlaps a nukta, it will
+ be reported as a collision. (Of course, this will not detect strokes which
+ merely graze a nukta.)
+
+WWW: https://github.com/simoncozens/collidoscope
More information about the dev-commits-ports-all
mailing list