src


Log

Author Commit Date CI Message
Werner Lemberg f0760ca6 2010-01-23T16:19:33 We no longer use CVS.
Werner Lemberg 13fa21bd 2010-01-14T21:34:08 Make FT_Set_Transform work if no renderer is available. * src/base/ftobjs.c (FT_Load_Glyph): Apply `standard' transformation if no renderer is compiled into the library.
Werner Lemberg d40cd0b4 2010-01-14T20:32:21 Fix compilation warning.
Werner Lemberg 2ad91580 2010-01-09T08:22:38 Whitespace.
Werner Lemberg 1ac5e0ec 2010-01-09T08:14:26 Documentation typo.
Ken Sharp 8ea31415 2010-01-08T18:13:02 Fix Savannah bug #28521. Issue #28226 involved a work-around for a font which used the `setcurrentpoint' operator in an invalid way; this operator is only supposed to be used with the result of OtherSubrs, and the font used it directly. The supplied patch removed the block of code which checked this usage entirely. This turns out to be a Bad Thing. If `setcurrentpoint' is being used correctly it should reset the flex flag in the decoder. If we don't do this then the flag never gets reset and we omit any further contours from the glyph (at least until we close the path or similar). * src/psaux/t1decode.c (t1_decoder_parse_charstrings) <op_setcurrentpoint>: Handle `flex_state' correctly.
Werner Lemberg 297dc223 2010-01-05T20:48:57 Another clang fix.
Werner Lemberg fc58155a 2010-01-05T20:00:35 Apply reports from clang static analyzer. * src/lzw/ftlzw.c (ft_lzw_file_init), src/base/ftstroke.c (FT_Stroker_ParseOutline), src/base/ftsynth.c (FT_GlyphSlot_Embolden): Remove dead code. * src/base/ftpatent.c (_tt_check_patents_in_table): Initialize `offset_i'.
Werner Lemberg 1fc440b2 2010-01-05T13:39:37 Typo.
Werner Lemberg 2a33275e 2010-01-05T10:27:15 Fix Savannah bug #28395. * src/truetype/ttdriver.c (Load_Glyph), src/type1/t1gload.c (T1_Loada_Glyph): Don't check `num_glyphs' if incremental interface is used.
Werner Lemberg fe6da50d 2010-01-05T10:10:15 Thinkos.
Ken Sharp dbe56223 2010-01-05T09:43:01 Make Type 1 `seac' operator work with incremental interface. * src/psaux/t1decode.c (t1operator_seac): Don't check `glyph_names' if incremental interface is used.
Werner Lemberg 3445e4f9 2010-01-04T15:53:27 Make incremental interface work with TrueType fonts. * src/truetype/ttgload.c (load_truetype_glyph): Don't check `glyf_offset' if incremental interface is used.
Lars Abrahamsson 8cf9b74c 2009-12-31T18:26:14 Make compilation with FT_CONFIG_OPTION_PIC work again. * src/base/ftglyph.c (FT_Glyph_To_Bitmap) [FT_CONFIG_OPTION_PIC]: Declare `library' for FT_BITMAP_GLYPH_CLASS_GET. * src/base/ftinit.c (ft_destroy_default_module_classes, ft_create_default_module_classes): Use proper casts (needed for C++ compilation). * src/sfnt/ttcmap.c (tt_cmap13_class_rec): Use FT_DEFINE_TT_CMAP.
Werner Lemberg 64ed3038 2009-12-20T18:12:57 Whitespace.
Werner Lemberg f4fe5a4a 2009-12-20T17:56:22 Fix compiler warning. Reported by Sean. * src/base/ftdbgmem.c [!FT_DEBUG_MEMORY]: ANSI C doesn't like empty source files; however, some compilers warn about an unused variable declaration. This is now replaced with a typedef.
Werner Lemberg 7bdc1d59 2009-12-18T07:13:22 Fix Savannah bug #28320. There exist corrupt, subsetted fonts (embedded in PDF files) which contain a private dict that ends with an unterminated floating point number (no operator following). We now ignore this error (as acrobat does). * src/cff/cffparse.c (cff_parser_run): Don't emit a syntax error for unterminated floating point numbers.
Werner Lemberg 7da7ad94 2009-12-16T18:13:55 Really fix compiler warnings. Reported by Sean. * src/truetype/ttgxvar.c (GX_PT_POINTS_ARE_WORDS, GX_PT_POINT_RUN_COUNT_MASK): Convert enum values to macros.
Werner Lemberg 481324cd 2009-12-15T08:58:37 Fix compiler warnings. Reported by Sean. * src/truetype/ttgxvar.c (ft_var_readpackeddeltas): Fix counter data type.
Ken Sharp ce412593 2009-12-14T22:32:32 Ignore invalid `setcurrentpoint' operations in Type 1 fonts. This fixes Savannah bug #28226. At least two wild PostScript files of unknown provenance contain Type 1 fonts, apparently converted from TrueType fonts in earlier PDF versions of the files, which use the `setcurrentpoint' operator inappropriately. FreeType currently throws an error in this case, but Ghostscript and Adobe Distiller both accept the fonts and ignore the problem. This commit #ifdefs out the check so PostScript interpreters using FreeType can render these files. The specification says `setcurrentpoint' should only be used to set the point after a `Subr' call, but these fonts use it to set the initial point to (0,0). Unnecessarily so, as they correctly use an `hsbw' operation which implicitly sets the initial point.
Werner Lemberg 2db97838 2009-12-14T22:17:26 Fix parsing of /CIDFontVersion. This fixes Savannah bug #28287. * src/cid/cidtoken.h: `cid_version' in CID_FaceInfoRec (in t1tables.h) is of type FT_Fixed.
Werner Lemberg 8d14b6f4 2009-12-14T07:55:39 Trace glyph index in CID module. Suggested in Savannah patch #7023. * src/cid/cidgload.c (cid_load_glyph): Add tracing message.
Werner Lemberg 9045f5bd 2009-12-03T05:57:30 Fix compiler warnings. * src/truetype/ttgload.c (tt_get_metrics): Put `Exit' label into the proper preprocessor conditional. * src/pfr/pfrobjs.c (pfr_slot_load): Pacify gcc.
John Tytgat 087b7ea6 2009-11-25T23:51:06 Better handling of start of `eexec' section. This fixes Savannah bug #28090. * src/type1/t1parse.c (T1_Get_Private_Dict): Skip all whitespace characters before start of `eexec' section.
Werner Lemberg a5e9dbd5 2009-11-20T09:33:57 Fix Savannah bug #27742. * src/base/ftstroke.c (ft_stroker_outside): Avoid silent division by zero, using a threshold for `theta'.
Werner Lemberg 934d054f 2009-11-20T06:26:22 Fix Savannah bug #28036. * src/type1/t1afm.c (t1_get_index): Fix comparison.
Werner Lemberg 01975084 2009-11-16T23:10:53 Fix compiler warnings. Reported by Kevin Blenkinsopp <arqon@promode.org>. * src/sfnt/ttload.c (check_table_dir): Use proper data type.
Werner Lemberg 7635ba64 2009-11-15T10:17:44 Really fix FreeDesktop bug #21197. This also fixes Savannah bug #28021. * src/autofit/aflatin.c (af_latin_metrics_check_digits), src/autofit/aflatin2.c (af_latin2_metrics_check_digits): Fix loop.
Werner Lemberg c4b22144 2009-11-15T10:10:00 Add tracing messages for advance values. * src/base/ftobjs.c (FT_Load_Glyph), src/truetype/ttgload.c (TT_Get_HMetrics, TT_Get_VMetrics): Do it.
Werner Lemberg c0aeef45 2009-11-08T07:58:05 Fix compiler warning. Reported by Jeremy Manson <jeremy.manson@gmail.com>. * src/truetype/ttgload.c (load_truetype_glyph): Initialize `error'.
Werner Lemberg c6e4180c 2009-11-04T12:18:48 Remove compiler warning. Reported by Sean McBride <sean@rogue-research.com>. * src/tools/apinames.c (read_header_file)<STATE_TYPE>: Use a cast to `int', as specified in the printf(3) man page.
Werner Lemberg 012552f1 2009-11-04T10:06:04 Fix Savannah bug #27921. * src/cff/cffobjs.c (cff_face_init), src/cid/cidobjs.c (cid_face_init), src/type1/t1afm.c (T1_Read_Metrics), src/type1/t1objs.c (T1_Face_Init): Don't use unsigned constant values for rounding if the argument can be negative.
Bram Tassyns 8821cc5d 2009-11-04T07:21:15 Add basic support for Type1 charstrings in CFF. * src/cff/cffgload.c (CFF_Operator, cff_argument_counts): Handle `seac', `sbw', and `setcurrentpoint' opcodes. (cff_compute_bias): Add parameter to indicate the charstring type. Update all callers. (cff_operator_seac): Add parameter for side bearing. (cff_decoder_parse_charstrings): Updated for more Type1 support.
Werner Lemberg f186ba68 2009-11-03T15:46:35 Return correct `linearHoriAdvance' value for embedded TT bitmaps too. Reported by Jeremy Manson <jeremy.manson@gmail.com>. src/truetype/ttgload.c (load_truetype_glyph): Add parameter to quickly load the glyph header only. Update all callers. (tt_loader_init): Add parameter to quickly load the `glyf' table only. Update all callers. (TT_Load_Glyph): Compute linear advance values for embedded bitmap glyphs too.
Werner Lemberg 422210be 2009-11-03T08:11:02 Improve code readability. * src/ttgload.c (load_truetype_glyph): Move metrics calculation to... (tt_get_metrics): This new function.
Werner Lemberg ac0d52d8 2009-11-02T08:35:24 Whitespace.
bram tassyns 06ba4597 2009-10-26T22:26:31 Fix Savannah bug #27811. * src/truetype/ttxgvar.c (ft_var_readpackeddeltas): Fix signed/unsigned mismatch.
Werner Lemberg 38449dce 2009-10-26T07:26:25 Whitespace.
Werner Lemberg 2d15120c 2009-10-19T21:09:13 Fix handling of `get' and `put' CFF instructions. * src/cff/cffgload.c (cff_decoder_parse_charstrings) <cff_op_get, cff_op_put>: Appendix B of Adobe Technote #5177 limits the number of elements for the `get' and `put' operators to 32. * src/cff/cffgload.h (CFF_MAX_TRANS_ELEMENTS): Define. (CFF_Decoder): Use it for `buildchar' and remove `len_buildchar'.
Werner Lemberg d90567b1 2009-10-18T10:47:11 Fix handling of `dup' CFF instruction. Problem and solution reported by Ning Dong <flintning@163.com>. * src/cff/cffgload.c (cff_decoder_parse_charstrings) <cff_op_dup>: Increase `args' by 2, not 1.
suzuki toshiya 008686a1 2009-10-11T02:07:16 [pcf] Fix a bug in the nprops truncation, Gentoo bug #288357.
Werner Lemberg ca87cd0b 2009-10-06T11:09:29 Fix `make multi'. * src/cache/ftccache.c, src/cache/ftcsbits.c (FT_COMPONENT): Define. * src/sfnt/sfdriver.c: Include FT_INTERNAL_DEBUG_H.
suzuki toshiya 6167357e 2009-09-29T03:19:47 [cache] Fold too long lines.
suzuki toshiya 82633a24 2009-09-27T16:55:44 [cache] Fix Savannah bug #27441, cleanup Redhat bugzilla #513582.
suzuki toshiya f2647dda 2009-09-26T00:48:37 [cache, psaux, type1] Fix for multi build.
suzuki toshiya 76f1b9d9 2009-09-25T23:57:30 [autofit] Fix for multi build.
suzuki toshiya 4e0c9ee1 2009-09-24T14:30:40 [cache] Check the face filled by FTC_Manager_LookupFace().
Werner Lemberg 766b822f 2009-09-12T23:15:17 [raster] Fix 5-levels grayscale output. This was broken since version 2.3.0. * src/raster/ftraster.c (count_table): Use pre-2.3.0 values (which were then computed dynamically). (Vertical_Gray_Sweep_Step): Updated. (ft_black_render): Initialize `worker->gray_lines' (problem found by valgrind). (FT_RASTER_OPTION_ANTI_ALIASING, DEBUG_RASTER): Dont' #undef, just comment out.
suzuki toshiya 704f4d75 2009-09-13T00:50:14 [BDF] Modify hash API to take size_t value instead of void *.
suzuki toshiya 0729bc9f 2009-09-10T16:09:55 [Win64] Improve the computation of random seed from stack address.
Werner Lemberg d30062d2 2009-09-08T07:06:54 Whitespace.
Werner Lemberg 5e240c12 2009-09-03T13:14:24 [raster] Improvements for stand-alone mode. * src/raster/rules.mk: Don't handle ftmisc.h. It is needed for stand-alone mode only. * src/raster/ftmisc.h (FT_MemoryRec , FT_Alloc_Func, FT_Free_Func, FT_Realloc_Func): Copy declarations from ftsystem.h.
Bram Tassyns 4694ea2b 2009-09-02T13:06:33 Improve vertical metrics calculation (Savannah bug #27364). The calculation of `vertBearingX' is not defined in the OTF font spec so FreeType does a `best effort' attempt. However, this value is defined in the PDF and PostScript specs, and that algorithm is better than the one FreeType currently uses: FreeType: Use the middle of the bounding box as the X coordinate of the vertical origin. Adobe PDF spec: Use the middle of the horizontal advance vector as the X coordinate of the vertical origin. FreeType's algorithm goes wrong if you have a really small glyph (like the full-width, circle-like dot at the end of the sentence, as used in CJK scripts) with large bearings. With the FreeType algorithm this dot gets centered on the baseline; with the PDF algorithm it gets the correct location (in the top right). Note that this is a serious issue, it's like printing the dot at the end of a Roman sentence at the center of the textline instead of on the baseline like it should. So i believe the PDF spec's algorithm should be used in FreeType as well. The `vertBearingY' value for such small glyphs is also very strange if no `vmtx' information is present, since the height of the bbox is not representable for the height of the glyph visually (the whitespace up to the baseline is part of the glyph). The fix also includes some code for a better estimate of `vertBearingY'. * src/base/ftobjs.c (ft_synthesize_vertical_metrics): `vertBearingX' is now calculated as described by the Adobe PDF Spec. Estimate for `vertBearingY' now works better for small glyphs completely above or below the baseline into account. * src/cff/cffgload.c (cff_slot_load): `vertBearingX' is now calculated as described by the Adobe PDF Spec. Vertical metrics information was always ignored when FT_CONFIG_OPTION_OLD_INTERNALS was not defined. * src/truetype/ttgload.c (compute_glyph_metrics): `vertBearingX' is now calculated as described by the Adobe PDF Spec.
John Tytgat 03e8b2f7 2009-09-01T08:10:24 Fix custom cmap for empty Type 1 font (Savannah bug #27294). * include/freetype/internal/t1types.h (T1_EncodingRecRec_): Update comment to reflect revised code_last meaning. * src/type1/t1load.c (T1_Open_Face), src/type42/t42objs.c (T42_Open_Face): Assign max_char as highest character code + 1 and use this for T1_EncodingRecRec_::code_last. * src/psaux/t1cmap.c (t1_cmap_custom_init): Follow revised T1_EncodingRecRec_::code_last meaning.
Werner Lemberg d77cd8ce 2009-08-27T00:10:56 Fix rendering of horizontally compressed CFFs. Bug reported by Ivan Nincic <inincic@pdftron.com>. * src/cff/cffgload.c (cff_slot_load): Thinko: Check `xx' element of `font_matrix' also. * docs/CHANGES: Updated.
Su Yu efaf5abc 2009-08-03T19:55:58 Don't call `ft_fseek' every time when executing `ft_fread'. * src/base/ftstream.c (FT_Stream_Seek), src/base/ftsystem.c (ft_ansi_stream_io): Implement it.
suzuki toshiya 2b6a3f0b 2009-08-01T00:37:59 sfnt: Cast a charcode to 32-bit in cmap format 14 parser.
suzuki toshiya 9b1aab8d 2009-08-01T00:37:58 sfnt: Cast a charcode to 32-bit in cmap format 12 parser.
suzuki toshiya e6d0c1fb 2009-08-01T00:37:58 psaux: Fix a few casts to FT_Int32 value.
suzuki toshiya b76c3f71 2009-08-01T00:37:57 sfnt: Fix a data type mismatching with its source.
suzuki toshiya 2a2beb47 2009-08-01T00:37:57 sfnt: Extend a few local variables to load 32-bit values.
suzuki toshiya 3783dac0 2009-08-01T00:37:56 pfr: Extend `num_aux' to take 32-bit value.
suzuki toshiya 3bda1f99 2009-08-01T00:37:56 pcf: Truncate FT_ULong `nprops' to fit to int PCF_Face->nprops.
suzuki toshiya 8eb551f1 2009-08-01T00:37:55 gxvalid: Extend a few local variables to reduce the casts.
suzuki toshiya d3659977 2009-08-01T00:37:55 gxvalid: Extend `settingTable' to take 32-bit offset.
suzuki toshiya 6e2375f7 2009-08-01T00:37:54 autofit: Cast FT_Long glyph_count to compare with FT_UInt GID.
suzuki toshiya 057bc4c0 2009-08-01T00:35:40 smooth: Exclude 16-bit system in invalid pitch/height check.
suzuki toshiya b16a9426 2009-08-01T00:32:25 cff: Type large constants > 0x7FFF as long for 16-bit systems.
suzuki toshiya 5133c56f 2009-08-01T00:32:25 base: Remove an unused variable.
suzuki toshiya 5d3ff056 2009-08-01T00:32:24 cache: Check higher bits in flags for non ILP32 systems.
suzuki toshiya 61adbe98 2009-08-01T00:32:24 sfnt: Ignore invalid GIDs in glyph name lookup.
suzuki toshiya eec40554 2009-08-01T00:32:24 pcf: Fix a comparison between FT_Long and FT_ULong.
suzuki toshiya eceaffef 2009-08-01T00:32:23 gxvalid: Guarantee `nFeatureFlags' size up to 32-bit.
suzuki toshiya cad4f915 2009-08-01T00:32:23 sfnt: Insert explicit cast for LP64 system.
suzuki toshiya 2f07c57f 2009-08-01T00:32:22 gxvalid: Guarantee `just' table size upto 32-bit.
suzuki toshiya 205a2a0c 2009-08-01T00:32:22 gxvalid: Guarantee `trak' table size upto 32-bit.
suzuki toshiya 737634e5 2009-08-01T00:32:21 pfr: Fix a data type mismatching with its source.
suzuki toshiya b12b8c3c 2009-08-01T00:32:21 pfr: Fix a data type mismatching with its source.
suzuki toshiya c4420d97 2009-08-01T00:32:21 pfr: Fix a data type mismatching with its source.
suzuki toshiya 471980d9 2009-08-01T00:32:20 smooth: Improve the format in debug message.
suzuki toshiya 01059050 2009-08-01T00:32:20 sfnt: Fix a data type mismatching with its source.
suzuki toshiya ec7bc863 2009-08-01T00:32:19 truetype: Extend TrueType GX packed deltas to FT_Offset.
suzuki toshiya 5668181b 2009-08-01T00:32:18 truetype: Extend mmvar_len to hold size_t values.
suzuki toshiya a1151420 2009-08-01T00:32:18 truetype: Check invalid function number in IDEF instruction.
suzuki toshiya d1c23082 2009-08-01T00:32:17 truetype: Check invalid function number in FDEF instruction.
suzuki toshiya 9206eba2 2009-08-01T00:32:17 truetype: Truncate the deltas of composite glyph at 16-bit values.
suzuki toshiya 1b6f1d20 2009-08-01T00:32:16 truetype: Truncate the instructions upto 16-bit per a glyph.
suzuki toshiya 6dc27526 2009-08-01T00:32:15 truetype: Cast the numerical operands to 32-bit for LP64 systems.
suzuki toshiya 3b56c4d3 2009-08-01T00:32:15 truetype: Cast the project vector to 32-bit for LP64 system.
suzuki toshiya 9fc40943 2009-08-01T00:32:14 truetype: Cast the scaling params to 32-bit for LP64 system.
suzuki toshiya c9c64388 2009-08-01T00:32:14 sfnt: Cast a character code to FT_UInt32 for LP64 system.
suzuki toshiya 3f0182af 2009-08-01T00:32:13 sfnt: Cast a character code to FT_UInt32 for LP64 system.
suzuki toshiya 9c1aac00 2009-08-01T00:32:13 sfnt: Extend TT_BDF->strings_size to FT_ULong for huge BDF.
suzuki toshiya 259568cf 2009-08-01T00:32:13 psaux: Handle the string length by FT_Offset variables.
suzuki toshiya 75d56e5d 2009-08-01T00:32:12 pcf: Fix some data types mismatching with their sources.
suzuki toshiya c595c06c 2009-08-01T00:32:12 pcf: Handle the string length by size_t variables.
suzuki toshiya 78ba8a61 2009-08-01T00:32:11 pcf: Fix some data types mismatching with their sources.
suzuki toshiya 52170ac0 2009-08-01T00:32:11 otvalid: Truncate the glyph index to 16-bit.
suzuki toshiya f7c6b116 2009-08-01T00:32:10 cache: Insert explict casts for LP64 systems.
suzuki toshiya ed1d3590 2009-08-01T00:32:10 cache: Fix some data types mismatching with their sources.