summaryrefslogtreecommitdiffstats
path: root/share/extensions/color_grayscale.py
diff options
context:
space:
mode:
Diffstat (limited to 'share/extensions/color_grayscale.py')
-rwxr-xr-xshare/extensions/color_grayscale.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/share/extensions/color_grayscale.py b/share/extensions/color_grayscale.py
new file mode 100755
index 0000000..5d134aa
--- /dev/null
+++ b/share/extensions/color_grayscale.py
@@ -0,0 +1,18 @@
+#!/usr/bin/env python
+"""Convert to grey"""
+
+import inkex
+
+
+class Grayscale(inkex.ColorExtension):
+ """Make all colours grayscale"""
+
+ def modify_color(self, name, color):
+ # ITU-R Recommendation BT.709 (NTSC and PAL)
+ # l = 0.2125 * r + 0.7154 * g + 0.0721 * b
+ lum = 0.299 * color.red + 0.587 * color.green + 0.114 * color.blue
+ return inkex.Color((int(round(lum)), int(round(lum)), int(round(lum))))
+
+
+if __name__ == "__main__":
+ Grayscale().run()