r21812 by jghali - #14523: LinuxLibertin G font family distance between characters does not change

scribus-commit scribus-commit at lists.scribus.net
Sun Mar 5 09:17:50 UTC 2017


Author: jghali
Date: Sun Mar  5 09:17:50 2017
New Revision: 21812

URL: http://scribus.net/websvn/listing.php?repname=Scribus&sc=1&rev=21812
Log:
#14523: LinuxLibertin G font family distance between characters does not change

Modified:
    trunk/Scribus/scribus/text/textshaper.cpp

Modified: trunk/Scribus/scribus/text/textshaper.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=21812&path=/trunk/Scribus/scribus/text/textshaper.cpp
==============================================================================
--- trunk/Scribus/scribus/text/textshaper.cpp	(original)
+++ trunk/Scribus/scribus/text/textshaper.cpp	Sun Mar  5 09:17:50 2017
@@ -331,7 +331,12 @@
 			}
 		}
 
-		hb_shape(hbFont, hbBuffer, hbFeatures.data(), hbFeatures.length());
+		// #14523: harfbuzz proritize graphite for graphite enabled fonts, however
+		// at the point, shaping with graphite fonts is either buggy (harfbuzz 1.4.2)
+		// or trigger weird results (harfbuzz 1.4.3), so disable graphite for now.
+		// Prevent also use of platform specific shapers for cross-platform reasons
+		const char* shapers[] = { "ot", "fallback", 0 };
+		hb_shape_full(hbFont, hbBuffer, hbFeatures.data(), hbFeatures.length(), shapers);
 
 		unsigned int count = hb_buffer_get_length(hbBuffer);
 		hb_glyph_info_t *glyphs = hb_buffer_get_glyph_infos(hbBuffer, NULL);




More information about the scribus-commit mailing list