cairo 1.12.9-x86-mingw32 → 1.14.0-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 +27 -0
- data/README.rdoc +7 -7
- data/Rakefile +72 -23
- data/ext/cairo/extconf.rb +3 -3
- data/ext/cairo/rb_cairo.h +3 -3
- data/ext/cairo/rb_cairo_constants.c +8 -0
- data/ext/cairo/rb_cairo_context.c +63 -1
- data/ext/cairo/rb_cairo_exception.c +17 -0
- data/ext/cairo/rb_cairo_font_face.c +13 -0
- data/ext/cairo/rb_cairo_private.c +14 -1
- data/ext/cairo/rb_cairo_private.h +12 -1
- data/ext/cairo/rb_cairo_surface.c +47 -23
- 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/surface.rb +3 -1
- data/test/cairo-test-utils.rb +5 -0
- data/test/test_constants.rb +11 -0
- data/test/test_context.rb +1 -1
- data/test/test_exception.rb +9 -0
- data/test/test_font_face.rb +1 -1
- data/test/test_quartz_image_surface.rb +13 -0
- data/test/test_surface.rb +10 -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 +6 -6
- 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 +2 -2
- data/vendor/local/bin/libpng16-16.dll +0 -0
- data/vendor/local/bin/libpng16-config +2 -2
- 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/xml2-config +2 -2
- 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 +2 -2
- data/vendor/local/include/cairo/cairo.h +36 -0
- data/vendor/local/include/libpng16/png.h +38 -24
- data/vendor/local/include/libpng16/pngconf.h +3 -3
- data/vendor/local/include/libpng16/pnglibconf.h +2 -3
- data/vendor/local/include/libxml2/libxml/SAX2.h +4 -2
- data/vendor/local/include/libxml2/libxml/entities.h +3 -3
- data/vendor/local/include/libxml2/libxml/globals.h +12 -5
- data/vendor/local/include/libxml2/libxml/relaxng.h +6 -2
- data/vendor/local/include/libxml2/libxml/tree.h +49 -42
- data/vendor/local/include/libxml2/libxml/xmlIO.h +1 -1
- data/vendor/local/include/libxml2/libxml/xmlerror.h +1 -1
- data/vendor/local/include/libxml2/libxml/xmlversion.h +4 -4
- data/vendor/local/include/pixman-1/pixman-version.h +2 -2
- data/vendor/local/include/png.h +38 -24
- data/vendor/local/include/pngconf.h +3 -3
- data/vendor/local/include/pnglibconf.h +2 -3
- data/vendor/local/lib/cmake/libxml2/libxml2-config.cmake +50 -0
- 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 +6 -6
- 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 +6 -6
- data/vendor/local/lib/libcairo.a +0 -0
- data/vendor/local/lib/libcairo.dll.a +0 -0
- data/vendor/local/lib/libcairo.la +6 -6
- data/vendor/local/lib/libfontconfig.dll.a +0 -0
- data/vendor/local/lib/libfontconfig.la +2 -2
- data/vendor/local/lib/libfreetype.a +0 -0
- data/vendor/local/lib/libfreetype.dll.a +0 -0
- data/vendor/local/lib/libfreetype.la +2 -2
- data/vendor/local/lib/libpixman-1.a +0 -0
- data/vendor/local/lib/libpixman-1.dll.a +0 -0
- data/vendor/local/lib/libpixman-1.la +3 -3
- 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/libxml2.la +3 -3
- 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 +2 -2
- data/vendor/local/lib/pkgconfig/cairo-ft.pc +2 -2
- data/vendor/local/lib/pkgconfig/cairo-gobject.pc +3 -3
- data/vendor/local/lib/pkgconfig/cairo-pdf.pc +2 -2
- data/vendor/local/lib/pkgconfig/cairo-png.pc +2 -2
- data/vendor/local/lib/pkgconfig/cairo-ps.pc +2 -2
- data/vendor/local/lib/pkgconfig/cairo-script.pc +2 -2
- data/vendor/local/lib/pkgconfig/cairo-svg.pc +2 -2
- data/vendor/local/lib/pkgconfig/cairo-win32-font.pc +2 -2
- data/vendor/local/lib/pkgconfig/cairo-win32.pc +2 -2
- data/vendor/local/lib/pkgconfig/cairo.pc +3 -3
- data/vendor/local/lib/pkgconfig/fontconfig.pc +3 -3
- data/vendor/local/lib/pkgconfig/freetype2.pc +4 -4
- data/vendor/local/lib/pkgconfig/libpng.pc +2 -2
- data/vendor/local/lib/pkgconfig/libpng16.pc +2 -2
- data/vendor/local/lib/pkgconfig/libxml-2.0.pc +3 -3
- data/vendor/local/lib/pkgconfig/pixman-1.pc +2 -2
- data/vendor/local/lib/pkgconfig/zlib.pc +3 -3
- data/vendor/local/lib/xml2Conf.sh +3 -3
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/Copyright +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/examples/testHTML.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/examples/testSAX.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/examples/testXPath.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/examples/xmllint.c +35 -10
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/DOM.gif +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/FAQ.html +34 -17
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/Libxml2-Logo-180x168.gif +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/Libxml2-Logo-90x34.gif +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/encoding.html +20 -10
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/examples.xml +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/examples.xsl +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/book1.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/home.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/index.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/left.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-DOCBparser.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-HTMLparser.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-HTMLtree.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-SAX.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-SAX2.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-c14n.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-catalog.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-chvalid.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-debugXML.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-dict.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-encoding.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-entities.html +4 -4
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-globals.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-hash.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-lib.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-list.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-nanoftp.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-nanohttp.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-parser.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-parserInternals.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-pattern.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-relaxng.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-schemasInternals.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-schematron.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-threads.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-tree.html +72 -72
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-uri.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-valid.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xinclude.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xlink.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlIO.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlautomata.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlerror.html +1 -1
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlexports.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlmemory.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlmodule.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlreader.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlregexp.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlsave.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlschemas.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlschemastypes.html +2 -2
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlstring.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlunicode.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlversion.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xmlwriter.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xpath.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xpathInternals.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xpointer.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/libxml-xzlib.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/right.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/html/up.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/index.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/io1.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/io1.res +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/io2.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/io2.res +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/libxml.gif +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/parse1.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/parse2.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/parse3.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/parse4.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/reader1.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/reader1.res +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/reader2.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/reader3.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/reader3.res +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/reader4.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/reader4.res +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/redhat.gif +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/smallfootonly.gif +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/structure.gif +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/test1.xml +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/test2.xml +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/test3.xml +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/testWriter.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tree1.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tree1.res +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tree2.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tree2.res +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tst.xml +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/apa.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/apb.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/apc.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/apd.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/ape.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/apf.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/apg.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/aph.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/api.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/ar01s02.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/ar01s03.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/ar01s04.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/ar01s05.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/ar01s06.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/ar01s07.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/ar01s08.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/ar01s09.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/blank.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/callouts/1.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/callouts/10.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/callouts/2.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/callouts/3.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/callouts/4.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/callouts/5.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/callouts/6.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/callouts/7.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/callouts/8.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/callouts/9.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/caution.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/draft.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/home.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/important.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/next.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/note.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/prev.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/tip.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/toc-blank.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/toc-minus.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/toc-plus.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/up.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/images/warning.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/includeaddattribute.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/includeaddkeyword.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/includeconvert.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/includegetattribute.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/includekeyword.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/includexpath.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/index.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/ix01.html +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/tutorial/xmltutorial.pdf +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/w3c.png +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/writer.xml +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/xml.html +284 -4
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/xpath1.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/xpath1.res +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/xpath2.c +0 -0
- data/vendor/local/share/doc/{libxml2-2.9.1 → libxml2-2.9.2}/html/xpath2.res +0 -0
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Error-handling.html +11 -3
- data/vendor/local/share/gtk-doc/html/cairo/cairo-FreeType-Fonts.html +12 -29
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Image-Surfaces.html +11 -27
- data/vendor/local/share/gtk-doc/html/cairo/cairo-PDF-Surfaces.html +22 -3
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Paths.html +43 -100
- data/vendor/local/share/gtk-doc/html/cairo/cairo-PostScript-Surfaces.html +26 -51
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Quartz-Surfaces.html +4 -13
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Recording-Surfaces.html +10 -23
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Regions.html +8 -8
- data/vendor/local/share/gtk-doc/html/cairo/cairo-SVG-Surfaces.html +3 -3
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Types.html +7 -17
- data/vendor/local/share/gtk-doc/html/cairo/cairo-User-Fonts.html +14 -14
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Version-Information.html +342 -0
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Win32-Fonts.html +1 -1
- data/vendor/local/share/gtk-doc/html/cairo/cairo-Win32-Surfaces.html +5 -5
- data/vendor/local/share/gtk-doc/html/cairo/cairo-XLib-Surfaces.html +2 -2
- data/vendor/local/share/gtk-doc/html/cairo/cairo-XLib-XRender-Backend.html +1 -1
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-device-t.html +86 -49
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-font-face-t.html +4 -4
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-font-options-t.html +2 -2
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-pattern-t.html +71 -119
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-scaled-font-t.html +72 -159
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-surface-t.html +146 -58
- data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-t.html +22 -46
- data/vendor/local/share/gtk-doc/html/cairo/cairo-support.html +3 -1
- data/vendor/local/share/gtk-doc/html/cairo/cairo-text.html +11 -11
- data/vendor/local/share/gtk-doc/html/cairo/cairo.devhelp2 +25 -0
- data/vendor/local/share/gtk-doc/html/cairo/home.png +0 -0
- data/vendor/local/share/gtk-doc/html/cairo/index-1.8.html +9 -0
- data/vendor/local/share/gtk-doc/html/cairo/index-all.html +47 -0
- data/vendor/local/share/gtk-doc/html/cairo/index.html +4 -1
- data/vendor/local/share/gtk-doc/html/cairo/index.sgml +26 -0
- data/vendor/local/share/gtk-doc/html/cairo/left.png +0 -0
- data/vendor/local/share/gtk-doc/html/cairo/right.png +0 -0
- data/vendor/local/share/gtk-doc/html/cairo/up.png +0 -0
- data/vendor/local/share/gtk-doc/html/libxml2/libxml2-entities.html +4 -4
- data/vendor/local/share/gtk-doc/html/libxml2/libxml2-tree.html +73 -73
- data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlerror.html +1 -1
- data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlschemastypes.html +2 -2
- data/vendor/local/share/license/cairo/AUTHORS +5 -1
- data/vendor/local/share/license/cairo/README +20 -10
- data/vendor/local/share/license/libpng/README +20 -7
- data/vendor/local/share/man/man1/xmllint.1 +2 -5
- data/vendor/local/share/man/man3/libpng.3 +92 -220
- data/vendor/local/share/man/man3/libpngpf.3 +2 -2
- data/vendor/local/share/man/man5/png.5 +1 -1
- metadata +254 -248
@@ -84,7 +84,7 @@ void <a href="#xmlResetError">xmlResetError</a> (<a href="libxml2-xmlerror.htm
|
|
84
84
|
char * str2 : extra string information
|
85
85
|
char * str3 : extra string information
|
86
86
|
int int1 : extra number information
|
87
|
-
int int2 : column
|
87
|
+
int int2 : error column # or 0 if N/A (todo: rename field when we would brk ABI)
|
88
88
|
void * ctxt : the parser context if available
|
89
89
|
void * node : the node in the tree
|
90
90
|
} xmlError;
|
@@ -136,11 +136,11 @@ int <a href="#xmlSchemaCheckFacet">xmlSchemaCheckFacet</a> (<a href="libxml2-sc
|
|
136
136
|
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the type of the built in type</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the type if found, NULL otherwise.</td></tr></tbody></table></div></div>
|
137
137
|
<hr/>
|
138
138
|
<div class="refsect2" lang="en"><h3><a name="xmlSchemaGetCanonValue"/>xmlSchemaGetCanonValue ()</h3><pre class="programlisting">int xmlSchemaGetCanonValue (<a href="libxml2-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> val, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> ** retValue)<br/>
|
139
|
-
</pre><p>Get
|
139
|
+
</pre><p>Get the canonical lexical representation of the value. The caller has to FREE the returned retValue. WARNING: Some value types are not supported yet, resulting in a @retValue of "???". TODO: XML Schema 1.0 does not define canonical representations for: duration, gYearMonth, gYear, gMonthDay, gMonth, gDay, anyURI, QName, NOTATION. This will be fixed in XML Schema 1.1.</p>
|
140
140
|
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the precomputed value</td></tr><tr><td><span class="term"><i><tt>retValue</tt></i>:</span></td><td>the returned value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the value could be built, 1 if the value type is not supported yet and -1 in case of API errors.</td></tr></tbody></table></div></div>
|
141
141
|
<hr/>
|
142
142
|
<div class="refsect2" lang="en"><h3><a name="xmlSchemaGetCanonValueWhtsp"/>xmlSchemaGetCanonValueWhtsp ()</h3><pre class="programlisting">int xmlSchemaGetCanonValueWhtsp (<a href="libxml2-schemasInternals.html#xmlSchemaValPtr">xmlSchemaValPtr</a> val, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> ** retValue, <br/> <a href="libxml2-xmlschemastypes.html#xmlSchemaWhitespaceValueType">xmlSchemaWhitespaceValueType</a> ws)<br/>
|
143
|
-
</pre><p>Get
|
143
|
+
</pre><p>Get the canonical representation of the value. The caller has to free the returned @retValue.</p>
|
144
144
|
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>val</tt></i>:</span></td><td>the precomputed value</td></tr><tr><td><span class="term"><i><tt>retValue</tt></i>:</span></td><td>the returned value</td></tr><tr><td><span class="term"><i><tt>ws</tt></i>:</span></td><td>the whitespace type of the value</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 if the value could be built, 1 if the value type is not supported yet and -1 in case of API errors.</td></tr></tbody></table></div></div>
|
145
145
|
<hr/>
|
146
146
|
<div class="refsect2" lang="en"><h3><a name="xmlSchemaGetFacetValueAsULong"/>xmlSchemaGetFacetValueAsULong ()</h3><pre class="programlisting">unsigned long xmlSchemaGetFacetValueAsULong (<a href="libxml2-schemasInternals.html#xmlSchemaFacetPtr">xmlSchemaFacetPtr</a> facet)<br/>
|
@@ -24,6 +24,7 @@ John Ellson <ellson@research.att.com> First font/glyph extents functions
|
|
24
24
|
Michael Emmel <mike.emmel@gmail.com> DirectFB backend
|
25
25
|
Miklós Erdélyi <erdelyim@gmail.com> Fix typo leading to a crash
|
26
26
|
Behdad Esfahbod <behdad@behdad.org> Huge piles of bug fixes, improvements, and general maintenance
|
27
|
+
Gilles Espinasse <g.esp@free.fr> Font related fixes
|
27
28
|
Larry Ewing <lewing@novell.com> Test case for group-clip
|
28
29
|
Brian Ewins <Brian.Ewins@gmail.com> ATSUI maintenance (first success at making it really work)
|
29
30
|
Bertram Felgenhauer <int-e@gmx.de> Fixes for subtle arithmetic errors
|
@@ -32,6 +33,7 @@ Bdale Garbee <bdale@gag.com> Provided essential support for cairo achitecture se
|
|
32
33
|
Jens Granseuer <jensgr@gmx.net> Fixes to generate proper compiler flags
|
33
34
|
Laxmi Harikumar <laxmi.harikumar@digital.com> Build fix
|
34
35
|
J. Ali Harlow <ali@avrc.city.ac.uk> win32 backend updates
|
36
|
+
Bryce Harrington <bryce@osg.samsung.com> Test cases, bug/typo fixes
|
35
37
|
Mathias Hasselmann <mathias.hasselmann@gmx.de> Significant reduction of calls to malloc
|
36
38
|
Richard Henderson <rth@twiddle.net> "slim" macros for better shared libraries
|
37
39
|
James Henstridge <james@daa.com.au> Build fixes related to freetype
|
@@ -49,6 +51,7 @@ Martin Kretzschmar <martink@gnome.org> Arithmetic fix for 64-bit architectures
|
|
49
51
|
Mathieu Lacage <Mathieu.Lacage@sophia.inria.fr> several bug/typo fixes
|
50
52
|
Dominic Lachowicz <domlachowicz@gmail.com> PDF conformance fix, fix image surface to zero out contents
|
51
53
|
Alexander Larsson <alexl@redhat.com> Profiling and performance fixes.
|
54
|
+
Sylvestre Ledru <sylvestre@mozilla.com> Static analysis fixes.
|
52
55
|
Tor Lillqvist <tml@novell.com> win32 build fixes, build scripts
|
53
56
|
Jinghua Luo <sunmoon1997@gmail.com> Add bitmap glyph transformation, many freetype and glitz fixes
|
54
57
|
Luke-Jr <luke-jr@utopios.org> Build fix for cross-compiling
|
@@ -62,6 +65,7 @@ Christopher (Monty) Montgomery <xiphmont@gmail.com> Performnace fix (subimage_co
|
|
62
65
|
Tim Mooney <enchanter@users.sourceforge.net> Fix test suite to compile with Solaris compiler
|
63
66
|
Jeff Muizelaar <jeff@infidigm.net> Patient, painful, pixman code merge. Many fixes for intricacies of dashing.
|
64
67
|
Yevgen Muntyan <muntyan@tamu.edu> win32 build fix
|
68
|
+
Ravi Nanjundappa <nravi.n@samsung.com> Static analysis fixes, test cases, skia backend update/fixes
|
65
69
|
Declan Naughton <piratepenguin@gmail.com> Fix documentation typos
|
66
70
|
Peter Nilsson <c99pnn@cs.umu.se> Glitz backend
|
67
71
|
Henning Noren <henning.noren.402@student.lu.se> Fix memory leak
|
@@ -88,7 +92,7 @@ Jamey Sharp <jamey@minilop.net> Surface/font backend virtualization, XCB backend
|
|
88
92
|
Jason Dorje Short <jdorje@users.sf.net> Build fixes and bug fixes
|
89
93
|
Jeff Smith <whydoubt@yahoo.com> Fixes for intricacies of stroking code
|
90
94
|
Travis Spencer <tspencer@cs.pdx.edu> XCB backend fix
|
91
|
-
Bill Spitzak <spitzak@d2.com> Build fix to find Xrender.h without xrender.pc
|
95
|
+
Bill Spitzak <spitzak@d2.com> Build fix to find Xrender.h without xrender.pc, downscaling support
|
92
96
|
Zhe Su <james.su@gmail.com> Add support for fontconfig's embeddedbitmap option
|
93
97
|
Owen Taylor <otaylor@redhat.com> Font rewrite, documentation, win32 backend
|
94
98
|
Pierre Tardy <tardyp@gmail.com> EGL support and testing, OpenVG backend
|
@@ -67,29 +67,31 @@ backends. Further, the supported backends can be divided into the
|
|
67
67
|
"platform" backends which depend on some underlying platform-specific
|
68
68
|
system, (such as the X Window System or some other window system).
|
69
69
|
|
70
|
-
As an example, for a standard Linux build
|
71
|
-
|
72
|
-
backend), the following sample commands
|
73
|
-
dependencies:
|
70
|
+
As an example, for a standard Linux build similar to what's shipped by
|
71
|
+
your distro, (with image, png, pdf, PostScript, svg, and xlib surface
|
72
|
+
backends, and the freetype font backend), the following sample commands
|
73
|
+
will install necessary dependencies:
|
74
74
|
|
75
75
|
Debian (and similar):
|
76
76
|
|
77
|
-
apt-get
|
77
|
+
apt-get build-dep cairo
|
78
78
|
|
79
79
|
Fedora (and similar):
|
80
80
|
|
81
81
|
yum install libpng-devel zlib-devel libXrender-devel fontconfig-devel
|
82
82
|
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
83
|
+
Technically you probably don't need pixman from the distribution since
|
84
|
+
if you're manually compiling Cairo you probably want an updated pixman
|
85
|
+
as well. However, if you follow the default settings and install pixman
|
86
|
+
to /usr/local, your Cairo build should properly use it in preference to
|
87
|
+
the system pixman.
|
88
|
+
|
87
89
|
|
88
90
|
Supported, "standard" surface backends
|
89
91
|
------------------------------------
|
90
92
|
image backend (required)
|
91
93
|
------------------------
|
92
|
-
pixman >= 0.
|
94
|
+
pixman >= 0.30.0 http://cairographics.org/releases
|
93
95
|
|
94
96
|
png support (can be left out if desired, but many
|
95
97
|
----------- applications expect it to be present)
|
@@ -179,10 +181,18 @@ Experimental surface backends
|
|
179
181
|
packages and developer dependencies are available at Netlabs:
|
180
182
|
ftp://ftp.netlabs.org/pub/cairo
|
181
183
|
|
184
|
+
skia backend
|
185
|
+
------------
|
186
|
+
Requires the skia library as of June 2014. Since skia is not
|
187
|
+
API stable, building against newer (or older) versions of skia
|
188
|
+
will probably fail.
|
189
|
+
|
190
|
+
|
182
191
|
Compiling
|
183
192
|
=========
|
184
193
|
See the INSTALL document for build instructions.
|
185
194
|
|
195
|
+
|
186
196
|
History
|
187
197
|
=======
|
188
198
|
Cairo was originally developed by Carl Worth <cworth@cworth.org> and
|
@@ -1,4 +1,4 @@
|
|
1
|
-
README for libpng version 1.6.
|
1
|
+
README for libpng version 1.6.14 - October 23, 2014 (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.
|
@@ -23,18 +23,25 @@ earlier versions if you are using a shared library. The type of the
|
|
23
23
|
png_uint_32, which will affect shared-library applications that use
|
24
24
|
this function.
|
25
25
|
|
26
|
-
To avoid problems with changes to the internals of
|
26
|
+
To avoid problems with changes to the internals of png info_struct,
|
27
27
|
new APIs have been made available in 0.95 to avoid direct application
|
28
28
|
access to info_ptr. These functions are the png_set_<chunk> and
|
29
29
|
png_get_<chunk> functions. These functions should be used when
|
30
30
|
accessing/storing the info_struct data, rather than manipulating it
|
31
31
|
directly, to avoid such problems in the future.
|
32
32
|
|
33
|
-
It is important to note that the APIs
|
33
|
+
It is important to note that the APIs did not make current programs
|
34
34
|
that access the info struct directly incompatible with the new
|
35
|
-
library
|
36
|
-
|
37
|
-
|
35
|
+
library, through libpng-1.2.x. In libpng-1.4.x, which was meant to
|
36
|
+
be a transitional release, members of the png_struct and the
|
37
|
+
info_struct can still be accessed, but the compiler will issue a
|
38
|
+
warning about deprecated usage. Since libpng-1.5.0, direct access
|
39
|
+
to these structs is not allowed, and the definitions of the structs
|
40
|
+
reside in private pngstruct.h and pnginfo.h header files that are not
|
41
|
+
accessible to applications. It is strongly suggested that new
|
42
|
+
programs use the new APIs (as shown in example.c and pngtest.c), and
|
43
|
+
older programs be converted to the new format, to facilitate upgrades
|
44
|
+
in the future.
|
38
45
|
****
|
39
46
|
|
40
47
|
Additions since 0.90 include the ability to compile libpng as a
|
@@ -87,6 +94,12 @@ This code is currently being archived at libpng.sf.net in the
|
|
87
94
|
[DOWNLOAD] area, and at ftp://ftp.simplesystems.org. If you can't find it
|
88
95
|
in any of those places, e-mail me, and I'll help you find it.
|
89
96
|
|
97
|
+
I am not a lawyer, but I believe that the Export Control Classification
|
98
|
+
Number (ECCN) for libpng is EAR99, which means not subject to export
|
99
|
+
controls or International Traffic in Arms Regulations (ITAR) because it
|
100
|
+
is open source, publicly available software, that does not contain any
|
101
|
+
encryption software. See the EAR, paragraphs 734.3(b)(3) and 734.7(b).
|
102
|
+
|
90
103
|
If you have any code changes, requests, problems, etc., please e-mail
|
91
104
|
them to me. Also, I'd appreciate any make files or project files,
|
92
105
|
and any modifications you needed to make to get libpng to compile,
|
@@ -177,7 +190,7 @@ Files in this distribution:
|
|
177
190
|
pngminus => Simple pnm2png and png2pnm programs
|
178
191
|
pngsuite => Test images
|
179
192
|
tools => Various tools
|
180
|
-
visupng
|
193
|
+
visupng => Contains a MSVC workspace for VisualPng
|
181
194
|
projects => Contains project files and workspaces for
|
182
195
|
building a DLL
|
183
196
|
owatcom => Contains a WATCOM project for building libpng
|
@@ -1,7 +1,7 @@
|
|
1
1
|
'\" t
|
2
2
|
.\" Title: xmllint
|
3
3
|
.\" Author: John Fleck <jfleck@inkstain.net>
|
4
|
-
.\" Generator: DocBook XSL Stylesheets v1.
|
4
|
+
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
|
5
5
|
.\" Date: $Date$
|
6
6
|
.\" Manual: xmllint Manual
|
7
7
|
.\" Source: libxml2
|
@@ -55,7 +55,6 @@ is included in
|
|
55
55
|
\fBlibxml\fR(3)\&.
|
56
56
|
.SH "OPTIONS"
|
57
57
|
.PP
|
58
|
-
|
59
58
|
\fBxmllint\fR
|
60
59
|
accepts the following options (in alphabetical order):
|
61
60
|
.PP
|
@@ -147,7 +146,7 @@ and populate the tree with inherited attributes\&.
|
|
147
146
|
.PP
|
148
147
|
\fB\-\-encode \fR\fB\fIENCODING\fR\fR
|
149
148
|
.RS 4
|
150
|
-
Output in the given encoding\&.
|
149
|
+
Output in the given encoding\&. Note that this works for full document not fragments or result from XPath queries\&.
|
151
150
|
.RE
|
152
151
|
.PP
|
153
152
|
\fB\-\-format\fR
|
@@ -409,7 +408,6 @@ input\&.
|
|
409
408
|
.RE
|
410
409
|
.SH "SHELL COMMANDS"
|
411
410
|
.PP
|
412
|
-
|
413
411
|
\fBxmllint\fR
|
414
412
|
offers an interactive shell mode invoked with the
|
415
413
|
\fB\-\-shell\fR
|
@@ -537,7 +535,6 @@ controls the indentation\&. The default value is two spaces " "\&.
|
|
537
535
|
.RE
|
538
536
|
.SH "DIAGNOSTICS"
|
539
537
|
.PP
|
540
|
-
|
541
538
|
\fBxmllint\fR
|
542
539
|
return codes provide information that can be used when calling it from scripts\&.
|
543
540
|
.PP
|
@@ -1,6 +1,6 @@
|
|
1
|
-
.TH LIBPNG 3 "
|
1
|
+
.TH LIBPNG 3 "October 23, 2014"
|
2
2
|
.SH NAME
|
3
|
-
libpng \- Portable Network Graphics (PNG) Reference Library 1.6.
|
3
|
+
libpng \- Portable Network Graphics (PNG) Reference Library 1.6.14
|
4
4
|
.SH SYNOPSIS
|
5
5
|
\fB
|
6
6
|
#include <png.h>\fP
|
@@ -504,7 +504,7 @@ Following is a copy of the libpng-manual.txt file that accompanies libpng.
|
|
504
504
|
.SH LIBPNG.TXT
|
505
505
|
libpng-manual.txt - A description on how to use and modify libpng
|
506
506
|
|
507
|
-
libpng version 1.6.
|
507
|
+
libpng version 1.6.14 - October 23, 2014
|
508
508
|
Updated and distributed by Glenn Randers-Pehrson
|
509
509
|
<glennrp at users.sourceforge.net>
|
510
510
|
Copyright (c) 1998-2014 Glenn Randers-Pehrson
|
@@ -515,15 +515,15 @@ libpng-manual.txt - A description on how to use and modify libpng
|
|
515
515
|
|
516
516
|
Based on:
|
517
517
|
|
518
|
-
libpng versions 0.97, January 1998, through 1.6.
|
518
|
+
libpng versions 0.97, January 1998, through 1.6.14 - October 23, 2014
|
519
519
|
Updated and distributed by Glenn Randers-Pehrson
|
520
520
|
Copyright (c) 1998-2014 Glenn Randers-Pehrson
|
521
521
|
|
522
|
-
libpng 1.0 beta 6
|
522
|
+
libpng 1.0 beta 6 - version 0.96 - May 28, 1997
|
523
523
|
Updated and distributed by Andreas Dilger
|
524
524
|
Copyright (c) 1996, 1997 Andreas Dilger
|
525
525
|
|
526
|
-
libpng 1.0 beta 2 - version 0.88
|
526
|
+
libpng 1.0 beta 2 - version 0.88 - January 26, 1996
|
527
527
|
For conditions of distribution and use, see copyright
|
528
528
|
notice in png.h. Copyright (c) 1995, 1996 Guy Eric
|
529
529
|
Schalnat, Group 42, Inc.
|
@@ -558,7 +558,7 @@ This file describes how to use and modify the PNG reference library
|
|
558
558
|
file, example.c is a good starting point for using the library, as
|
559
559
|
it is heavily commented and should include everything most people
|
560
560
|
will need. We assume that libpng is already installed; see the
|
561
|
-
INSTALL file for instructions on how to install libpng.
|
561
|
+
INSTALL file for instructions on how to configure and install libpng.
|
562
562
|
|
563
563
|
For examples of libpng usage, see the files "example.c", "pngtest.c",
|
564
564
|
and the files in the "contrib" directory, all of which are included in
|
@@ -3140,7 +3140,7 @@ png_infop info_ptr;
|
|
3140
3140
|
png_progressive_combine_row(png_ptr, old_row,
|
3141
3141
|
new_row);
|
3142
3142
|
|
3143
|
-
/* where old_row is what was displayed
|
3143
|
+
/* where old_row is what was displayed
|
3144
3144
|
previously for the row. Note that the first
|
3145
3145
|
pass (pass == 0, really) will completely cover
|
3146
3146
|
the old row, so the rows do not have to be
|
@@ -3765,7 +3765,7 @@ tEXt chunk use RFC 1123 format dates (e.g. "22 May 1997 18:07:10 GMT"),
|
|
3765
3765
|
although this isn't a requirement. Unlike the tIME chunk, the
|
3766
3766
|
"Creation Time" tEXt chunk is not expected to be automatically changed
|
3767
3767
|
by the software. To facilitate the use of RFC 1123 dates, a function
|
3768
|
-
png_convert_to_rfc1123_buffer(
|
3768
|
+
png_convert_to_rfc1123_buffer(buffer, png_timep) is provided to
|
3769
3769
|
convert from PNG time to an RFC 1123 format string. The caller must provide
|
3770
3770
|
a writeable buffer of at least 29 bytes.
|
3771
3771
|
|
@@ -4297,8 +4297,9 @@ and matches the 8-bit format expected by typical display devices.
|
|
4297
4297
|
The color/gray channels are not scaled (pre-multiplied) by the alpha
|
4298
4298
|
channel and are suitable for passing to color management software.
|
4299
4299
|
|
4300
|
-
b) As a value in the range 0..65535, contained in a 2-byte integer
|
4301
|
-
|
4300
|
+
b) As a value in the range 0..65535, contained in a 2-byte integer, in
|
4301
|
+
the native byte order of the platform on which the application is running.
|
4302
|
+
All channels can be converted to the original value by dividing by 65535; all
|
4302
4303
|
channels are linear. Color channels use the RGB encoding (RGB end-points) of
|
4303
4304
|
the sRGB specification. This encoding is identified by the
|
4304
4305
|
PNG_FORMAT_FLAG_LINEAR flag below.
|
@@ -4365,7 +4366,9 @@ First the single byte formats:
|
|
4365
4366
|
Then the linear 2-byte formats. When naming these "Y" is used to
|
4366
4367
|
indicate a luminance (gray) channel. The component order within the pixel
|
4367
4368
|
is always the same - there is no provision for swapping the order of the
|
4368
|
-
components in the linear format.
|
4369
|
+
components in the linear format. The components are 16-bit integers in
|
4370
|
+
the native byte order for your platform, and there is no provision for
|
4371
|
+
swapping the bytes to a different endian condition.
|
4369
4372
|
|
4370
4373
|
PNG_FORMAT_LINEAR_Y PNG_FORMAT_FLAG_LINEAR
|
4371
4374
|
PNG_FORMAT_LINEAR_Y_ALPHA
|
@@ -4430,7 +4433,7 @@ First the information about the samples.
|
|
4430
4433
|
*
|
4431
4434
|
* png_byte colormap[PNG_IMAGE_MAXIMUM_COLORMAP_COMPONENTS(sRGB_fmt)];
|
4432
4435
|
*
|
4433
|
-
* Alternatively use the PNG_IMAGE_COLORMAP_SIZE macro below to use the
|
4436
|
+
* Alternatively, use the PNG_IMAGE_COLORMAP_SIZE macro below to use the
|
4434
4437
|
* information from one of the png_image_begin_read_ APIs and dynamically
|
4435
4438
|
* allocate the required memory.
|
4436
4439
|
*/
|
@@ -4459,9 +4462,16 @@ Information about the whole row, or whole image
|
|
4459
4462
|
row. For a color-mapped image this is the minimum number of bytes in a
|
4460
4463
|
row.
|
4461
4464
|
|
4465
|
+
If you need the stride measured in bytes, row_stride_bytes is
|
4466
|
+
PNG_IMAGE_ROW_STRIDE(image) * PNG_IMAGE_PIXEL_COMPONENT_SIZE(fmt)
|
4467
|
+
plus any padding bytes that your application might need, for example
|
4468
|
+
to start the next row on a 4-byte boundary.
|
4469
|
+
|
4462
4470
|
PNG_IMAGE_BUFFER_SIZE(image, row_stride)
|
4463
4471
|
Returns the size, in bytes, of an image buffer given a png_image and a row
|
4464
|
-
stride - the number of components to leave space for in each row.
|
4472
|
+
stride - the number of components to leave space for in each row. This
|
4473
|
+
macro takes care of multiplying row_stride by PNG_IMAGE_PIXEL_COMONENT_SIZE
|
4474
|
+
when the image has 2-byte components.
|
4465
4475
|
|
4466
4476
|
PNG_IMAGE_FLAG_COLORSPACE_NOT_sRGB == 0x01
|
4467
4477
|
This indicates the the RGB values of the in-memory bitmap do not
|
@@ -4590,14 +4600,11 @@ clears the newly allocated memory to zero; note that png_calloc(png_ptr, size)
|
|
4590
4600
|
is not the same as the calloc(number, size) function provided by stdlib.h.
|
4591
4601
|
There is limited support for certain systems with segmented memory
|
4592
4602
|
architectures and the types of pointers declared by png.h match this; you
|
4593
|
-
will have to use appropriate pointers in your application.
|
4594
|
-
|
4595
|
-
|
4596
|
-
|
4597
|
-
|
4598
|
-
png_create_write_struct_2() to register your own functions as described
|
4599
|
-
above. These functions also provide a void pointer that can be retrieved
|
4600
|
-
via
|
4603
|
+
will have to use appropriate pointers in your application. If you prefer
|
4604
|
+
to use a different method of allocating and freeing data, you can use
|
4605
|
+
png_create_read_struct_2() or png_create_write_struct_2() to register your
|
4606
|
+
own functions as described above. These functions also provide a void
|
4607
|
+
pointer that can be retrieved via
|
4601
4608
|
|
4602
4609
|
mem_ptr=png_get_mem_ptr(png_ptr);
|
4603
4610
|
|
@@ -4740,29 +4747,6 @@ the simpler ones to get an idea of how they work. Try to find a similar
|
|
4740
4747
|
transformation to the one you want to add and copy off of it. More details
|
4741
4748
|
can be found in the comments inside the code itself.
|
4742
4749
|
|
4743
|
-
.SS Configuring for 16-bit platforms
|
4744
|
-
|
4745
|
-
You will want to look into zconf.h to tell zlib (and thus libpng) that
|
4746
|
-
it cannot allocate more then 64K at a time. Even if you can, the memory
|
4747
|
-
won't be accessible. So limit zlib and libpng to 64K by defining MAXSEG_64K.
|
4748
|
-
|
4749
|
-
.SS Configuring for DOS
|
4750
|
-
|
4751
|
-
For DOS users who only have access to the lower 640K, you will
|
4752
|
-
have to limit zlib's memory usage via a png_set_compression_mem_level()
|
4753
|
-
call. See zlib.h or zconf.h in the zlib library for more information.
|
4754
|
-
|
4755
|
-
.SS Configuring for Medium Model
|
4756
|
-
|
4757
|
-
Libpng's support for medium model has been tested on most of the popular
|
4758
|
-
compilers. Make sure MAXSEG_64K gets defined, USE_FAR_KEYWORD gets
|
4759
|
-
defined, and FAR gets defined to far in pngconf.h, and you should be
|
4760
|
-
all set. Everything in the library (except for zlib's structure) is
|
4761
|
-
expecting far data. You must use the typedefs with the p or pp on
|
4762
|
-
the end for pointers (or at least look at them and be careful). Make
|
4763
|
-
note that the rows of data are defined as png_bytepp, which is
|
4764
|
-
an "unsigned char far * far *".
|
4765
|
-
|
4766
4750
|
.SS Configuring for gui/windowing platforms:
|
4767
4751
|
|
4768
4752
|
You will need to write new error and warning functions that use the GUI
|
@@ -4772,19 +4756,6 @@ in order to have them available during the structure initialization.
|
|
4772
4756
|
They can be changed later via png_set_error_fn(). On some compilers,
|
4773
4757
|
you may also have to change the memory allocators (png_malloc, etc.).
|
4774
4758
|
|
4775
|
-
.SS Configuring for compiler xxx:
|
4776
|
-
|
4777
|
-
All includes for libpng are in pngconf.h. If you need to add, change
|
4778
|
-
or delete an include, this is the place to do it.
|
4779
|
-
The includes that are not needed outside libpng are placed in pngpriv.h,
|
4780
|
-
which is only used by the routines inside libpng itself.
|
4781
|
-
The files in libpng proper only include pngpriv.h and png.h, which
|
4782
|
-
%14%in turn includes pngconf.h.
|
4783
|
-
in turn includes pngconf.h and, as of libpng-1.5.0, pnglibconf.h.
|
4784
|
-
As of libpng-1.5.0, pngpriv.h also includes three other private header
|
4785
|
-
files, pngstruct.h, pnginfo.h, and pngdebug.h, which contain material
|
4786
|
-
that previously appeared in the public headers.
|
4787
|
-
|
4788
4759
|
.SS Configuring zlib:
|
4789
4760
|
|
4790
4761
|
There are special functions to configure the compression. Perhaps the
|
@@ -4826,6 +4797,8 @@ zlib.h for more information on what these mean.
|
|
4826
4797
|
|
4827
4798
|
png_set_compression_method(png_ptr, method);
|
4828
4799
|
|
4800
|
+
This controls the size of the IDAT chunks (default 8192):
|
4801
|
+
|
4829
4802
|
png_set_compression_buffer_size(png_ptr, size);
|
4830
4803
|
|
4831
4804
|
As of libpng version 1.5.4, additional APIs became
|
@@ -4924,46 +4897,6 @@ Note that the numbers above were invented purely for this example and
|
|
4924
4897
|
are given only to help explain the function usage. Little testing has
|
4925
4898
|
been done to find optimum values for either the costs or the weights.
|
4926
4899
|
|
4927
|
-
.SS Removing unwanted object code
|
4928
|
-
|
4929
|
-
There are a bunch of #define's in pngconf.h that control what parts of
|
4930
|
-
libpng are compiled. All the defines end in _SUPPORTED. If you are
|
4931
|
-
never going to use a capability, you can change the #define to #undef
|
4932
|
-
before recompiling libpng and save yourself code and data space, or
|
4933
|
-
you can turn off individual capabilities with defines that begin with
|
4934
|
-
PNG_NO_.
|
4935
|
-
|
4936
|
-
In libpng-1.5.0 and later, the #define's are in pnglibconf.h instead.
|
4937
|
-
|
4938
|
-
You can also turn all of the transforms and ancillary chunk capabilities
|
4939
|
-
off en masse with compiler directives that define
|
4940
|
-
PNG_NO_READ[or WRITE]_TRANSFORMS, or PNG_NO_READ[or WRITE]_ANCILLARY_CHUNKS,
|
4941
|
-
or all four,
|
4942
|
-
along with directives to turn on any of the capabilities that you do
|
4943
|
-
want. The PNG_NO_READ[or WRITE]_TRANSFORMS directives disable the extra
|
4944
|
-
transformations but still leave the library fully capable of reading
|
4945
|
-
and writing PNG files with all known public chunks. Use of the
|
4946
|
-
PNG_NO_READ[or WRITE]_ANCILLARY_CHUNKS directive produces a library
|
4947
|
-
that is incapable of reading or writing ancillary chunks. If you are
|
4948
|
-
not using the progressive reading capability, you can turn that off
|
4949
|
-
with PNG_NO_PROGRESSIVE_READ (don't confuse this with the INTERLACING
|
4950
|
-
capability, which you'll still have).
|
4951
|
-
|
4952
|
-
All the reading and writing specific code are in separate files, so the
|
4953
|
-
linker should only grab the files it needs. However, if you want to
|
4954
|
-
make sure, or if you are building a stand alone library, all the
|
4955
|
-
reading files start with "pngr" and all the writing files start with "pngw".
|
4956
|
-
The files that don't match either (like png.c, pngtrans.c, etc.)
|
4957
|
-
are used for both reading and writing, and always need to be included.
|
4958
|
-
The progressive reader is in pngpread.c
|
4959
|
-
|
4960
|
-
If you are creating or distributing a dynamically linked library (a .so
|
4961
|
-
or DLL file), you should not remove or disable any parts of the library,
|
4962
|
-
as this will cause applications linked with different versions of the
|
4963
|
-
library to fail if they call functions not available in your library.
|
4964
|
-
The size of the library itself should not be an issue, because only
|
4965
|
-
those sections that are actually used will be loaded into memory.
|
4966
|
-
|
4967
4900
|
.SS Requesting debug printout
|
4968
4901
|
|
4969
4902
|
The macro definition PNG_DEBUG can be used to request debugging
|
@@ -5001,17 +4934,6 @@ When PNG_DEBUG = 1, the macros are defined, but only png_debug statements
|
|
5001
4934
|
having level = 0 will be printed. There aren't any such statements in
|
5002
4935
|
this version of libpng, but if you insert some they will be printed.
|
5003
4936
|
|
5004
|
-
.SS Prepending a prefix to exported symbols
|
5005
|
-
|
5006
|
-
Starting with libpng-1.6.0, you can configure libpng (when using the
|
5007
|
-
"configure" script) to prefix all exported symbols by means of the
|
5008
|
-
configuration option "\-\-with\-libpng\-prefix=FOO_", where FOO_ can be any
|
5009
|
-
string beginning with a letter and containing only uppercase
|
5010
|
-
and lowercase letters, digits, and the underscore (i.e., a C language
|
5011
|
-
identifier). This creates a set of macros in pnglibconf.h, so this is
|
5012
|
-
transparent to applications; their function calls get transformed by
|
5013
|
-
the macros to use the modified names.
|
5014
|
-
|
5015
4937
|
.SH VII. MNG support
|
5016
4938
|
|
5017
4939
|
The MNG specification (available at http://www.libpng.org/pub/mng) allows
|
@@ -5338,8 +5260,6 @@ does not account for any palette index used by ancillary chunks such as the
|
|
5338
5260
|
bKGD chunk; you must check those separately to determine the maximum
|
5339
5261
|
palette index actually used.
|
5340
5262
|
|
5341
|
-
A. Changes that affect users of libpng
|
5342
|
-
|
5343
5263
|
There are no substantial API changes between the non-deprecated parts of
|
5344
5264
|
the 1.4.5 API and the 1.5.0 API; however, the ability to directly access
|
5345
5265
|
members of the main libpng control structures, png_struct and png_info,
|
@@ -5478,26 +5398,6 @@ limits are now
|
|
5478
5398
|
The png_set_option() function (and the "options" member of the png struct) was
|
5479
5399
|
added to libpng-1.5.15.
|
5480
5400
|
|
5481
|
-
B. Changes to the build and configuration of libpng
|
5482
|
-
|
5483
|
-
Details of internal changes to the library code can be found in the CHANGES
|
5484
|
-
file and in the GIT repository logs. These will be of no concern to the vast
|
5485
|
-
majority of library users or builders; however, the few who configure libpng
|
5486
|
-
to a non-default feature set may need to change how this is done.
|
5487
|
-
|
5488
|
-
There should be no need for library builders to alter build scripts if
|
5489
|
-
these use the distributed build support - configure or the makefiles -
|
5490
|
-
however, users of the makefiles may care to update their build scripts
|
5491
|
-
to build pnglibconf.h where the corresponding makefile does not do so.
|
5492
|
-
|
5493
|
-
Building libpng with a non-default configuration has changed completely.
|
5494
|
-
The old method using pngusr.h should still work correctly even though the
|
5495
|
-
way pngusr.h is used in the build has been changed; however, library
|
5496
|
-
builders will probably want to examine the changes to take advantage of
|
5497
|
-
new capabilities and to simplify their build system.
|
5498
|
-
|
5499
|
-
B.1 Specific changes to library configuration capabilities
|
5500
|
-
|
5501
5401
|
The library now supports a complete fixed point implementation and can
|
5502
5402
|
thus be used on systems that have no floating point support or very
|
5503
5403
|
limited or slow support. Previously gamma correction, an essential part
|
@@ -5508,27 +5408,7 @@ independent of the choice of fixed versus floating point APIs and all the
|
|
5508
5408
|
missing fixed point APIs have been implemented.
|
5509
5409
|
|
5510
5410
|
The exact mechanism used to control attributes of API functions has
|
5511
|
-
changed
|
5512
|
-
is used and operating system specific directives are defined in
|
5513
|
-
pnglibconf.h
|
5514
|
-
|
5515
|
-
As part of this the mechanism used to choose procedure call standards on
|
5516
|
-
those systems that allow a choice has been changed. At present this only
|
5517
|
-
affects certain Microsoft (DOS, Windows) and IBM (OS/2) operating systems
|
5518
|
-
running on Intel processors. As before, PNGAPI is defined where required
|
5519
|
-
to control the exported API functions; however, two new macros, PNGCBAPI
|
5520
|
-
and PNGCAPI, are used instead for callback functions (PNGCBAPI) and
|
5521
|
-
(PNGCAPI) for functions that must match a C library prototype (currently
|
5522
|
-
only png_longjmp_ptr, which must match the C longjmp function.) The new
|
5523
|
-
approach is documented in pngconf.h
|
5524
|
-
|
5525
|
-
Despite these changes, libpng 1.5.0 only supports the native C function
|
5526
|
-
calling standard on those platforms tested so far (__cdecl on Microsoft
|
5527
|
-
Windows). This is because the support requirements for alternative
|
5528
|
-
calling conventions seem to no longer exist. Developers who find it
|
5529
|
-
necessary to set PNG_API_RULE to 1 should advise the mailing list
|
5530
|
-
(png-mng-implement) of this and library builders who use Openwatcom and
|
5531
|
-
therefore set PNG_API_RULE to 2 should also contact the mailing list.
|
5411
|
+
changed, as described in the INSTALL file.
|
5532
5412
|
|
5533
5413
|
A new test program, pngvalid, is provided in addition to pngtest.
|
5534
5414
|
pngvalid validates the arithmetic accuracy of the gamma correction
|
@@ -5604,46 +5484,6 @@ even though the default is to use the macros - this allows applications
|
|
5604
5484
|
to choose at app buildtime whether or not to use macros (previously
|
5605
5485
|
impossible because the functions weren't in the default build.)
|
5606
5486
|
|
5607
|
-
B.2 Changes to the configuration mechanism
|
5608
|
-
|
5609
|
-
Prior to libpng-1.5.0 library builders who needed to configure libpng
|
5610
|
-
had either to modify the exported pngconf.h header file to add system
|
5611
|
-
specific configuration or had to write feature selection macros into
|
5612
|
-
pngusr.h and cause this to be included into pngconf.h by defining
|
5613
|
-
PNG_USER_CONFIG. The latter mechanism had the disadvantage that an
|
5614
|
-
application built without PNG_USER_CONFIG defined would see the
|
5615
|
-
unmodified, default, libpng API and thus would probably fail to link.
|
5616
|
-
|
5617
|
-
These mechanisms still work in the configure build and in any makefile
|
5618
|
-
build that builds pnglibconf.h, although the feature selection macros
|
5619
|
-
have changed somewhat as described above. In 1.5.0, however, pngusr.h is
|
5620
|
-
processed only once, when the exported header file pnglibconf.h is built.
|
5621
|
-
pngconf.h no longer includes pngusr.h, therefore pngusr.h is ignored after the
|
5622
|
-
build of pnglibconf.h and it is never included in an application build.
|
5623
|
-
|
5624
|
-
The rarely used alternative of adding a list of feature macros to the
|
5625
|
-
CPPFLAGS setting in the build also still works; however, the macros will be
|
5626
|
-
copied to pnglibconf.h and this may produce macro redefinition warnings
|
5627
|
-
when the individual C files are compiled.
|
5628
|
-
|
5629
|
-
All configuration now only works if pnglibconf.h is built from
|
5630
|
-
scripts/pnglibconf.dfa. This requires the program awk. Brian Kernighan
|
5631
|
-
(the original author of awk) maintains C source code of that awk and this
|
5632
|
-
and all known later implementations (often called by subtly different
|
5633
|
-
names - nawk and gawk for example) are adequate to build pnglibconf.h.
|
5634
|
-
The Sun Microsystems (now Oracle) program 'awk' is an earlier version
|
5635
|
-
and does not work; this may also apply to other systems that have a
|
5636
|
-
functioning awk called 'nawk'.
|
5637
|
-
|
5638
|
-
Configuration options are now documented in scripts/pnglibconf.dfa. This
|
5639
|
-
file also includes dependency information that ensures a configuration is
|
5640
|
-
consistent; that is, if a feature is switched off dependent features are
|
5641
|
-
also removed. As a recommended alternative to using feature macros in
|
5642
|
-
pngusr.h a system builder may also define equivalent options in pngusr.dfa
|
5643
|
-
(or, indeed, any file) and add that to the configuration by setting
|
5644
|
-
DFA_XTRA to the file name. The makefiles in contrib/pngminim illustrate
|
5645
|
-
how to do this, and a case where pngusr.h is still required.
|
5646
|
-
|
5647
5487
|
.SH XII. Changes to Libpng from version 1.5.x to 1.6.x
|
5648
5488
|
|
5649
5489
|
A "simplified API" has been added (see documentation in png.h and a simple
|
@@ -5702,11 +5542,26 @@ Error detection in some chunks has improved; in particular the iCCP chunk
|
|
5702
5542
|
reader now does pretty complete validation of the basic format. Some bad
|
5703
5543
|
profiles that were previously accepted are now accepted with a warning or
|
5704
5544
|
rejected, depending upon the png_set_benign_errors() setting, in particular the
|
5705
|
-
very old broken Microsoft/HP 3144-byte sRGB profile.
|
5706
|
-
|
5707
|
-
|
5708
|
-
|
5709
|
-
|
5545
|
+
very old broken Microsoft/HP 3144-byte sRGB profile. Starting with
|
5546
|
+
libpng-1.6.11, recognizing and checking sRGB profiles can be avoided by
|
5547
|
+
means of
|
5548
|
+
|
5549
|
+
#if defined(PNG_SKIP_sRGB_CHECK_PROFILE) && \
|
5550
|
+
defined(PNG_SET_OPTION_SUPPORTED)
|
5551
|
+
png_set_option(png_ptr, PNG_SKIP_sRGB_CHECK_PROFILE,
|
5552
|
+
PNG_OPTION_ON);
|
5553
|
+
#endif
|
5554
|
+
|
5555
|
+
It's not a good idea to do this if you are using the "simplified API",
|
5556
|
+
which needs to be able to recognize an sRGB profile conveyed via the iCCP
|
5557
|
+
chunk.
|
5558
|
+
|
5559
|
+
The PNG spec requirement that only grayscale profiles may appear in images
|
5560
|
+
with color type 0 or 4 and that even if the image only contains gray pixels,
|
5561
|
+
only RGB profiles may appear in images with color type 2, 3, or 6, is now
|
5562
|
+
enforced. The sRGB chunk is allowed to appear in images with any color type
|
5563
|
+
and is interpreted by libpng to convey a one-tracer-curve gray profile or a
|
5564
|
+
three-tracer-curve RGB profile as appropriate.
|
5710
5565
|
|
5711
5566
|
Prior to libpng-1.6.0 a warning would be issued if the iTXt chunk contained
|
5712
5567
|
an empty language field or an empty translated keyword. Both of these
|
@@ -5740,16 +5595,16 @@ Libpng-1.6.0 through 1.6.2 used the CMF bytes at the beginning of the IDAT
|
|
5740
5595
|
stream to set the size of the sliding window for reading instead of using the
|
5741
5596
|
default 32-kbyte sliding window size. It was discovered that there are
|
5742
5597
|
hundreds of PNG files in the wild that have incorrect CMF bytes that caused
|
5743
|
-
|
5744
|
-
later calculate their own safe CMF from the image dimensions,
|
5745
|
-
to revert to the libpng-1.5.x behavior (ignoring the CMF bytes
|
5746
|
-
32-kbyte sliding window), by using
|
5598
|
+
zlib to issue the "invalid distance too far back" error and reject the file.
|
5599
|
+
Libpng-1.6.3 and later calculate their own safe CMF from the image dimensions,
|
5600
|
+
provide a way to revert to the libpng-1.5.x behavior (ignoring the CMF bytes
|
5601
|
+
and using a 32-kbyte sliding window), by using
|
5747
5602
|
|
5748
5603
|
png_set_option(png_ptr, PNG_MAXIMUM_INFLATE_WINDOW,
|
5749
5604
|
PNG_OPTION_ON);
|
5750
5605
|
|
5751
|
-
and provide a tool (contrib/tools/pngfix) for
|
5752
|
-
correctly.
|
5606
|
+
and provide a tool (contrib/tools/pngfix) for rewriting a PNG file while
|
5607
|
+
optimizing the CMF bytes in its IDAT chunk correctly.
|
5753
5608
|
|
5754
5609
|
Libpng-1.6.0 and libpng-1.6.1 wrote uncompressed iTXt chunks with the wrong
|
5755
5610
|
length, which resulted in PNG files that cannot be read beyond the bad iTXt
|
@@ -5791,7 +5646,8 @@ mailing list, or directly to glennrp.
|
|
5791
5646
|
|
5792
5647
|
.SH XV. Coding style
|
5793
5648
|
|
5794
|
-
Our coding style is similar to the "Allman" style
|
5649
|
+
Our coding style is similar to the "Allman" style
|
5650
|
+
(See http://en.wikipedia.org/wiki/Indent_style#Allman_style), with curly
|
5795
5651
|
braces on separate lines:
|
5796
5652
|
|
5797
5653
|
if (condition)
|
@@ -5871,12 +5727,15 @@ We mark all non-exported functions with "/* PRIVATE */"":
|
|
5871
5727
|
}
|
5872
5728
|
|
5873
5729
|
The prototypes for non-exported functions (except for those in
|
5874
|
-
pngtest) appear in
|
5875
|
-
pngpriv.h
|
5876
|
-
above the comment that says
|
5730
|
+
pngtest) appear in pngpriv.h above the comment that says
|
5877
5731
|
|
5878
5732
|
/* Maintainer: Put new private prototypes here ^ */
|
5879
5733
|
|
5734
|
+
To avoid polluting the global namespace, the names of all exported
|
5735
|
+
functions and variables begin with "png_", and all publicly visible C
|
5736
|
+
preprocessor macros begin with "PNG". We request that applications that
|
5737
|
+
use libpng *not* begin any of their own symbols with either of these strings.
|
5738
|
+
|
5880
5739
|
We put a space after the "sizeof" operator and we omit the
|
5881
5740
|
optional parentheses around its argument when the argument
|
5882
5741
|
is an expression, not a type name, and we always enclose the
|
@@ -5888,10 +5747,8 @@ sizeof operator, with its argument, in parentheses:
|
|
5888
5747
|
Prior to libpng-1.6.0 we used a "png_sizeof()" macro, formatted as
|
5889
5748
|
though it were a function.
|
5890
5749
|
|
5891
|
-
|
5892
|
-
|
5893
|
-
preprocessor macros begin with "PNG". We request that applications that
|
5894
|
-
use libpng *not* begin any of their own symbols with either of these strings.
|
5750
|
+
Control keywords if, for, while, and switch are always followed by a space
|
5751
|
+
to distinguish them from function calls, which have no trailing space.
|
5895
5752
|
|
5896
5753
|
We put a space after each comma and after each semicolon
|
5897
5754
|
in "for" statements, and we put spaces before and after each
|
@@ -5913,6 +5770,9 @@ with an even number of lower-case hex digits (e.g., 0x00, 0xff, 0x0100).
|
|
5913
5770
|
We prefer to use underscores in variable names rather than camelCase, except
|
5914
5771
|
for a few type names that we inherit from zlib.h.
|
5915
5772
|
|
5773
|
+
We prefer "if (something != 0)" and "if (something == 0)"
|
5774
|
+
over "if (something)" and if "(!something)", respectively.
|
5775
|
+
|
5916
5776
|
We do not use the TAB character for indentation in the C sources.
|
5917
5777
|
|
5918
5778
|
Lines do not exceed 80 characters.
|
@@ -5921,13 +5781,13 @@ Other rules can be inferred by inspecting the libpng source.
|
|
5921
5781
|
|
5922
5782
|
.SH XVI. Y2K Compliance in libpng
|
5923
5783
|
|
5924
|
-
|
5784
|
+
October 23, 2014
|
5925
5785
|
|
5926
5786
|
Since the PNG Development group is an ad-hoc body, we can't make
|
5927
5787
|
an official declaration.
|
5928
5788
|
|
5929
5789
|
This is your unofficial assurance that libpng from version 0.71 and
|
5930
|
-
upward through 1.6.
|
5790
|
+
upward through 1.6.14 are Y2K compliant. It is my belief that earlier
|
5931
5791
|
versions were also Y2K compliant.
|
5932
5792
|
|
5933
5793
|
Libpng only has two year fields. One is a 2-byte unsigned integer
|
@@ -5943,8 +5803,9 @@ in libpng-1.6.x and will be removed from libpng-1.7.0.
|
|
5943
5803
|
|
5944
5804
|
There are seven time-related functions:
|
5945
5805
|
|
5946
|
-
|
5947
|
-
(formerly png_convert_to_rfc_1152() in error
|
5806
|
+
png_convert_to_rfc_1123_buffer() in png.c
|
5807
|
+
(formerly png_convert_to_rfc_1152() in error, and
|
5808
|
+
also formerly png_convert_to_rfc_1123())
|
5948
5809
|
png_convert_from_struct_tm() in pngwrite.c, called
|
5949
5810
|
in pngwrite.c
|
5950
5811
|
png_convert_from_time_t() in pngwrite.c
|
@@ -6159,8 +6020,19 @@ the first widely used release:
|
|
6159
6020
|
1.6.9rc01-02 16 10609 16.so.16.9[.0]
|
6160
6021
|
1.6.9 16 10609 16.so.16.9[.0]
|
6161
6022
|
1.6.10beta01-03 16 10610 16.so.16.10[.0]
|
6162
|
-
1.6.10rc01-
|
6023
|
+
1.6.10rc01-03 16 10610 16.so.16.10[.0]
|
6163
6024
|
1.6.10 16 10610 16.so.16.10[.0]
|
6025
|
+
1.6.11beta01-06 16 10611 16.so.16.11[.0]
|
6026
|
+
1.6.11rc01-02 16 10611 16.so.16.11[.0]
|
6027
|
+
1.6.11 16 10611 16.so.16.11[.0]
|
6028
|
+
1.6.12rc01 16 10612 16.so.16.12[.0]
|
6029
|
+
1.6.12 16 10612 16.so.16.12[.0]
|
6030
|
+
1.6.13beta01-04 16 10613 16.so.16.13[.0]
|
6031
|
+
1.6.13rc01-02 16 10613 16.so.16.13[.0]
|
6032
|
+
1.6.13 16 10613 16.so.16.13[.0]
|
6033
|
+
1.6.14beta01-07 16 10614 16.so.16.14[.0]
|
6034
|
+
1.6.14rc01-02 16 10614 16.so.16.14[.0]
|
6035
|
+
1.6.14 16 10614 16.so.16.14[.0]
|
6164
6036
|
|
6165
6037
|
Henceforth the source version will match the shared-library minor
|
6166
6038
|
and patch numbers; the shared-library major version number will be
|
@@ -6217,7 +6089,7 @@ possible without all of you.
|
|
6217
6089
|
|
6218
6090
|
Thanks to Frank J. T. Wojcik for helping with the documentation.
|
6219
6091
|
|
6220
|
-
Libpng version 1.6.
|
6092
|
+
Libpng version 1.6.14 - October 23, 2014:
|
6221
6093
|
Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
|
6222
6094
|
Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net).
|
6223
6095
|
|
@@ -6240,8 +6112,8 @@ this sentence.
|
|
6240
6112
|
|
6241
6113
|
This code is released under the libpng license.
|
6242
6114
|
|
6243
|
-
libpng versions 1.2.6, August 15, 2004, through 1.6.
|
6244
|
-
Copyright (c) 2004,2006-
|
6115
|
+
libpng versions 1.2.6, August 15, 2004, through 1.6.14, October 23, 2014, are
|
6116
|
+
Copyright (c) 2004,2006-2014 Glenn Randers-Pehrson, and are
|
6245
6117
|
distributed according to the same disclaimer and license as libpng-1.2.5
|
6246
6118
|
with the following individual added to the list of Contributing Authors
|
6247
6119
|
|
@@ -6339,7 +6211,7 @@ certification mark of the Open Source Initiative.
|
|
6339
6211
|
|
6340
6212
|
Glenn Randers-Pehrson
|
6341
6213
|
glennrp at users.sourceforge.net
|
6342
|
-
|
6214
|
+
October 23, 2014
|
6343
6215
|
|
6344
6216
|
.\" end of man page
|
6345
6217
|
|