Werner Lemberg
65f8523706
Update all copyright notices.
2023-01-17 09:18:25 +01:00
Alexei Podtelezhnikov
c9c326312f
[base] Clean up the bitmap flow control.
...
* src/base/ftbitmap.c (FT_Bitmap_Copy): Flip the copy if its pitch
is trully opposite, zero is not a positive value.
(FT_Bitmap_Convert): Set negative pitch as needed, accept negative
alignment values.
2022-09-22 20:40:21 -04:00
Alexei Podtelezhnikov
c456eeb47a
[base] Discard and recreate bitmaps for copying and converting.
...
Reusing target bitmaps for copying and converting is permitted. It is,
however, pointless to preserve their content before overwriting. Free-
malloc might be faster than realloc.
* src/base/ftbitmap.c (FT_Bitmap_Copy, FT_Bitmap_Convert): Free
an old buffer and create a new one.
2022-09-22 15:09:17 +00:00
Tapish Ojha
3d77756e73
[sfnt] Improve sRGB constants.
...
* src/base/ftbitmap.c (ft_gray_for_premultiplied_srgb_bgra): Use slightly
more precise values.
Fixes #1018 .
2022-01-27 08:43:19 +01:00
Werner Lemberg
d0cfb4e1b2
Update all copyright notices.
2022-01-11 10:54:10 +01:00
Alexei Podtelezhnikov
49270c1701
Replace boolean allocation macros with MEM ones.
...
* src/base/ftbitmap.c (FT_Bitmap_Copy): Use MEM-macro.
* src/base/ftobjs.c (ft_glyphslot_alloc_bitmap): Ditto.
* src/bzip2/ftbzip2.c (ft_bzip2_alloc): Ditto.
* src/cache/ftccache.c (ftc_cache_init): Ditto
* src/gzip/ftgzip.c (ft_gzip_alloc): Ditto.
* src/psnames/psmodule.c (ps_unicodes_init): Ditto.
* src/sfnt/sfobjs.c (sfnt_load_face): Ditto.
* src/sfnt/ttload.c (tt_face_load_name): Ditto.
2021-09-14 21:32:43 -04:00
Werner Lemberg
b6e8a71266
Update all copyright notices.
2021-01-17 07:18:48 +01:00
Werner Lemberg
a6adb25626
* src/*: Don't use more than one '\n' in FT_TRACE
and FT_ERROR
.
...
This ensures good logging output, with all lines having a proper
prefix (if requested).
2020-12-05 09:43:45 +01:00
Priyesh Kumar
53be1753de
Fix `-Wformat' compiler warnings.
...
* src/*: Fix format specifiers.
* builds/unix/ftsystem.c (FT_Stream_Open): Ditto.
2020-07-28 07:33:40 +02:00
Werner Lemberg
1658685967
Remove redundant inclusion of `ft2build.h'.
...
* */*: Remove `#include <ft2build.h>' where possible.
* include/freetype/freetype.h: Remove cpp error about missing
inclusion of `ft2build.h'.
2020-06-13 21:15:45 +02:00
David Turner
e13391333f
Make macros for header file names optional.
...
We no longer have to take care of the 8.3 file name limit; this
allows us (a) to introduce longer, meaningful file names, and (b) to
avoid macro names in `#include' lines altogether since some
compilers (most notably Visual C++) doesn't support this properly.
*/*: Replace
#include FOO_H
with
#include <freetype/foo.h>
or something similar. Also update the documentation.
2020-06-08 13:31:55 +02:00
Werner Lemberg
e5038be704
Update all copyright notices.
2020-01-19 17:05:19 +01:00
Werner Lemberg
4166c45360
[base] Fix thinko in previous commit.
...
* src/base/ftbitmap.c (FT_Bitmap_Blend): Check final width, not
target pitch.
Problem reported by Sender Ghost <lightside@gmx.com>.
2019-04-23 06:49:56 +02:00
Werner Lemberg
9f6ed10545
* src/base/ftbitmap.c (FT_Bitmap_Blend): Check target pitch.
...
Problem reported by Sender Ghost <lightside@gmx.com>.
2019-04-22 08:11:28 +02:00
Werner Lemberg
4d51f78de9
More documentation updates.
...
In particular, mark the new behaviour of `FT_LOAD_COLOR' as experimental.
2019-02-23 11:21:48 +01:00
Werner Lemberg
6ab36880ce
* src/base/ftbitmap.c (FT_Bitmap_Blend): No fractional offsets.
...
The function only provided a framework without an actual
implementation, which this commits removes.
2019-02-23 11:18:39 +01:00
Werner Lemberg
7585997024
Update all copyright notices.
2019-02-23 10:07:09 +01:00
Werner Lemberg
f686ad46a3
Update copyright years.
2019-01-22 20:31:44 +01:00
Werner Lemberg
a0dd16fb3d
Don't use `trace_' prefix for FT_COMPONENT arguments.
...
* include/freetype/internal/ftdebug.h (FT_TRACE_COMP,
FT_TRACE_COMP_): New auxiliary macros to add `trace_' prefix.
(FT_TRACE): Use `FT_TRACE_COMP'.
*/* (FT_COMPONENT): Updated.
2018-08-15 18:13:17 +02:00
Werner Lemberg
29f05fd02d
Fix 32bit build warnings ( #54239 ).
...
* src/base/ftbitmap.c (FT_Bitmap_Blend): Add casts to avoid signed
vs. unsigned comparisons.
* srb/sfnt/ttcolr.c (tt_face_get_colr_layer): Ditto.
2018-07-04 11:49:47 +02:00
Werner Lemberg
da84691914
[base] Add tracing for `FT_Bitmap_Blend'.
...
* include/freetype/internal/fttrace.h (trace_bitmap): New
enumeration.
* src/base/ftbitmap.c (FT_COMPONENT): Define.
(FT_Bitmap_Blend): Add `FT_TRACE5' calls.
2018-06-17 09:30:05 +02:00
Werner Lemberg
9d8e6c2980
* src/base/ftbitmap.c (FT_Bitmap_Blend): Avoid integer overflow.
2018-06-16 10:11:58 +02:00
Werner Lemberg
68bc56f864
Add `FT_Bitmap_Blend' API.
...
Still missing: Support for negative bitmap pitch and subpixel offset
of source bitmap.
* include/freetype/ftbitmap.h, src/base/ftbitmap.c
(FT_Bitmap_Blend): New function.
2018-06-16 09:39:29 +02:00
Werner Lemberg
9ac9060df0
[GSoC] src/*.*: Convert block comments to `light' style.
...
This monster commit was created by applying Nikhil's scripts
`docconverter.py' and `markify.py' to all C header and source files,
followed up by minor manual clean-up.
No change in functionality, of course.
I used commit f7419907bc6044b9b7057f9789866426c804ba82 from
https://github.com/nikramakrishnan/freetype-docs.git .
2018-06-03 09:08:41 +02:00
Alexei Podtelezhnikov
3b88576ba0
[base] Fix bitmap emboldening.
...
Bug introduced after release 2.8.
* src/base/ftbitmap.c (ft_bitmap_assure_buffer): We use
`FT_QALLOC_MULT', which doesn't zero out the buffer. Adjust the
bitmap copying code to take care of this fact.
2018-04-22 17:22:35 +02:00
Werner Lemberg
c2e2a8e5d9
Revert "[base] Fix bitmap copying where the new pitch is smaller."
...
This reverts commit c0f1adedcfaad4f7d2fe912ff4b2933845d61d93.
2018-04-22 17:13:50 +02:00
Werner Lemberg
c0f1adedcf
[base] Fix bitmap copying where the new pitch is smaller.
...
* src/base/ftbitmap.c (ft_bitmap_assure_buffer): Handle it.
2018-04-22 11:44:24 +02:00
Werner Lemberg
0a0c22569d
Update copyright year.
2018-01-02 09:33:57 +01:00
Werner Lemberg
14cd073437
Fix compiler warnings.
...
* src/base/ftbitmap.c (ft_bitmap_assure_buffer): Make `pitch' and
`new_pitch' unsigned.
* src/base/ftpsprop.c: Include FT_INTERNAL_POSTSCRIPT_PROPS_H.
2017-12-27 08:59:46 +01:00
Werner Lemberg
2c048a8a62
Fix compiler warning ( #52640 ).
...
* src/base/ftbitmap.c (ft_bitmap_assure_buffer): Remove unused
variable.
2017-12-11 19:24:30 +01:00
Werner Lemberg
e1090c608b
Fix access to uninitalized memory ( #52613 ).
...
Also reported as
https://bugs.chromium.org/p/chromium/issues/detail?id=791317
* src/base/ftbitmap.c (ft_bitmap_assure_buffer): If increasing the
bitmap size needs a larger bitmap buffer, assure that the new memory
areas are initialized also.
2017-12-08 09:54:36 +01:00
Werner Lemberg
87ddad2007
Update or fix links to use the https protocol instead of http.
2017-12-04 20:43:30 +01:00
Werner Lemberg
a3dd6d99a4
Fix multiple calls of `FT_Bitmap_Convert'.
...
The documentation of `FT_Bitmap_Convert' says that multiple calls do
proper reallocation of the target FT_Bitmap object. However, this
failed for the sequence
non-empty bitmap
empty bitmap
non-empty bitmap
Reason was that `FT_Bitmap_Convert' only reallocated the bitmap
buffer if it became too small; it didn't make the buffer smaller.
For an empty bitmap following a non-empty one, only the buffer
dimension got set to zero, without deallocation. If the next call
was a non-empty buffer again, an assertion in `ft_mem_qrealloc' was
triggered.
* src/base/ftbitmap.c (FT_Bitmap_Convert): Always reallocate target
buffer to the correct size.
* docs/CHANGES: Document it.
2017-09-05 23:02:04 +02:00
Alexei Podtelezhnikov
f0898b9259
Swap `ALLOC_MULT' arguments ( #51833 ).
...
* src/base/ftbitmap.c (ft_bitmap_assure_buffer): Updated.
* src/winfonts/winfnt.c (FNT_Load_Glyph): Updated.
* src/raster/ftrend1.c (ft_raster1_render): Updated.
2017-08-25 21:40:01 -04:00
Werner Lemberg
563ae78022
Update copyright year.
2017-01-04 20:16:34 +01:00
Werner Lemberg
4441f7b246
Replace foo == NULL' and
foo != NULL' with !foo' and
foo', resp.
...
Other minor formatting.
2016-12-26 17:08:17 +01:00
Werner Lemberg
3295039107
Whitespace.
2016-02-15 12:54:40 +01:00
Werner Lemberg
9adeab6452
Update copyright year.
2016-01-13 11:54:10 +01:00
Werner Lemberg
eee7d8baa1
[base] Rename FT_Bitmap_New' to
FT_Bitmap_Init'.
...
* include/ftbitmap.h, src/base/ftbitmap.c: Implement it.
Update all callers.
* docs/CHANGES: Updated.
2015-03-10 11:15:15 +01:00
Werner Lemberg
2e814fc045
More minor signedness warning fixes.
...
* src/base/ftbbox.c, src/base/ftbitmap.c, src/base/fttrigon.c,
src/base/ftutil.c: Apply.
2015-02-16 20:05:08 +01:00
Werner Lemberg
f57fc59e01
Run `src/tools/update-copyright'.
2015-01-17 20:41:43 +01:00
Werner Lemberg
0098d5502d
Uppercase all hex digits for orthogonality.
2014-12-07 11:03:57 +01:00
Werner Lemberg
644d6fab7e
* src/base/ftbitmap.c (FT_Bitmap_Convert): Improve.
...
This commit completes argument checks and adds support for different
flow directions.
2014-11-21 07:28:50 +01:00
Werner Lemberg
6de761744c
* src/base/ftbitmap.c (FT_Bitmap_Copy): Improve.
...
This commit adds argument checks and support for different flow
directions.
2014-11-21 06:38:46 +01:00
Werner Lemberg
1e6e1b8390
* src/base/ftbitmap.c (FT_Bitmap_New): Check argument.
2014-11-21 06:38:46 +01:00
Werner Lemberg
b3500af717
Change some fields in `FT_Bitmap' to unsigned type.
...
This doesn't break ABI.
* include/ftimage.h (FT_Bitmap): Make `rows', `width', `num_grays',
`pixel_mode', and `palette_mode' unsigned types.
* src/base/ftbitmap.c: Updated.
(FT_Bitmap_Copy): Fix casts.
* src/cache/ftcsbits.c, src/raster/ftraster.c, src/sfnt/pngshim.c:
Updated.
2014-11-21 06:38:46 +01:00
Werner Lemberg
df485774fb
Make FT_Bitmap_Convert' correctly handle negative
pitch' values.
...
* src/base/ftbitmap.c (FT_Bitmap_Convert): Always use positive value
for the pitch while copying data.
Correctly set pitch sign in target bitmap.
2014-11-21 06:38:46 +01:00
Werner Lemberg
d6061212c3
Minor code improvement in `FT_Bitmap_Embolden'.
...
* src/base/ftbitmap.c (FT_Bitmap_Embolden) <FT_PIXEL_MODE_GRAY[24]>:
Fix thinko.
2014-11-21 06:38:01 +01:00
Werner Lemberg
8d05486eab
Minor documentation improvements and whitespace.
2014-11-21 06:10:25 +01:00
Alexei Podtelezhnikov
237c0abfdc
Trailing space.
2014-11-19 22:10:29 -05:00