cairo 1.14.1-x86-mingw32 → 1.14.2-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of cairo might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/NEWS +21 -0
- data/Rakefile +18 -7
- data/ext/cairo/cairo.def +1 -0
- data/ext/cairo/extconf.rb +23 -10
- data/ext/cairo/rb_cairo.c +3 -0
- data/ext/cairo/rb_cairo.h +3 -3
- data/ext/cairo/rb_cairo_context.c +1 -1
- data/ext/cairo/rb_cairo_io.c +4 -0
- data/ext/cairo/rb_cairo_io.h +2 -0
- data/ext/cairo/rb_cairo_pattern.c +4 -4
- data/ext/cairo/rb_cairo_private.h +2 -0
- data/ext/cairo/rb_cairo_surface.c +64 -232
- data/lib/2.0/cairo.so +0 -0
- data/lib/2.1/cairo.so +0 -0
- data/lib/2.2/cairo.so +0 -0
- data/lib/cairo.rb +20 -19
- data/lib/cairo/region.rb +14 -0
- data/test/test_region.rb +26 -0
- data/vendor/local/bin/fc-cache.exe +0 -0
- data/vendor/local/bin/fc-cat.exe +0 -0
- data/vendor/local/bin/fc-list.exe +0 -0
- data/vendor/local/bin/fc-match.exe +0 -0
- data/vendor/local/bin/fc-pattern.exe +0 -0
- data/vendor/local/bin/fc-query.exe +0 -0
- data/vendor/local/bin/fc-scan.exe +0 -0
- data/vendor/local/bin/fc-validate.exe +0 -0
- data/vendor/local/bin/freetype-config +2 -2
- data/vendor/local/bin/libcairo-2.dll +0 -0
- data/vendor/local/bin/libcairo-gobject-2.dll +0 -0
- data/vendor/local/bin/libcairo-script-interpreter-2.dll +0 -0
- data/vendor/local/bin/libfontconfig-1.dll +0 -0
- data/vendor/local/bin/libfreetype-6.dll +0 -0
- data/vendor/local/bin/libgcc_s_sjlj-1.dll +0 -0
- data/vendor/local/bin/libpixman-1-0.dll +0 -0
- data/vendor/local/bin/libpng-config +1 -1
- data/vendor/local/bin/libpng16-16.dll +0 -0
- data/vendor/local/bin/libpng16-config +1 -1
- data/vendor/local/bin/libstdc++-6.dll +0 -0
- data/vendor/local/bin/libwinpthread-1.dll +0 -0
- data/vendor/local/bin/libxml2-2.dll +0 -0
- data/vendor/local/bin/png-fix-itxt.exe +0 -0
- data/vendor/local/bin/pngfix.exe +0 -0
- data/vendor/local/bin/xmlcatalog.exe +0 -0
- data/vendor/local/bin/xmllint.exe +0 -0
- data/vendor/local/bin/zlib1.dll +0 -0
- data/vendor/local/include/cairo/cairo-version.h +1 -1
- data/vendor/local/include/freetype2/config/ftconfig.h +19 -2
- data/vendor/local/include/freetype2/config/ftheader.h +7 -5
- data/vendor/local/include/freetype2/config/ftoption.h +9 -22
- data/vendor/local/include/freetype2/config/ftstdlib.h +2 -3
- data/vendor/local/include/freetype2/freetype.h +38 -17
- data/vendor/local/include/freetype2/ft2build.h +1 -1
- data/vendor/local/include/freetype2/ftadvanc.h +2 -2
- data/vendor/local/include/freetype2/ftautoh.h +50 -2
- data/vendor/local/include/freetype2/ftbbox.h +1 -1
- data/vendor/local/include/freetype2/ftbdf.h +1 -1
- data/vendor/local/include/freetype2/ftbitmap.h +11 -3
- data/vendor/local/include/freetype2/ftbzip2.h +1 -1
- data/vendor/local/include/freetype2/ftcache.h +3 -3
- data/vendor/local/include/freetype2/ftcffdrv.h +1 -1
- data/vendor/local/include/freetype2/ftcid.h +2 -1
- data/vendor/local/include/freetype2/fterrdef.h +1 -1
- data/vendor/local/include/freetype2/fterrors.h +1 -1
- data/vendor/local/include/freetype2/{ftxf86.h → ftfntfmt.h} +22 -14
- data/vendor/local/include/freetype2/ftgasp.h +1 -1
- data/vendor/local/include/freetype2/ftglyph.h +1 -1
- data/vendor/local/include/freetype2/ftgxval.h +1 -1
- data/vendor/local/include/freetype2/ftgzip.h +1 -1
- data/vendor/local/include/freetype2/ftimage.h +7 -13
- data/vendor/local/include/freetype2/ftincrem.h +1 -1
- data/vendor/local/include/freetype2/ftlcdfil.h +2 -2
- data/vendor/local/include/freetype2/ftlist.h +1 -1
- data/vendor/local/include/freetype2/ftlzw.h +1 -1
- data/vendor/local/include/freetype2/ftmac.h +1 -1
- data/vendor/local/include/freetype2/ftmm.h +17 -11
- data/vendor/local/include/freetype2/ftmodapi.h +4 -2
- data/vendor/local/include/freetype2/ftmoderr.h +1 -1
- data/vendor/local/include/freetype2/ftotval.h +1 -1
- data/vendor/local/include/freetype2/ftoutln.h +1 -1
- data/vendor/local/include/freetype2/ftpfr.h +1 -1
- data/vendor/local/include/freetype2/ftrender.h +3 -8
- data/vendor/local/include/freetype2/ftsizes.h +1 -1
- data/vendor/local/include/freetype2/ftsnames.h +1 -1
- data/vendor/local/include/freetype2/ftstroke.h +1 -1
- data/vendor/local/include/freetype2/ftsynth.h +5 -3
- data/vendor/local/include/freetype2/ftsystem.h +10 -1
- data/vendor/local/include/freetype2/fttrigon.h +1 -1
- data/vendor/local/include/freetype2/ftttdrv.h +85 -22
- data/vendor/local/include/freetype2/fttypes.h +1 -1
- data/vendor/local/include/freetype2/ftwinfnt.h +3 -3
- data/vendor/local/include/freetype2/t1tables.h +4 -3
- data/vendor/local/include/freetype2/ttnameid.h +116 -116
- data/vendor/local/include/freetype2/tttables.h +2 -2
- data/vendor/local/include/freetype2/tttags.h +1 -1
- data/vendor/local/include/freetype2/ttunpat.h +1 -1
- data/vendor/local/include/libpng16/png.h +63 -80
- data/vendor/local/include/libpng16/pngconf.h +8 -30
- data/vendor/local/include/libpng16/pnglibconf.h +10 -4
- data/vendor/local/include/png.h +63 -80
- data/vendor/local/include/pngconf.h +8 -30
- data/vendor/local/include/pnglibconf.h +10 -4
- data/vendor/local/lib/libcairo-gobject.a +0 -0
- data/vendor/local/lib/libcairo-gobject.dll.a +0 -0
- data/vendor/local/lib/libcairo-gobject.la +2 -2
- data/vendor/local/lib/libcairo-script-interpreter.a +0 -0
- data/vendor/local/lib/libcairo-script-interpreter.dll.a +0 -0
- data/vendor/local/lib/libcairo-script-interpreter.la +2 -2
- data/vendor/local/lib/libcairo.a +0 -0
- data/vendor/local/lib/libcairo.dll.a +0 -0
- data/vendor/local/lib/libcairo.la +2 -2
- data/vendor/local/lib/libfontconfig.dll.a +0 -0
- data/vendor/local/lib/libfreetype.a +0 -0
- data/vendor/local/lib/libfreetype.dll.a +0 -0
- data/vendor/local/lib/libfreetype.la +4 -4
- data/vendor/local/lib/libpixman-1.a +0 -0
- data/vendor/local/lib/libpixman-1.dll.a +0 -0
- data/vendor/local/lib/libpng.a +0 -0
- data/vendor/local/lib/libpng.dll.a +0 -0
- data/vendor/local/lib/libpng.la +4 -4
- data/vendor/local/lib/libpng16.a +0 -0
- data/vendor/local/lib/libpng16.dll.a +0 -0
- data/vendor/local/lib/libpng16.la +4 -4
- data/vendor/local/lib/libxml2.a +0 -0
- data/vendor/local/lib/libxml2.dll.a +0 -0
- data/vendor/local/lib/libz.a +0 -0
- data/vendor/local/lib/libz.dll.a +0 -0
- data/vendor/local/lib/pkgconfig/cairo-fc.pc +1 -1
- data/vendor/local/lib/pkgconfig/cairo-ft.pc +1 -1
- data/vendor/local/lib/pkgconfig/cairo-gobject.pc +1 -1
- data/vendor/local/lib/pkgconfig/cairo-pdf.pc +1 -1
- data/vendor/local/lib/pkgconfig/cairo-png.pc +1 -1
- data/vendor/local/lib/pkgconfig/cairo-ps.pc +1 -1
- data/vendor/local/lib/pkgconfig/cairo-script.pc +1 -1
- data/vendor/local/lib/pkgconfig/cairo-svg.pc +1 -1
- data/vendor/local/lib/pkgconfig/cairo-win32-font.pc +1 -1
- data/vendor/local/lib/pkgconfig/cairo-win32.pc +1 -1
- data/vendor/local/lib/pkgconfig/cairo.pc +1 -1
- data/vendor/local/lib/pkgconfig/freetype2.pc +1 -1
- data/vendor/local/lib/pkgconfig/libpng.pc +1 -1
- data/vendor/local/lib/pkgconfig/libpng16.pc +1 -1
- data/vendor/local/share/aclocal/freetype2.m4 +1 -1
- data/vendor/local/share/gtk-doc/html/cairo/bindings-errors.html +12 -12
- data/vendor/local/share/gtk-doc/html/cairo/bindings-fonts.html +12 -12
- data/vendor/local/share/gtk-doc/html/cairo/bindings-memory.html +12 -12
- data/vendor/local/share/gtk-doc/html/cairo/bindings-overloading.html +13 -13
- data/vendor/local/share/gtk-doc/html/cairo/bindings-path.html +12 -12
- data/vendor/local/share/gtk-doc/html/cairo/bindings-patterns.html +35 -35
- data/vendor/local/share/gtk-doc/html/cairo/bindings-return-values.html +10 -10
- data/vendor/local/share/gtk-doc/html/cairo/bindings-streams.html +11 -11
- data/vendor/local/share/gtk-doc/html/cairo/bindings-surfaces.html +13 -13
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Error-handling.html +294 -225
- data/vendor/local/share/gtk-doc/html/cairo/cairo-FreeType-Fonts.html +387 -269
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Image-Surfaces.html +432 -302
- data/vendor/local/share/gtk-doc/html/cairo/cairo-PDF-Surfaces.html +325 -217
- data/vendor/local/share/gtk-doc/html/cairo/cairo-PNG-Support.html +298 -193
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Paths.html +1121 -812
- data/vendor/local/share/gtk-doc/html/cairo/cairo-PostScript-Surfaces.html +513 -383
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Quartz-(CGFont)-Fonts.html +126 -83
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Quartz-Surfaces.html +172 -119
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Raster-Sources.html +581 -372
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Recording-Surfaces.html +179 -130
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Regions.html +888 -539
- data/vendor/local/share/gtk-doc/html/cairo/cairo-SVG-Surfaces.html +287 -192
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Script-Surfaces.html +374 -231
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Transformations.html +395 -219
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Types.html +125 -75
- data/vendor/local/share/gtk-doc/html/cairo/cairo-User-Fonts.html +630 -464
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Version-Information.html +225 -200
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Win32-Fonts.html +336 -214
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Win32-Surfaces.html +277 -186
- data/vendor/local/share/gtk-doc/html/cairo/cairo-XCB-Surfaces.html +495 -350
- data/vendor/local/share/gtk-doc/html/cairo/cairo-XLib-Surfaces.html +557 -362
- data/vendor/local/share/gtk-doc/html/cairo/cairo-XLib-XRender-Backend.html +158 -111
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-device-t.html +655 -441
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-font-face-t.html +389 -280
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-font-options-t.html +667 -451
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-matrix-t.html +579 -351
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-pattern-t.html +2006 -1545
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-scaled-font-t.html +892 -618
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-surface-t.html +1624 -1188
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-t.html +2903 -2104
- data/vendor/local/share/gtk-doc/html/cairo/cairo-drawing.html +13 -13
- data/vendor/local/share/gtk-doc/html/cairo/cairo-fonts.html +13 -13
- data/vendor/local/share/gtk-doc/html/cairo/cairo-support.html +13 -13
- data/vendor/local/share/gtk-doc/html/cairo/cairo-surfaces.html +13 -13
- data/vendor/local/share/gtk-doc/html/cairo/cairo-text.html +1115 -758
- data/vendor/local/share/gtk-doc/html/cairo/cairo.devhelp2 +419 -604
- data/vendor/local/share/gtk-doc/html/cairo/home.png +0 -0
- data/vendor/local/share/gtk-doc/html/cairo/index-1.10.html +56 -56
- data/vendor/local/share/gtk-doc/html/cairo/index-1.12.html +70 -70
- data/vendor/local/share/gtk-doc/html/cairo/index-1.2.html +58 -58
- data/vendor/local/share/gtk-doc/html/cairo/index-1.4.html +39 -39
- data/vendor/local/share/gtk-doc/html/cairo/index-1.6.html +30 -30
- data/vendor/local/share/gtk-doc/html/cairo/index-1.8.html +38 -38
- data/vendor/local/share/gtk-doc/html/cairo/index-all.html +426 -426
- data/vendor/local/share/gtk-doc/html/cairo/index.html +6 -6
- data/vendor/local/share/gtk-doc/html/cairo/index.sgml +234 -325
- data/vendor/local/share/gtk-doc/html/cairo/language-bindings.html +12 -12
- data/vendor/local/share/gtk-doc/html/cairo/left-insensitive.png +0 -0
- data/vendor/local/share/gtk-doc/html/cairo/left.png +0 -0
- data/vendor/local/share/gtk-doc/html/cairo/right-insensitive.png +0 -0
- data/vendor/local/share/gtk-doc/html/cairo/right.png +0 -0
- data/vendor/local/share/gtk-doc/html/cairo/style.css +221 -26
- data/vendor/local/share/gtk-doc/html/cairo/up-insensitive.png +0 -0
- data/vendor/local/share/gtk-doc/html/cairo/up.png +0 -0
- data/vendor/local/share/license/cairo/README +1 -1
- data/vendor/local/share/license/freetype/README +6 -6
- data/vendor/local/share/license/freetype/README.git +1 -1
- data/vendor/local/share/license/libpng/README +2 -2
- data/vendor/local/share/man/man1/freetype-config.1 +1 -1
- data/vendor/local/share/man/man3/libpng.3 +85 -92
- data/vendor/local/share/man/man3/libpngpf.3 +2 -2
- data/vendor/local/share/man/man5/png.5 +1 -1
- metadata +23 -19
@@ -1,5 +1,5 @@
|
|
1
|
-
FreeType 2.
|
2
|
-
|
1
|
+
FreeType 2.6
|
2
|
+
============
|
3
3
|
|
4
4
|
Homepage: http://www.freetype.org
|
5
5
|
|
@@ -24,9 +24,9 @@
|
|
24
24
|
|
25
25
|
and download one of the following files.
|
26
26
|
|
27
|
-
freetype-doc-2.
|
28
|
-
freetype-doc-2.
|
29
|
-
|
27
|
+
freetype-doc-2.6.tar.bz2
|
28
|
+
freetype-doc-2.6.tar.gz
|
29
|
+
ftdoc26.zip
|
30
30
|
|
31
31
|
To view the documentation online, go to
|
32
32
|
|
@@ -70,7 +70,7 @@
|
|
70
70
|
|
71
71
|
----------------------------------------------------------------------
|
72
72
|
|
73
|
-
Copyright 2006-
|
73
|
+
Copyright 2006-2015 by
|
74
74
|
David Turner, Robert Wilhelm, and Werner Lemberg.
|
75
75
|
|
76
76
|
This file is part of the FreeType project, and may only be used,
|
@@ -37,7 +37,7 @@ repository.
|
|
37
37
|
|
38
38
|
----------------------------------------------------------------------
|
39
39
|
|
40
|
-
Copyright 2005-
|
40
|
+
Copyright 2005-2015 by
|
41
41
|
David Turner, Robert Wilhelm, and Werner Lemberg.
|
42
42
|
|
43
43
|
This file is part of the FreeType project, and may only be used,
|
@@ -1,4 +1,4 @@
|
|
1
|
-
README for libpng version 1.6.
|
1
|
+
README for libpng version 1.6.18 - July 23, 2015 (shared library 16.0)
|
2
2
|
See the note about version numbers near the top of png.h
|
3
3
|
|
4
4
|
See INSTALL for instructions on how to install libpng.
|
@@ -134,7 +134,7 @@ and ...". If in doubt, send questions to me. I'll bounce them
|
|
134
134
|
to others, if necessary.
|
135
135
|
|
136
136
|
Please do not send suggestions on how to change PNG. We have
|
137
|
-
been discussing PNG for
|
137
|
+
been discussing PNG for twenty years now, and it is official and
|
138
138
|
finished. If you have suggestions for libpng, however, I'll
|
139
139
|
gladly listen. Even if your suggestion is not used immediately,
|
140
140
|
it may be used later.
|
@@ -1,6 +1,6 @@
|
|
1
|
-
.TH LIBPNG 3 "
|
1
|
+
.TH LIBPNG 3 "July 23, 2015"
|
2
2
|
.SH NAME
|
3
|
-
libpng \- Portable Network Graphics (PNG) Reference Library 1.6.
|
3
|
+
libpng \- Portable Network Graphics (PNG) Reference Library 1.6.18
|
4
4
|
.SH SYNOPSIS
|
5
5
|
\fB
|
6
6
|
#include <png.h>\fP
|
@@ -119,6 +119,8 @@ libpng \- Portable Network Graphics (PNG) Reference Library 1.6.16
|
|
119
119
|
|
120
120
|
\fBpng_byte png_get_libpng_ver (png_const_structp \fIpng_ptr\fP\fB);\fP
|
121
121
|
|
122
|
+
\fBint png_get_palette_max(png_const_structp \fP\fIpng_ptr\fP\fB, png_const_infop \fIinfo_ptr\fP\fB);\fP
|
123
|
+
|
122
124
|
\fBpng_voidp png_get_mem_ptr (png_const_structp \fIpng_ptr\fP\fB);\fP
|
123
125
|
|
124
126
|
\fBpng_uint_32 png_get_oFFs (png_const_structp \fP\fIpng_ptr\fP\fB, png_const_infop \fP\fIinfo_ptr\fP\fB, png_uint_32 \fP\fI*offset_x\fP\fB, png_uint_32 \fP\fI*offset_y\fP\fB, int \fI*unit_type\fP\fB);\fP
|
@@ -369,6 +371,8 @@ libpng \- Portable Network Graphics (PNG) Reference Library 1.6.16
|
|
369
371
|
|
370
372
|
\fBvoid png_set_oFFs (png_structp \fP\fIpng_ptr\fP\fB, png_infop \fP\fIinfo_ptr\fP\fB, png_uint_32 \fP\fIoffset_x\fP\fB, png_uint_32 \fP\fIoffset_y\fP\fB, int \fIunit_type\fP\fB);\fP
|
371
373
|
|
374
|
+
\fBint png_set_option(png_structrp \fP\fIpng_ptr\fP\fB, int \fP\fIoption\fP\fB, int \fIonoff\fP\fB);\fP
|
375
|
+
|
372
376
|
\fBvoid png_set_packing (png_structp \fIpng_ptr\fP\fB);\fP
|
373
377
|
|
374
378
|
\fBvoid png_set_packswap (png_structp \fIpng_ptr\fP\fB);\fP
|
@@ -504,10 +508,10 @@ Following is a copy of the libpng-manual.txt file that accompanies libpng.
|
|
504
508
|
.SH LIBPNG.TXT
|
505
509
|
libpng-manual.txt - A description on how to use and modify libpng
|
506
510
|
|
507
|
-
libpng version 1.6.
|
511
|
+
libpng version 1.6.18 - July 23, 2015
|
508
512
|
Updated and distributed by Glenn Randers-Pehrson
|
509
513
|
<glennrp at users.sourceforge.net>
|
510
|
-
Copyright (c) 1998-
|
514
|
+
Copyright (c) 1998-2015 Glenn Randers-Pehrson
|
511
515
|
|
512
516
|
This document is released under the libpng license.
|
513
517
|
For conditions of distribution and use, see the disclaimer
|
@@ -515,9 +519,9 @@ libpng-manual.txt - A description on how to use and modify libpng
|
|
515
519
|
|
516
520
|
Based on:
|
517
521
|
|
518
|
-
libpng versions 0.97, January 1998, through 1.6.
|
522
|
+
libpng versions 0.97, January 1998, through 1.6.18 - July 23, 2015
|
519
523
|
Updated and distributed by Glenn Randers-Pehrson
|
520
|
-
Copyright (c) 1998-
|
524
|
+
Copyright (c) 1998-2015 Glenn Randers-Pehrson
|
521
525
|
|
522
526
|
libpng 1.0 beta 6 - version 0.96 - May 28, 1997
|
523
527
|
Updated and distributed by Andreas Dilger
|
@@ -840,7 +844,7 @@ prediction.
|
|
840
844
|
|
841
845
|
If you are intending to keep the file pointer open for use in libpng,
|
842
846
|
you must ensure you don't read more than 8 bytes from the beginning
|
843
|
-
of the file, and you also have to make a call to
|
847
|
+
of the file, and you also have to make a call to png_set_sig_bytes()
|
844
848
|
with the number of bytes you read from the beginning. Libpng will
|
845
849
|
then only check the bytes (if any) that your program didn't read.
|
846
850
|
|
@@ -848,22 +852,23 @@ then only check the bytes (if any) that your program didn't read.
|
|
848
852
|
to replace them with custom functions. See the discussion under
|
849
853
|
Customizing libpng.
|
850
854
|
|
851
|
-
|
852
855
|
FILE *fp = fopen(file_name, "rb");
|
853
856
|
if (!fp)
|
854
857
|
{
|
855
858
|
return (ERROR);
|
856
859
|
}
|
857
860
|
|
858
|
-
fread(header, 1, number, fp)
|
859
|
-
|
861
|
+
if (fread(header, 1, number, fp) != number)
|
862
|
+
{
|
863
|
+
return (ERROR);
|
864
|
+
}
|
860
865
|
|
866
|
+
is_png = !png_sig_cmp(header, 0, number);
|
861
867
|
if (!is_png)
|
862
868
|
{
|
863
869
|
return (NOT_PNG);
|
864
870
|
}
|
865
871
|
|
866
|
-
|
867
872
|
Next, png_struct and png_info need to be allocated and initialized. In
|
868
873
|
order to ensure that the size of these structures is correct even with a
|
869
874
|
dynamically linked libpng, there are functions to initialize and
|
@@ -1153,7 +1158,7 @@ callback function:
|
|
1153
1158
|
The PNG specification allows the width and height of an image to be as
|
1154
1159
|
large as 2^(31\-1 (0x7fffffff), or about 2.147 billion rows and columns.
|
1155
1160
|
Larger images will be rejected immediately with a png_error() call. If
|
1156
|
-
you wish to
|
1161
|
+
you wish to change these limits, you can use
|
1157
1162
|
|
1158
1163
|
png_set_user_limits(png_ptr, width_max, height_max);
|
1159
1164
|
|
@@ -1768,13 +1773,13 @@ in until png_read_end() has read the chunk data following the image.
|
|
1768
1773
|
the PNG datastream is embedded in
|
1769
1774
|
a MNG-1.0 datastream)
|
1770
1775
|
|
1771
|
-
Any
|
1772
|
-
|
1773
|
-
not interested in their values.
|
1776
|
+
Any of width, height, color_type, bit_depth,
|
1777
|
+
interlace_type, compression_type, or filter_method can
|
1778
|
+
be NULL if you are not interested in their values.
|
1774
1779
|
|
1775
1780
|
Note that png_get_IHDR() returns 32-bit data into
|
1776
1781
|
the application's width and height variables.
|
1777
|
-
This is an unsafe situation if these are
|
1782
|
+
This is an unsafe situation if these are not png_uint_32
|
1778
1783
|
variables. In such situations, the
|
1779
1784
|
png_get_image_width() and png_get_image_height()
|
1780
1785
|
functions described below are safer.
|
@@ -2497,7 +2502,7 @@ value when you call it in this position:
|
|
2497
2502
|
png_set_gamma(png_ptr, screen_gamma, 0.45455);
|
2498
2503
|
|
2499
2504
|
If you need to reduce an RGB file to a paletted file, or if a paletted
|
2500
|
-
file has more entries
|
2505
|
+
file has more entries than will fit on your screen, png_set_quantize()
|
2501
2506
|
will do that. Note that this is a simple match quantization that merely
|
2502
2507
|
finds the closest color available. This should work fairly well with
|
2503
2508
|
optimized palettes, but fairly badly with linear color cubes. If you
|
@@ -3050,7 +3055,7 @@ png_infop info_ptr;
|
|
3050
3055
|
64K. The library seems to run fine with sizes
|
3051
3056
|
of 4K. Although you can give it much less if
|
3052
3057
|
necessary (I assume you can give it chunks of
|
3053
|
-
1 byte, I haven't tried less
|
3058
|
+
1 byte, I haven't tried less than 256 bytes
|
3054
3059
|
yet). When this function returns, you may
|
3055
3060
|
want to display any rows that were generated
|
3056
3061
|
in the row callback if you don't already do
|
@@ -4568,10 +4573,11 @@ a 16-bit linear encoded PNG file is written.
|
|
4568
4573
|
|
4569
4574
|
With all APIs row_stride is handled as in the read APIs - it is the spacing
|
4570
4575
|
from one row to the next in component sized units (float) and if negative
|
4571
|
-
indicates a bottom-up row layout in the buffer.
|
4576
|
+
indicates a bottom-up row layout in the buffer. If you pass zero, libpng will
|
4577
|
+
calculate the row_stride for you from the width and number of channels.
|
4572
4578
|
|
4573
4579
|
Note that the write API does not support interlacing, sub-8-bit pixels,
|
4574
|
-
|
4580
|
+
indexed (paletted) images, or most ancillary chunks.
|
4575
4581
|
|
4576
4582
|
.SH VI. Modifying/Customizing libpng
|
4577
4583
|
|
@@ -4859,41 +4865,6 @@ is called for the first time.)
|
|
4859
4865
|
same as the value of filter_method used
|
4860
4866
|
in png_set_IHDR().
|
4861
4867
|
|
4862
|
-
It is also possible to influence how libpng chooses from among the
|
4863
|
-
available filters. This is done in one or both of two ways - by
|
4864
|
-
telling it how important it is to keep the same filter for successive
|
4865
|
-
rows, and by telling it the relative computational costs of the filters.
|
4866
|
-
|
4867
|
-
double weights[3] = {1.5, 1.3, 1.1},
|
4868
|
-
costs[PNG_FILTER_VALUE_LAST] =
|
4869
|
-
{1.0, 1.3, 1.3, 1.5, 1.7};
|
4870
|
-
|
4871
|
-
png_set_filter_heuristics(png_ptr,
|
4872
|
-
PNG_FILTER_HEURISTIC_WEIGHTED, 3,
|
4873
|
-
weights, costs);
|
4874
|
-
|
4875
|
-
The weights are multiplying factors that indicate to libpng that the
|
4876
|
-
row filter should be the same for successive rows unless another row filter
|
4877
|
-
is that many times better than the previous filter. In the above example,
|
4878
|
-
if the previous 3 filters were SUB, SUB, NONE, the SUB filter could have a
|
4879
|
-
"sum of absolute differences" 1.5 x 1.3 times higher than other filters
|
4880
|
-
and still be chosen, while the NONE filter could have a sum 1.1 times
|
4881
|
-
higher than other filters and still be chosen. Unspecified weights are
|
4882
|
-
taken to be 1.0, and the specified weights should probably be declining
|
4883
|
-
like those above in order to emphasize recent filters over older filters.
|
4884
|
-
|
4885
|
-
The filter costs specify for each filter type a relative decoding cost
|
4886
|
-
to be considered when selecting row filters. This means that filters
|
4887
|
-
with higher costs are less likely to be chosen over filters with lower
|
4888
|
-
costs, unless their "sum of absolute differences" is that much smaller.
|
4889
|
-
The costs do not necessarily reflect the exact computational speeds of
|
4890
|
-
the various filters, since this would unduly influence the final image
|
4891
|
-
size.
|
4892
|
-
|
4893
|
-
Note that the numbers above were invented purely for this example and
|
4894
|
-
are given only to help explain the function usage. Little testing has
|
4895
|
-
been done to find optimum values for either the costs or the weights.
|
4896
|
-
|
4897
4868
|
.SS Requesting debug printout
|
4898
4869
|
|
4899
4870
|
The macro definition PNG_DEBUG can be used to request debugging
|
@@ -5535,6 +5506,10 @@ The signatures of many exported functions were changed, such that
|
|
5535
5506
|
png_infop became png_inforp or png_const_inforp
|
5536
5507
|
where "rp" indicates a "restricted pointer".
|
5537
5508
|
|
5509
|
+
The support for FAR/far types has been eliminated and the definition of
|
5510
|
+
png_alloc_size_t is now controlled by a flag so that 'small size_t' systems
|
5511
|
+
can select it if necessary.
|
5512
|
+
|
5538
5513
|
Error detection in some chunks has improved; in particular the iCCP chunk
|
5539
5514
|
reader now does pretty complete validation of the basic format. Some bad
|
5540
5515
|
profiles that were previously accepted are now accepted with a warning or
|
@@ -5549,7 +5524,7 @@ means of
|
|
5549
5524
|
PNG_OPTION_ON);
|
5550
5525
|
#endif
|
5551
5526
|
|
5552
|
-
It's not a good idea to do this if you are using the
|
5527
|
+
It's not a good idea to do this if you are using the "simplified API",
|
5553
5528
|
which needs to be able to recognize sRGB profiles conveyed via the iCCP
|
5554
5529
|
chunk.
|
5555
5530
|
|
@@ -5608,6 +5583,23 @@ length, which resulted in PNG files that cannot be read beyond the bad iTXt
|
|
5608
5583
|
chunk. This error was fixed in libpng-1.6.3, and a tool (called
|
5609
5584
|
contrib/tools/png-fix-itxt) has been added to the libpng distribution.
|
5610
5585
|
|
5586
|
+
Starting with libpng-1.6.17, the PNG_SAFE_LIMITS macro was eliminated
|
5587
|
+
and safe limits are used by default (users who need larger limits
|
5588
|
+
can still override them at compile time or run time, as described above).
|
5589
|
+
|
5590
|
+
The new limits are
|
5591
|
+
default spec limit
|
5592
|
+
png_user_width_max 1,000,000 2,147,483,647
|
5593
|
+
png_user_height_max 1,000,000 2,147,483,647
|
5594
|
+
png_user_chunk_cache_max 128 unlimited
|
5595
|
+
png_user_chunk_malloc_max 8,000,000 unlimited
|
5596
|
+
|
5597
|
+
Starting with libpng-1.6.18, a PNG_RELEASE_BUILD macro was added, which allows
|
5598
|
+
library builders to control compilation for an installed system (a release build).
|
5599
|
+
It can be set for testing debug or beta builds to ensure that they will compile
|
5600
|
+
when the build type is switched to RC or STABLE. In essence this overrides the
|
5601
|
+
PNG_LIBPNG_BUILD_BASE_TYPE definition which is not directly user controllable.
|
5602
|
+
|
5611
5603
|
.SH XIII. Detecting libpng
|
5612
5604
|
|
5613
5605
|
The png_get_io_ptr() function has been present since libpng-0.88, has never
|
@@ -5778,13 +5770,13 @@ Other rules can be inferred by inspecting the libpng source.
|
|
5778
5770
|
|
5779
5771
|
.SH XVI. Y2K Compliance in libpng
|
5780
5772
|
|
5781
|
-
|
5773
|
+
July 23, 2015
|
5782
5774
|
|
5783
5775
|
Since the PNG Development group is an ad-hoc body, we can't make
|
5784
5776
|
an official declaration.
|
5785
5777
|
|
5786
5778
|
This is your unofficial assurance that libpng from version 0.71 and
|
5787
|
-
upward through 1.6.
|
5779
|
+
upward through 1.6.18 are Y2K compliant. It is my belief that earlier
|
5788
5780
|
versions were also Y2K compliant.
|
5789
5781
|
|
5790
5782
|
Libpng only has two year fields. One is a 2-byte unsigned integer
|
@@ -6036,6 +6028,12 @@ the first widely used release:
|
|
6036
6028
|
1.6.16beta01-03 16 10616 16.so.16.16[.0]
|
6037
6029
|
1.6.16rc01-02 16 10616 16.so.16.16[.0]
|
6038
6030
|
1.6.16 16 10616 16.so.16.16[.0]
|
6031
|
+
1.6.17beta01-06 16 10617 16.so.16.17[.0]
|
6032
|
+
1.6.17rc01-06 16 10617 16.so.16.17[.0]
|
6033
|
+
1.6.17 16 10617 16.so.16.17[.0]
|
6034
|
+
1.6.18beta01-09 16 10618 16.so.16.18[.0]
|
6035
|
+
1.6.18rc01-03 16 10618 16.so.16.18[.0]
|
6036
|
+
1.6.18 16 10618 16.so.16.18[.0]
|
6039
6037
|
|
6040
6038
|
Henceforth the source version will match the shared-library minor
|
6041
6039
|
and patch numbers; the shared-library major version number will be
|
@@ -6092,7 +6090,7 @@ possible without all of you.
|
|
6092
6090
|
|
6093
6091
|
Thanks to Frank J. T. Wojcik for helping with the documentation.
|
6094
6092
|
|
6095
|
-
Libpng version 1.6.
|
6093
|
+
Libpng version 1.6.18 - July 23, 2015:
|
6096
6094
|
Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
|
6097
6095
|
Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net).
|
6098
6096
|
|
@@ -6115,44 +6113,39 @@ this sentence.
|
|
6115
6113
|
|
6116
6114
|
This code is released under the libpng license.
|
6117
6115
|
|
6118
|
-
libpng versions 1.
|
6119
|
-
Copyright (c) 2004,2006-
|
6120
|
-
distributed according to the same disclaimer and license as libpng-1.2.5
|
6121
|
-
with the following individual added to the list of Contributing Authors
|
6122
|
-
|
6123
|
-
Cosmin Truta
|
6124
|
-
|
6125
|
-
libpng versions 1.0.7, July 1, 2000, through 1.2.5 - October 3, 2002, are
|
6126
|
-
Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are
|
6116
|
+
libpng versions 1.0.7, July 1, 2000, through 1.6.18, July 23, 2015, are
|
6117
|
+
Copyright (c) 2000-2002, 2004, 2006-2015 Glenn Randers-Pehrson, and are
|
6127
6118
|
distributed according to the same disclaimer and license as libpng-1.0.6
|
6128
|
-
with the following individuals added to the list of Contributing Authors
|
6119
|
+
with the following individuals added to the list of Contributing Authors:
|
6129
6120
|
|
6130
6121
|
Simon-Pierre Cadieux
|
6131
6122
|
Eric S. Raymond
|
6123
|
+
Mans Rullgard
|
6124
|
+
Cosmin Truta
|
6132
6125
|
Gilles Vollant
|
6126
|
+
James Yu
|
6133
6127
|
|
6134
6128
|
and with the following additions to the disclaimer:
|
6135
6129
|
|
6136
|
-
There is no warranty against interference with your
|
6137
|
-
|
6138
|
-
|
6139
|
-
|
6140
|
-
|
6141
|
-
|
6142
|
-
effort is with the user.
|
6130
|
+
There is no warranty against interference with your enjoyment of the
|
6131
|
+
library or against infringement. There is no warranty that our
|
6132
|
+
efforts or the library will fulfill any of your particular purposes
|
6133
|
+
or needs. This library is provided with all faults, and the entire
|
6134
|
+
risk of satisfactory quality, performance, accuracy, and effort is with
|
6135
|
+
the user.
|
6143
6136
|
|
6144
6137
|
libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are
|
6145
|
-
Copyright (c) 1998
|
6146
|
-
|
6147
|
-
|
6138
|
+
Copyright (c) 1998-2000 Glenn Randers-Pehrson, and are distributed according
|
6139
|
+
to the same disclaimer and license as libpng-0.96, with the following
|
6140
|
+
individuals added to the list of Contributing Authors:
|
6148
6141
|
|
6149
6142
|
Tom Lane
|
6150
6143
|
Glenn Randers-Pehrson
|
6151
6144
|
Willem van Schaik
|
6152
6145
|
|
6153
6146
|
libpng versions 0.89, June 1996, through 0.96, May 1997, are
|
6154
|
-
Copyright (c) 1996
|
6155
|
-
|
6147
|
+
Copyright (c) 1996-1997 Andreas Dilger, and are
|
6148
|
+
distributed according to the same disclaimer and license as libpng-0.88,
|
6156
6149
|
with the following individuals added to the list of Contributing Authors:
|
6157
6150
|
|
6158
6151
|
John Bowler
|
@@ -6163,7 +6156,7 @@ with the following individuals added to the list of Contributing Authors:
|
|
6163
6156
|
Tom Tanner
|
6164
6157
|
|
6165
6158
|
libpng versions 0.5, May 1995, through 0.88, January 1996, are
|
6166
|
-
Copyright (c) 1995
|
6159
|
+
Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.
|
6167
6160
|
|
6168
6161
|
For the purposes of this copyright and license, "Contributing Authors"
|
6169
6162
|
is defined as the following set of individuals:
|
@@ -6186,13 +6179,13 @@ Permission is hereby granted to use, copy, modify, and distribute this
|
|
6186
6179
|
source code, or portions hereof, for any purpose, without fee, subject
|
6187
6180
|
to the following restrictions:
|
6188
6181
|
|
6189
|
-
1. The origin of this source code must not be misrepresented.
|
6182
|
+
1. The origin of this source code must not be misrepresented.
|
6190
6183
|
|
6191
|
-
2. Altered versions must be plainly marked as such and
|
6192
|
-
|
6184
|
+
2. Altered versions must be plainly marked as such and must not
|
6185
|
+
be misrepresented as being the original source.
|
6193
6186
|
|
6194
|
-
3. This Copyright notice may not be removed or altered from
|
6195
|
-
|
6187
|
+
3. This Copyright notice may not be removed or altered from any
|
6188
|
+
source or altered source distribution.
|
6196
6189
|
|
6197
6190
|
The Contributing Authors and Group 42, Inc. specifically permit, without
|
6198
6191
|
fee, and encourage the use of this source code as a component to
|
@@ -6200,21 +6193,21 @@ supporting the PNG file format in commercial products. If you use this
|
|
6200
6193
|
source code in a product, acknowledgment is not required but would be
|
6201
6194
|
appreciated.
|
6202
6195
|
|
6203
|
-
|
6204
6196
|
A "png_get_copyright" function is available, for convenient use in "about"
|
6205
6197
|
boxes and the like:
|
6206
6198
|
|
6207
|
-
printf("%s",png_get_copyright(NULL));
|
6199
|
+
printf("%s", png_get_copyright(NULL));
|
6208
6200
|
|
6209
6201
|
Also, the PNG logo (in PNG format, of course) is supplied in the
|
6210
6202
|
files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31).
|
6211
6203
|
|
6212
|
-
Libpng is OSI Certified Open Source Software. OSI Certified Open Source is
|
6213
|
-
certification mark of the Open Source Initiative.
|
6204
|
+
Libpng is OSI Certified Open Source Software. OSI Certified Open Source is
|
6205
|
+
a certification mark of the Open Source Initiative. OSI has not addressed
|
6206
|
+
the additional disclaimers inserted at version 1.0.7.
|
6214
6207
|
|
6215
6208
|
Glenn Randers-Pehrson
|
6216
6209
|
glennrp at users.sourceforge.net
|
6217
|
-
|
6210
|
+
July 23, 2015
|
6218
6211
|
|
6219
6212
|
.\" end of man page
|
6220
6213
|
|
@@ -1,6 +1,6 @@
|
|
1
|
-
.TH LIBPNGPF 3 "
|
1
|
+
.TH LIBPNGPF 3 "July 23, 2015"
|
2
2
|
.SH NAME
|
3
|
-
libpng \- Portable Network Graphics (PNG) Reference Library 1.6.
|
3
|
+
libpng \- Portable Network Graphics (PNG) Reference Library 1.6.18
|
4
4
|
(private functions)
|
5
5
|
.SH SYNOPSIS
|
6
6
|
\fB#include \fI"pngpriv.h"
|