| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -881,7 +881,7 @@ enum { // languageID for STBTT_PLATFORM_ID_MAC | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define STBTT_MAX_OVERSAMPLE   8 | 
					 | 
					 | 
					 | 
					#define STBTT_MAX_OVERSAMPLE   8 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#endif | 
					 | 
					 | 
					 | 
					#endif | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					typedef stbtt__test_oversample_pow2[(STBTT_MAX_OVERSAMPLE & (STBTT_MAX_OVERSAMPLE-1)) == 0 ? 1 : -1]; | 
					 | 
					 | 
					 | 
					typedef int stbtt__test_oversample_pow2[(STBTT_MAX_OVERSAMPLE & (STBTT_MAX_OVERSAMPLE-1)) == 0 ? 1 : -1]; | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//////////////////////////////////////////////////////////////////////////
 | 
					 | 
					 | 
					 | 
					//////////////////////////////////////////////////////////////////////////
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//
 | 
					 | 
					 | 
					 | 
					//
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -2185,7 +2185,6 @@ static void stbtt__h_prefilter(unsigned char *pixels, int w, int h, int stride_i | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					   for (j=0; j < h; ++j) { | 
					 | 
					 | 
					 | 
					   for (j=0; j < h; ++j) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      int i; | 
					 | 
					 | 
					 | 
					      int i; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      unsigned int total; | 
					 | 
					 | 
					 | 
					      unsigned int total; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      unsigned char *pixels_ahead = pixels + (kernel_width); | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      memset(buffer, 0, kernel_width); | 
					 | 
					 | 
					 | 
					      memset(buffer, 0, kernel_width); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      total = 0; | 
					 | 
					 | 
					 | 
					      total = 0; | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -2196,28 +2195,28 @@ static void stbtt__h_prefilter(unsigned char *pixels, int w, int h, int stride_i | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_w; ++i) { | 
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_w; ++i) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               total += pixels[i] - buffer[i & STBTT__OVER_MASK]; | 
					 | 
					 | 
					 | 
					               total += pixels[i] - buffer[i & STBTT__OVER_MASK]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i]; | 
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               pixels[i] = total / 2; | 
					 | 
					 | 
					 | 
					               pixels[i] = (unsigned char) (total / 2); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            } | 
					 | 
					 | 
					 | 
					            } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            break; | 
					 | 
					 | 
					 | 
					            break; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         case 3: | 
					 | 
					 | 
					 | 
					         case 3: | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_w; ++i) { | 
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_w; ++i) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               total += pixels[i] - buffer[i & STBTT__OVER_MASK]; | 
					 | 
					 | 
					 | 
					               total += pixels[i] - buffer[i & STBTT__OVER_MASK]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i]; | 
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               pixels[i] = total / 3; | 
					 | 
					 | 
					 | 
					               pixels[i] = (unsigned char) (total / 3); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            } | 
					 | 
					 | 
					 | 
					            } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            break; | 
					 | 
					 | 
					 | 
					            break; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         case 4: | 
					 | 
					 | 
					 | 
					         case 4: | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_w; ++i) { | 
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_w; ++i) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               total += pixels[i] - buffer[i & STBTT__OVER_MASK]; | 
					 | 
					 | 
					 | 
					               total += pixels[i] - buffer[i & STBTT__OVER_MASK]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i]; | 
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               pixels[i] = total / 4; | 
					 | 
					 | 
					 | 
					               pixels[i] = (unsigned char) (total / 4); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            } | 
					 | 
					 | 
					 | 
					            } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            break; | 
					 | 
					 | 
					 | 
					            break; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         default: | 
					 | 
					 | 
					 | 
					         default: | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_w; ++i) { | 
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_w; ++i) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               total += pixels[i] - buffer[i & STBTT__OVER_MASK]; | 
					 | 
					 | 
					 | 
					               total += pixels[i] - buffer[i & STBTT__OVER_MASK]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i]; | 
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               pixels[i] = total / kernel_width; | 
					 | 
					 | 
					 | 
					               pixels[i] = (unsigned char) (total / kernel_width); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            } | 
					 | 
					 | 
					 | 
					            } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            break; | 
					 | 
					 | 
					 | 
					            break; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      } | 
					 | 
					 | 
					 | 
					      } | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -2225,7 +2224,7 @@ static void stbtt__h_prefilter(unsigned char *pixels, int w, int h, int stride_i | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      for (; i < w; ++i) { | 
					 | 
					 | 
					 | 
					      for (; i < w; ++i) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         assert(pixels[i] == 0); | 
					 | 
					 | 
					 | 
					         assert(pixels[i] == 0); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         total -= buffer[i & STBTT__OVER_MASK]; | 
					 | 
					 | 
					 | 
					         total -= buffer[i & STBTT__OVER_MASK]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         pixels[i] = total / kernel_width; | 
					 | 
					 | 
					 | 
					         pixels[i] = (unsigned char) (total / kernel_width); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      } | 
					 | 
					 | 
					 | 
					      } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      pixels += stride_in_bytes; | 
					 | 
					 | 
					 | 
					      pixels += stride_in_bytes; | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -2240,7 +2239,6 @@ static void stbtt__v_prefilter(unsigned char *pixels, int w, int h, int stride_i | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					   for (j=0; j < w; ++j) { | 
					 | 
					 | 
					 | 
					   for (j=0; j < w; ++j) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      int i; | 
					 | 
					 | 
					 | 
					      int i; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      unsigned int total; | 
					 | 
					 | 
					 | 
					      unsigned int total; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      unsigned char *pixels_ahead = pixels + (kernel_width)*stride_in_bytes; | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      memset(buffer, 0, kernel_width); | 
					 | 
					 | 
					 | 
					      memset(buffer, 0, kernel_width); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      total = 0; | 
					 | 
					 | 
					 | 
					      total = 0; | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -2251,28 +2249,28 @@ static void stbtt__v_prefilter(unsigned char *pixels, int w, int h, int stride_i | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_h; ++i) { | 
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_h; ++i) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               total += pixels[i*stride_in_bytes] - buffer[i & STBTT__OVER_MASK]; | 
					 | 
					 | 
					 | 
					               total += pixels[i*stride_in_bytes] - buffer[i & STBTT__OVER_MASK]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i*stride_in_bytes]; | 
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i*stride_in_bytes]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               pixels[i*stride_in_bytes] = total / 2; | 
					 | 
					 | 
					 | 
					               pixels[i*stride_in_bytes] = (unsigned char) (total / 2); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            } | 
					 | 
					 | 
					 | 
					            } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            break; | 
					 | 
					 | 
					 | 
					            break; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         case 3: | 
					 | 
					 | 
					 | 
					         case 3: | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_h; ++i) { | 
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_h; ++i) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               total += pixels[i*stride_in_bytes] - buffer[i & STBTT__OVER_MASK]; | 
					 | 
					 | 
					 | 
					               total += pixels[i*stride_in_bytes] - buffer[i & STBTT__OVER_MASK]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i*stride_in_bytes]; | 
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i*stride_in_bytes]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               pixels[i*stride_in_bytes] = total / 3; | 
					 | 
					 | 
					 | 
					               pixels[i*stride_in_bytes] = (unsigned char) (total / 3); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            } | 
					 | 
					 | 
					 | 
					            } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            break; | 
					 | 
					 | 
					 | 
					            break; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         case 4: | 
					 | 
					 | 
					 | 
					         case 4: | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_h; ++i) { | 
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_h; ++i) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               total += pixels[i*stride_in_bytes] - buffer[i & STBTT__OVER_MASK]; | 
					 | 
					 | 
					 | 
					               total += pixels[i*stride_in_bytes] - buffer[i & STBTT__OVER_MASK]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i*stride_in_bytes]; | 
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i*stride_in_bytes]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               pixels[i*stride_in_bytes] = total / 4; | 
					 | 
					 | 
					 | 
					               pixels[i*stride_in_bytes] = (unsigned char) (total / 4); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            } | 
					 | 
					 | 
					 | 
					            } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            break; | 
					 | 
					 | 
					 | 
					            break; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         default: | 
					 | 
					 | 
					 | 
					         default: | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_h; ++i) { | 
					 | 
					 | 
					 | 
					            for (i=0; i <= safe_h; ++i) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               total += pixels[i*stride_in_bytes] - buffer[i & STBTT__OVER_MASK]; | 
					 | 
					 | 
					 | 
					               total += pixels[i*stride_in_bytes] - buffer[i & STBTT__OVER_MASK]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i*stride_in_bytes]; | 
					 | 
					 | 
					 | 
					               buffer[(i+kernel_width) & STBTT__OVER_MASK] = pixels[i*stride_in_bytes]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					               pixels[i*stride_in_bytes] = total / kernel_width; | 
					 | 
					 | 
					 | 
					               pixels[i*stride_in_bytes] = (unsigned char) (total / kernel_width); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            } | 
					 | 
					 | 
					 | 
					            } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            break; | 
					 | 
					 | 
					 | 
					            break; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      } | 
					 | 
					 | 
					 | 
					      } | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -2280,7 +2278,7 @@ static void stbtt__v_prefilter(unsigned char *pixels, int w, int h, int stride_i | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      for (; i < h; ++i) { | 
					 | 
					 | 
					 | 
					      for (; i < h; ++i) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         assert(pixels[i*stride_in_bytes] == 0); | 
					 | 
					 | 
					 | 
					         assert(pixels[i*stride_in_bytes] == 0); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         total -= buffer[i & STBTT__OVER_MASK]; | 
					 | 
					 | 
					 | 
					         total -= buffer[i & STBTT__OVER_MASK]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         pixels[i*stride_in_bytes] = total / kernel_width; | 
					 | 
					 | 
					 | 
					         pixels[i*stride_in_bytes] = (unsigned char) (total / kernel_width); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      } | 
					 | 
					 | 
					 | 
					      } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      pixels += 1; | 
					 | 
					 | 
					 | 
					      pixels += 1; | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -2338,8 +2336,8 @@ int stbtt_PackFontRanges(stbtt_pack_context *spc, unsigned char *fontdata, int f | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                                              scale * spc->v_oversample, | 
					 | 
					 | 
					 | 
					                                              scale * spc->v_oversample, | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                                              0,0, | 
					 | 
					 | 
					 | 
					                                              0,0, | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                                              &x0,&y0,&x1,&y1); | 
					 | 
					 | 
					 | 
					                                              &x0,&y0,&x1,&y1); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         rects[k].w = x1-x0 + spc->padding + spc->h_oversample-1; | 
					 | 
					 | 
					 | 
					         rects[k].w = (stbrp_coord) (x1-x0 + spc->padding + spc->h_oversample-1); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         rects[k].h = y1-y0 + spc->padding + spc->v_oversample-1; | 
					 | 
					 | 
					 | 
					         rects[k].h = (stbrp_coord) (y1-y0 + spc->padding + spc->v_oversample-1); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					         ++k; | 
					 | 
					 | 
					 | 
					         ++k; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      } | 
					 | 
					 | 
					 | 
					      } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					   } | 
					 | 
					 | 
					 | 
					   } | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -2356,12 +2354,13 @@ int stbtt_PackFontRanges(stbtt_pack_context *spc, unsigned char *fontdata, int f | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            stbtt_packedchar *bc = &ranges[i].chardata_for_range[j]; | 
					 | 
					 | 
					 | 
					            stbtt_packedchar *bc = &ranges[i].chardata_for_range[j]; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            int advance, lsb, x0,y0,x1,y1; | 
					 | 
					 | 
					 | 
					            int advance, lsb, x0,y0,x1,y1; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            int glyph = stbtt_FindGlyphIndex(&info, ranges[i].first_unicode_char_in_range + j); | 
					 | 
					 | 
					 | 
					            int glyph = stbtt_FindGlyphIndex(&info, ranges[i].first_unicode_char_in_range + j); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					            stbrp_coord pad = (stbrp_coord) spc->padding; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            // pad on left and top
 | 
					 | 
					 | 
					 | 
					            // pad on left and top
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            r->x += spc->padding; | 
					 | 
					 | 
					 | 
					            r->x += pad; | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            r->y += spc->padding; | 
					 | 
					 | 
					 | 
					            r->y += pad; | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            r->w -= spc->padding; | 
					 | 
					 | 
					 | 
					            r->w -= pad; | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            r->h -= spc->padding; | 
					 | 
					 | 
					 | 
					            r->h -= pad; | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            stbtt_GetGlyphHMetrics(&info, glyph, &advance, &lsb); | 
					 | 
					 | 
					 | 
					            stbtt_GetGlyphHMetrics(&info, glyph, &advance, &lsb); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            stbtt_GetGlyphBitmapBox(&info, glyph, | 
					 | 
					 | 
					 | 
					            stbtt_GetGlyphBitmapBox(&info, glyph, | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                                    scale * spc->h_oversample, | 
					 | 
					 | 
					 | 
					                                    scale * spc->h_oversample, | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
  |