|
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.
|
|
d40cd0b4
|
2010-01-14T20:32:21
|
|
Fix compilation warning.
|
|
df870f3e
|
2010-01-11T06:28:56
|
|
Provide inline assembly code for RVCT compiler.
This is Savannah patch #7059.
* include/freetype/config/ftconfig.h (FT_MULFIX_ASSEMBLER,
FT_MulFix_arm) [__CC_ARM || __ARM_CC]: Define.
|
|
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.
|
|
297dc223
|
2010-01-05T20:48:57
|
|
Another clang fix.
|
|
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'.
|
|
e3837295
|
2010-01-05T19:36:58
|
|
Enable the incremental font interface by default.
Ghostscript requires the incremental font interface for handling
some Postscript documents. It is moving to using FreeType as its
primary renderer; supporting this in the default build makes it
Ghostscript to be linked against the system FreeType when one is
available.
* include/freetype/config/ftoption.h (FT_CONFIG_OPTION_INCREMENTAL):
Uncomment.
|
|
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.
|
|
942d92c9
|
2010-01-05T10:24:25
|
|
Minor fixes.
|
|
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.
|
|
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.
|
|
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.
|
|
173bdc68
|
2009-12-22T00:27:29
|
|
Minor addition.
|
|
978b11dc
|
2009-12-22T00:25:38
|
|
Make freetype-config aware of $SYSROOT.
* builds/unix/freetype-config.in: Decorate with ${SYSROOT} where
appropriate.
|
|
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.
|
|
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.
|
|
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.
|
|
0770de9a
|
2009-12-16T08:36:24
|
|
Typos.
|
|
d818ba59
|
2009-12-16T13:23:14
|
|
Improve configure.raw to copy some options from CFLAGS to LDFLAGS.
|
|
481324cd
|
2009-12-15T08:58:37
|
|
Fix compiler warnings.
Reported by Sean.
* src/truetype/ttgxvar.c (ft_var_readpackeddeltas): Fix counter data
type.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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'.
|
|
934d054f
|
2009-11-20T06:26:22
|
|
Fix Savannah bug #28036.
* src/type1/t1afm.c (t1_get_index): Fix comparison.
|
|
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.
|
|
0aa1de62
|
2009-11-15T10:53:50
|
|
s/casted/cast/
|
|
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.
|
|
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.
|
|
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'.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
06ba4597
|
2009-10-26T22:26:31
|
|
Fix Savannah bug #27811.
* src/truetype/ttxgvar.c (ft_var_readpackeddeltas): Fix
signed/unsigned mismatch.
|
|
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'.
|
|
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.
|
|
d699c299
|
2009-10-10T20:25:48
|
|
* Version 2.3.11 released.
==========================
Tag sources with `VER-2-3-11'.
* docs/VERSION.DLL: Update documentation and bump version number to
2.3.11.
* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualce/index.html,
builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj: s/2.3.10/2.3.11/, s/2310/2311/.
* include/freetype/freetype.h (FREETYPE_PATCH): Set to 11.
* builds/unix/configure.raw (version_info): Set to 9:22:3.
|
|
3c4e6baa
|
2009-10-10T20:15:49
|
|
* docs/CHANGES, docs/release: Updated.
|
|
008686a1
|
2009-10-11T02:07:16
|
|
[pcf] Fix a bug in the nprops truncation, Gentoo bug #288357.
|
|
19dfcbd2
|
2009-10-06T12:00:43
|
|
* Version 2.3.10 released.
==========================
Tag sources with `VER-2-3-10'.
* builds/toplevel.mk (major, minor, patch): Fix regexp to allow more
than a single digit.
(dist): We now use git.
* docs/VERSION.DLL: Update documentation and bump version number to
2.3.10.
* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
builds/win32/visualc/freetype.dsp,
builds/win32/visualc/freetype.vcproj,
builds/win32/visualce/index.html,
builds/win32/visualce/freetype.dsp,
builds/win32/visualce/freetype.vcproj: s/2.3.9/2.3.10/, s/239/2310/.
* include/freetype/freetype.h (FREETYPE_PATCH): Set to 10.
* builds/unix/configure.raw (version_info): Set to 9:21:3.
|
|
5c3160ec
|
2009-10-06T11:12:28
|
|
Formatting.
|
|
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.
|
|
82633a24
|
2009-09-27T16:55:44
|
|
[cache] Fix Savannah bug #27441, cleanup Redhat bugzilla #513582.
|
|
f2647dda
|
2009-09-26T00:48:37
|
|
[cache, psaux, type1] Fix for multi build.
|
|
76f1b9d9
|
2009-09-25T23:57:30
|
|
[autofit] Fix for multi build.
|
|
4e0c9ee1
|
2009-09-24T14:30:40
|
|
[cache] Check the face filled by FTC_Manager_LookupFace().
|
|
e2184505
|
2009-09-23T09:28:48
|
|
* docs/CHANGES: Updated.
|
|
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.
|
|
812d1bc9
|
2009-09-13T02:12:44
|
|
Improve configure.raw for cross build.
|
|
704f4d75
|
2009-09-13T00:50:14
|
|
[BDF] Modify hash API to take size_t value instead of void *.
|
|
519a5eaf
|
2009-09-13T00:00:28
|
|
Whitespace.
|
|
0729bc9f
|
2009-09-10T16:09:55
|
|
[Win64] Improve the computation of random seed from stack address.
|
|
4539b3ee
|
2009-09-08T07:05:26
|
|
Whitespace.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
2b6a3f0b
|
2009-08-01T00:37:59
|
|
sfnt: Cast a charcode to 32-bit in cmap format 14 parser.
|
|
9b1aab8d
|
2009-08-01T00:37:58
|
|
sfnt: Cast a charcode to 32-bit in cmap format 12 parser.
|
|
e6d0c1fb
|
2009-08-01T00:37:58
|
|
psaux: Fix a few casts to FT_Int32 value.
|
|
b76c3f71
|
2009-08-01T00:37:57
|
|
sfnt: Fix a data type mismatching with its source.
|
|
2a2beb47
|
2009-08-01T00:37:57
|
|
sfnt: Extend a few local variables to load 32-bit values.
|
|
3783dac0
|
2009-08-01T00:37:56
|
|
pfr: Extend `num_aux' to take 32-bit value.
|
|
3bda1f99
|
2009-08-01T00:37:56
|
|
pcf: Truncate FT_ULong `nprops' to fit to int PCF_Face->nprops.
|
|
8eb551f1
|
2009-08-01T00:37:55
|
|
gxvalid: Extend a few local variables to reduce the casts.
|
|
d3659977
|
2009-08-01T00:37:55
|
|
gxvalid: Extend `settingTable' to take 32-bit offset.
|
|
6e2375f7
|
2009-08-01T00:37:54
|
|
autofit: Cast FT_Long glyph_count to compare with FT_UInt GID.
|
|
057bc4c0
|
2009-08-01T00:35:40
|
|
smooth: Exclude 16-bit system in invalid pitch/height check.
|
|
b16a9426
|
2009-08-01T00:32:25
|
|
cff: Type large constants > 0x7FFF as long for 16-bit systems.
|
|
5133c56f
|
2009-08-01T00:32:25
|
|
base: Remove an unused variable.
|
|
5d3ff056
|
2009-08-01T00:32:24
|
|
cache: Check higher bits in flags for non ILP32 systems.
|
|
61adbe98
|
2009-08-01T00:32:24
|
|
sfnt: Ignore invalid GIDs in glyph name lookup.
|
|
eec40554
|
2009-08-01T00:32:24
|
|
pcf: Fix a comparison between FT_Long and FT_ULong.
|
|
eceaffef
|
2009-08-01T00:32:23
|
|
gxvalid: Guarantee `nFeatureFlags' size up to 32-bit.
|
|
cad4f915
|
2009-08-01T00:32:23
|
|
sfnt: Insert explicit cast for LP64 system.
|
|
2f07c57f
|
2009-08-01T00:32:22
|
|
gxvalid: Guarantee `just' table size upto 32-bit.
|
|
205a2a0c
|
2009-08-01T00:32:22
|
|
gxvalid: Guarantee `trak' table size upto 32-bit.
|
|
49740490
|
2009-08-01T00:32:22
|
|
type1: Fix a data type mismatching with its source.
|
|
737634e5
|
2009-08-01T00:32:21
|
|
pfr: Fix a data type mismatching with its source.
|
|
b12b8c3c
|
2009-08-01T00:32:21
|
|
pfr: Fix a data type mismatching with its source.
|
|
c4420d97
|
2009-08-01T00:32:21
|
|
pfr: Fix a data type mismatching with its source.
|
|
471980d9
|
2009-08-01T00:32:20
|
|
smooth: Improve the format in debug message.
|
|
01059050
|
2009-08-01T00:32:20
|
|
sfnt: Fix a data type mismatching with its source.
|
|
cf31edf5
|
2009-08-01T00:32:19
|
|
psaux: Fix a data type mismatching with its source.
|
|
ec7bc863
|
2009-08-01T00:32:19
|
|
truetype: Extend TrueType GX packed deltas to FT_Offset.
|
|
5668181b
|
2009-08-01T00:32:18
|
|
truetype: Extend mmvar_len to hold size_t values.
|
|
a1151420
|
2009-08-01T00:32:18
|
|
truetype: Check invalid function number in IDEF instruction.
|
|
d1c23082
|
2009-08-01T00:32:17
|
|
truetype: Check invalid function number in FDEF instruction.
|
|
9206eba2
|
2009-08-01T00:32:17
|
|
truetype: Truncate the deltas of composite glyph at 16-bit values.
|
|
1b6f1d20
|
2009-08-01T00:32:16
|
|
truetype: Truncate the instructions upto 16-bit per a glyph.
|
|
6dc27526
|
2009-08-01T00:32:15
|
|
truetype: Cast the numerical operands to 32-bit for LP64 systems.
|
|
3b56c4d3
|
2009-08-01T00:32:15
|
|
truetype: Cast the project vector to 32-bit for LP64 system.
|
|
9fc40943
|
2009-08-01T00:32:14
|
|
truetype: Cast the scaling params to 32-bit for LP64 system.
|
|
c9c64388
|
2009-08-01T00:32:14
|
|
sfnt: Cast a character code to FT_UInt32 for LP64 system.
|
|
3f0182af
|
2009-08-01T00:32:13
|
|
sfnt: Cast a character code to FT_UInt32 for LP64 system.
|