Clone in a terminal:
Commit 4887184
Johan Mattsson - 2015-03-26T07:17:56+00:00
4887184e2145bcffe3543465c77ea46bc517d41fjohan.mattsson.m@gmail.com

Set canvas size

Changed files (4)

Diff

diff --git a/libbirdfont/Glyph.vala b/libbirdfont/Glyph.valaindex a5d2082..2ec53f8 100644--- a/libbirdfont/Glyph.vala+++ b/libbirdfont/Glyph.vala@@ -103,6 +103,9 @@ public class Glyph : FontDisplay { 	/** Cache for Cairo rendering */ 	HashMap<string, Surface> glyph_cache = new HashMap<string, Surface> (); +	public const double CANVAS_MIN = -10000;+	public const double CANVAS_MAX = 10000;+ 	public Glyph (string name, unichar unichar_code = 0) { 		this.name = name; 		this.unichar_code = unichar_code;@@ -195,15 +198,16 @@ public class Glyph : FontDisplay { 			return false; 		} -		x1 = double.MAX;-		x2 = double.MIN;-		y1 = double.MAX;-		y2 = double.MIN;+		x1 = CANVAS_MAX;+		x2 = CANVAS_MIN;+		y1 = CANVAS_MAX;+		y2 = CANVAS_MIN; 	 		foreach (Path p in path_list) { 			p.update_region_boundaries ();-					-			if (p.points.size > 0) {++			if (p.points.size > 1) {+ 				if (p.xmin < x1) { 					x1 = p.xmin; 				}@@ -493,9 +497,6 @@ public class Glyph : FontDisplay { 		double x1, y1, x2, y2; 		 		if (boundaries (out x1, out y1, out x2, out y2)) {-			if (get_name () == "g") {-				print (@"G: $right_limit - $x2    left_limit - x2\n");-			} 			return right_limit - x2; 		} else { 			return right_limit - left_limit;diff --git a/libbirdfont/Path.vala b/libbirdfont/Path.valaindex cb8b5ea..9db205c 100644--- a/libbirdfont/Path.vala+++ b/libbirdfont/Path.vala@@ -1968,10 +1968,10 @@ public class Path { 			return; 		} 		-		minx = double.MAX;-		miny = double.MAX;-		maxx = double.MIN;-		maxy = double.MIN;+		minx = Glyph.CANVAS_MAX;+		miny = Glyph.CANVAS_MAX;+		maxx = Glyph.CANVAS_MIN;+		maxy = Glyph.CANVAS_MIN; 		 		x0 = 0; 		y0 = 0;	diff --git a/libbirdfont/PointConverter.vala b/libbirdfont/PointConverter.valaindex 954c9b7..9b56c89 100644--- a/libbirdfont/PointConverter.vala+++ b/libbirdfont/PointConverter.vala@@ -145,8 +145,8 @@ public class PointConverter { 			return;		 		}  		-		max_d = double.MIN;-		min_d = double.MAX;+		max_d = Glyph.CANVAS_MIN;+		min_d = Glyph.CANVAS_MAX; 		Path.all_of (a0, a1, (xa, ya, ta) => { 			 			min_d = double.MAX;diff --git a/libbirdfont/SpacingTab.vala b/libbirdfont/SpacingTab.valaindex f28a93f..6494b39 100644--- a/libbirdfont/SpacingTab.vala+++ b/libbirdfont/SpacingTab.vala@@ -218,7 +218,7 @@ public class SpacingTab : KerningDisplay { 		 		l = text_input_glyph.get_left_side_bearing (); -		if (Math.fabs (r) < 0.001) {+		if (Math.fabs (l) < 0.001) { 			l = 0; 		} 				

Contact

Email: johan.mattsson.m@gmail.com
Mastodon: typo.social/@birdfont
GitHub: johanmattssonm
LinkedIn: johan-mattsson-2ab324112