Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(411)

Side by Side Diff: third_party/freetype/src/pshinter/pshglob.c

Issue 1413673003: Update bundled freetype to 2.6.1 (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: DEPS for corpus Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /***************************************************************************/ 1 /***************************************************************************/
2 /* */ 2 /* */
3 /* pshglob.c */ 3 /* pshglob.c */
4 /* */ 4 /* */
5 /* PostScript hinter global hinting management (body). */ 5 /* PostScript hinter global hinting management (body). */
6 /* Inspired by the new auto-hinter module. */ 6 /* Inspired by the new auto-hinter module. */
7 /* */ 7 /* */
8 /* Copyright 2001-2004, 2006, 2010, 2012-2014 by */ 8 /* Copyright 2001-2015 by */
9 /* David Turner, Robert Wilhelm, and Werner Lemberg. */ 9 /* David Turner, Robert Wilhelm, and Werner Lemberg. */
10 /* */ 10 /* */
11 /* This file is part of the FreeType project, and may only be used */ 11 /* This file is part of the FreeType project, and may only be used */
12 /* modified and distributed under the terms of the FreeType project */ 12 /* modified and distributed under the terms of the FreeType project */
13 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ 13 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */
14 /* this file you indicate that you have read the license and */ 14 /* this file you indicate that you have read the license and */
15 /* understand and accept it fully. */ 15 /* understand and accept it fully. */
16 /* */ 16 /* */
17 /***************************************************************************/ 17 /***************************************************************************/
18 18
19 19
20 #include <ft2build.h> 20 #include <ft2build.h>
21 #include FT_FREETYPE_H 21 #include FT_FREETYPE_H
22 #include FT_INTERNAL_OBJECTS_H 22 #include FT_INTERNAL_OBJECTS_H
23 #include "pshglob.h" 23 #include "pshglob.h"
24 24
25 #ifdef DEBUG_HINTER 25 #ifdef DEBUG_HINTER
26 PSH_Globals ps_debug_globals = 0; 26 PSH_Globals ps_debug_globals = NULL;
27 #endif 27 #endif
28 28
29 29
30 /*************************************************************************/ 30 /*************************************************************************/
31 /*************************************************************************/ 31 /*************************************************************************/
32 /***** *****/ 32 /***** *****/
33 /***** STANDARD WIDTHS *****/ 33 /***** STANDARD WIDTHS *****/
34 /***** *****/ 34 /***** *****/
35 /*************************************************************************/ 35 /*************************************************************************/
36 /*************************************************************************/ 36 /*************************************************************************/
(...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after
233 static void 233 static void
234 psh_blues_set_zones( PSH_Blues target, 234 psh_blues_set_zones( PSH_Blues target,
235 FT_UInt count, 235 FT_UInt count,
236 FT_Short* blues, 236 FT_Short* blues,
237 FT_UInt count_others, 237 FT_UInt count_others,
238 FT_Short* other_blues, 238 FT_Short* other_blues,
239 FT_Int fuzz, 239 FT_Int fuzz,
240 FT_Int family ) 240 FT_Int family )
241 { 241 {
242 PSH_Blue_Table top_table, bot_table; 242 PSH_Blue_Table top_table, bot_table;
243 FT_Int count_top, count_bot; 243 FT_UInt count_top, count_bot;
244 244
245 245
246 if ( family ) 246 if ( family )
247 { 247 {
248 top_table = &target->family_top; 248 top_table = &target->family_top;
249 bot_table = &target->family_bottom; 249 bot_table = &target->family_bottom;
250 } 250 }
251 else 251 else
252 { 252 {
253 top_table = &target->normal_top; 253 top_table = &target->normal_top;
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
332 332
333 /* expand the top and bottom of intermediate zones; */ 333 /* expand the top and bottom of intermediate zones; */
334 /* checking that the interval is smaller than the fuzz */ 334 /* checking that the interval is smaller than the fuzz */
335 top = zone->org_top; 335 top = zone->org_top;
336 336
337 for ( count--; count > 0; count-- ) 337 for ( count--; count > 0; count-- )
338 { 338 {
339 bot = zone[1].org_bottom; 339 bot = zone[1].org_bottom;
340 delta = bot - top; 340 delta = bot - top;
341 341
342 if ( delta < 2 * fuzz ) 342 if ( delta / 2 < fuzz )
343 zone[0].org_top = zone[1].org_bottom = top + delta / 2; 343 zone[0].org_top = zone[1].org_bottom = top + delta / 2;
344 else 344 else
345 { 345 {
346 zone[0].org_top = top + fuzz; 346 zone[0].org_top = top + fuzz;
347 zone[1].org_bottom = bot - fuzz; 347 zone[1].org_bottom = bot - fuzz;
348 } 348 }
349 349
350 zone++; 350 zone++;
351 top = zone->org_top; 351 top = zone->org_top;
352 } 352 }
353 353
354 /* expand the top of the highest zone normally */ 354 /* expand the top of the highest zone normally */
355 zone->org_top = top + fuzz; 355 zone->org_top = top + fuzz;
356 } 356 }
357 zone = bot_table->zones; 357 zone = bot_table->zones;
358 count = count_bot; 358 count = count_bot;
359 } 359 }
360 } 360 }
361 } 361 }
362 362
363 363
364 /* reset the blues table when the device transform changes */ 364 /* reset the blues table when the device transform changes */
365 static void 365 static void
366 psh_blues_scale_zones( PSH_Blues blues, 366 psh_blues_scale_zones( PSH_Blues blues,
367 FT_Fixed scale, 367 FT_Fixed scale,
368 FT_Pos delta ) 368 FT_Pos delta )
369 { 369 {
370 FT_UInt count; 370 FT_UInt count;
371 FT_UInt num; 371 FT_UInt num;
372 PSH_Blue_Table table = 0; 372 PSH_Blue_Table table = NULL;
373 373
374 /* */ 374 /* */
375 /* Determine whether we need to suppress overshoots or */ 375 /* Determine whether we need to suppress overshoots or */
376 /* not. We simply need to compare the vertical scale */ 376 /* not. We simply need to compare the vertical scale */
377 /* parameter to the raw bluescale value. Here is why: */ 377 /* parameter to the raw bluescale value. Here is why: */
378 /* */ 378 /* */
379 /* We need to suppress overshoots for all pointsizes. */ 379 /* We need to suppress overshoots for all pointsizes. */
380 /* At 300dpi that satisfies: */ 380 /* At 300dpi that satisfies: */
381 /* */ 381 /* */
382 /* pointsize < 240*bluescale + 0.49 */ 382 /* pointsize < 240*bluescale + 0.49 */
(...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after
628 globals->dimension[1].stdw.count = 0; 628 globals->dimension[1].stdw.count = 0;
629 629
630 globals->blues.normal_top.count = 0; 630 globals->blues.normal_top.count = 0;
631 globals->blues.normal_bottom.count = 0; 631 globals->blues.normal_bottom.count = 0;
632 globals->blues.family_top.count = 0; 632 globals->blues.family_top.count = 0;
633 globals->blues.family_bottom.count = 0; 633 globals->blues.family_bottom.count = 0;
634 634
635 FT_FREE( globals ); 635 FT_FREE( globals );
636 636
637 #ifdef DEBUG_HINTER 637 #ifdef DEBUG_HINTER
638 ps_debug_globals = 0; 638 ps_debug_globals = NULL;
639 #endif 639 #endif
640 } 640 }
641 } 641 }
642 642
643 643
644 static FT_Error 644 static FT_Error
645 psh_globals_new( FT_Memory memory, 645 psh_globals_new( FT_Memory memory,
646 T1_Private* priv, 646 T1_Private* priv,
647 PSH_Globals *aglobals ) 647 PSH_Globals *aglobals )
648 { 648 {
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after
786 FT_LOCAL_DEF( void ) 786 FT_LOCAL_DEF( void )
787 psh_globals_funcs_init( PSH_Globals_FuncsRec* funcs ) 787 psh_globals_funcs_init( PSH_Globals_FuncsRec* funcs )
788 { 788 {
789 funcs->create = psh_globals_new; 789 funcs->create = psh_globals_new;
790 funcs->set_scale = psh_globals_set_scale; 790 funcs->set_scale = psh_globals_set_scale;
791 funcs->destroy = psh_globals_destroy; 791 funcs->destroy = psh_globals_destroy;
792 } 792 }
793 793
794 794
795 /* END */ 795 /* END */
OLDNEW
« no previous file with comments | « third_party/freetype/src/pshinter/pshglob.h ('k') | third_party/freetype/src/pshinter/pshinter.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698