Lines Matching +full:days +full:- +full:before +full:- +full:close
4 Copyright (c) 2005-2020 Lode Vandevenne
6 This software is provided 'as-is', without any express or implied
40 -DLODEPNG_NO_COMPILE_ZLIB for gcc.
122 Note: for 16-bit per channel colors, uses big endian format like PNG does.
135 /*Same as lodepng_decode_memory, but always decodes to 32-bit RGBA raw image*/
139 /*Same as lodepng_decode_memory, but always decodes to 24-bit RGB raw image*/
152 /*Same as lodepng_decode_file, but always decodes to 32-bit RGBA raw image.*/
156 /*Same as lodepng_decode_file, but always decodes to 24-bit RGB raw image.*/
168 Note: for 16-bit per channel colors, needs big endian format like PNG does.
184 /*Same as lodepng_encode_memory, but always encodes from 32-bit RGBA raw image.*/
188 /*Same as lodepng_encode_memory, but always encodes from 24-bit RGB raw image.*/
202 /*Same as lodepng_encode_file, but always encodes from 32-bit RGBA raw image.*/
206 /*Same as lodepng_encode_file, but always encodes from 24-bit RGB raw image.*/
217 is the format to output the pixels to. Default is RGBA 8-bit per channel.*/
246 Converts 32-bit RGBA raw pixel data into a PNG file on disk.
283 Should return 0 if success, any non-0 if error (numeric value not exposed).*/
289 Should return 0 if success, any non-0 if error (numeric value not exposed).*/
366 …s color uses the same bit depth as the bitdepth value in this struct, which can be 1-bit to 16-bit.
408 Check if the given color info indicates the possibility of having non-opaque pixels in the PNG imag…
411 In detail, it returns true only if it's a color type with alpha, or has a palette with non-opaque v…
421 unsigned year; /*2 bytes used (0-65535)*/
422 unsigned month; /*1-12*/
423 unsigned day; /*1-31*/
424 unsigned hour; /*0-23*/
425 unsigned minute; /*0-59*/
426 unsigned second; /*0-60 (to allow for leap seconds)*/
455 When encoding, avoid setting this to an expensive color, such as a non-gray value
468 Non-international text chunks (tEXt and zTXt)
485 Standard text chunk keywords and strings are encoded using Latin-1.
493 Similar to the non-international text chunks, but with additional strings
495 keys: Latin-1, langtags: ASCII, transkeys and strings: UTF-8.
496 keys must be 1-79 characters (plus the additional null terminator), the other
502 char** itext_transkeys; /*keyword translated to the international language - UTF-8 string*/
503 char** itext_strings; /*the actual international text - UTF-8 string*/
559 … encoding, the ICC profile is required by the PNG specification to be an "RGB" profile for non-gray
563 …error if the pixel data has non-gray pixels for a GRAY profile, or a silent less-optimal compressi…
570 char* iccp_name; /* Null terminated string with profile name, 1-79 bytes */
594 or any non-standard PNG chunk.
631 For 16-bit per channel colors, uses big endian format like PNG does.
694 Brute-force-search PNG filters by compressing each filter for each scanline.
708 …unsigned short key_r; /*key values, always as 16-bit, in 8-bit case the byte is duplicated, e.g. 6…
714 …unsigned bits; /*bits per channel (not for palette). 1,2 or 4 for grayscale only. 16 if 16-bit per…
809 chunk_pointer - start_of_file as pos).
811 Ignores unsupported, unknown, non-metadata or IHDR chunks (without error).
814 there is a PLTE chunk, that one must be inspected before tRNS or bKGD.
835 -4 bytes length: length of the data of the chunk in bytes (chunk itself is 12 bytes longer)
836 -4 bytes chunk type (ASCII a-z,A-Z only, see below)
837 -length bytes of data (may be 0 bytes if length was 0)
838 -4 bytes of CRC, computed on chunk name + data
844 -First byte: uppercase = critical, lowercase = ancillary
845 -Second byte: uppercase = public, lowercase = private
846 -Third byte: must be uppercase
847 -Fourth byte: uppercase = unsafe to copy, lowercase = safe to copy
857 /*puts the 4-byte type in null terminated string*/
891 In a non-corrupt PNG file, the last chunk should have name "IEND".
909 and data separately. The type is a 4-letter string.
959 Find length-limited Huffman code for given frequencies. This function is in the
1044 /* Zlib-decompress an unsigned char buffer */
1048 /* Zlib-decompress an std::vector */
1054 /* Zlib-compress an unsigned char buffer */
1058 /* Zlib-compress an std::vector */
1068 [.] test if there are no memory leaks or security exploits - done a lot but needs to be checked oft…
1069 [.] check compatibility with various compilers - done but needs to be redone for every newer versi…
1070 [X] converting color to 16-bit per channel types
1073 [ ] make sure encoder generates no chunks with size > (2^31)-1
1094 ---------------------
1097 --------------------
1110 6.4. A note about 16-bits per channel and endianness
1123 --------
1129 Specification (Second Edition) - W3C Recommendation 10 November 2003.
1134 http://www.w3.org/TR/2003/REC-PNG-20031110
1136 http://www.gzip.org/zlib/rfc-zlib.html
1138 http://www.gzip.org/zlib/rfc-deflate.html
1147 -lodepng.h: the header file for both C and C++
1148 -lodepng.c(pp): give it the name lodepng.c or lodepng.cpp (or .cc) depending on your usage
1165 over network (it requires all the image data to be available before decoding can
1166 begin), life-critical systems, ...
1169 -----------------------
1173 *) decoding of PNGs with any color type, bit depth and interlace mode, to a 24- or 32-bit color raw…
1175 *) encoding of PNGs, from any raw image to 24- or 32-bit color, or the same color type as the raw i…
1203 ---------------------------
1207 *) some features needed to make a conformant PNG-Editor might be still missing.
1216 --------------------
1226 the additional C++ code is in "#ifdef __cplusplus" blocks that make C-compilers
1237 -----------
1243 as the C-style structs when working with C++. The following conventions are used
1244 for all C-style structs:
1246 -if a struct has a corresponding init function, always call the init function when making a new one
1247 -if a struct has a corresponding cleanup function, call it before the struct disappears to avoid me…
1248 -if a struct has a corresponding copy function, use the copy function instead of "=".
1253 -----------
1270 --------------------
1281 -------------------------
1289 By default, 32-bit color is used for the result.
1292 ------------------------------
1304 -----------
1325 --------------------
1328 you fill in the values you want the PNG to have before encoding. By default it's
1333 it tries as close as possible. Some things are ignored by the encoder. The
1343 -------------------------
1349 By default, 32-bit color is assumed, meaning your input has to be in RGBA
1353 ------------------------------
1355 The following settings are supported (some are in sub-structs):
1364 *) windowsize: the window size used by the LZ77 encoder (1 - 32768). Has value
1377 --------------------
1397 By default, when decoding, you get the raw image in 32-bit RGBA or 24-bit RGB
1400 the input image to be 32-bit RGBA or 24-bit RGB. So, unless you want to control
1404 --------------------
1406 A PNG image can have many color types, ranging from 1-bit color to 64-bit color,
1424 ----------------------
1450 -the decoder converts from PNG to raw image
1451 -the encoder converts from raw image to PNG
1452 -the colortype and bitdepth in LodePNGColorMode info_raw, are those of the raw image
1453 -the colortype and bitdepth in the color field of LodePNGInfo info_png, are those of the PNG
1454 -when encoding, the color type in LodePNGInfo is ignored if auto_convert
1456 -when decoding, the color type in LodePNGInfo is set by the decoder to that of the original
1458 -if the color type of the LodePNGColorMode and PNG image aren't the same, a conversion
1461 -even though some conversions aren't supported, LodePNG supports loading PNGs from any
1463 the raw image correctly before encoding.
1464 -both encoder and decoder use the same color converter.
1471 -color to grayscale when non-gray pixels are present: no error is thrown, but
1474 no error is given is to allow converting from three-channel grayscale images to
1475 one-channel even if there are numerical imprecisions.
1476 -anything to palette when the palette does not have an exact match for a from-color
1480 -anything to 8-bit RGB, 8-bit RGBA, 16-bit RGB, 16-bit RGBA
1481 -any gray or gray+alpha, to gray or gray+alpha
1482 -anything to a palette, as long as the palette has the requested colors in it
1483 -removing alpha channel
1484 -higher to smaller bitdepth, and vice versa
1487 -In the encoder, you can make it save a PNG with any color type by giving the
1490 -In the decoder, you can make it store the pixel data in the same color type
1495 -----------------
1497 In the PNG file format, if a less than 8-bit per pixel color type is used and the scanlines
1501 will NOT have these padding bits, e.g. in the case of a 1-bit image with a width
1505 6.4. A note about 16-bits per channel and endianness
1506 ----------------------------------------------------
1508 LodePNG uses unsigned char arrays for 16-bit per channel colors too, just like
1509 for any other color format. The 16-bit values are stored in big endian (most
1515 LodePNG on purpose, there are myriads of formats, including endianness of 16-bit
1521 always needed, many applications and libraries support big endian 16-bit colors
1527 ---------------
1530 OK, or a non-zero code if there was an error.
1541 only 0 or non-0 matter.
1545 -------------------------
1560 -----------------------------
1614 function creates a new chunk with the given parameters and appends it. Type is the 4-letter
1618 -----------------------
1622 the ones that come before the PLTE chunk, the ones that come between the PLTE
1628 info_png.unknown_chunks_data[0] is the chunks before PLTE
1629 info_png.unknown_chunks_data[1] is the chunks after PLTE, before IDAT
1650 -------------------
1671 warnings with compiler options "-Wall -Wextra -pedantic -ansi", with gcc and g++
1672 version 4.7.1 on Linux, 32-bit and 64-bit.
1676 Fully supported and warning-free.
1685 LodePNG should be warning-free with warning level W4. Two warnings were disabled
1687 where it wants to use a non-standard function fopen_s instead of the standard C
1711 ------------
1717 -------------------------
1737 -----------------------
1758 ----------------------------
1802 -----------
1819 if gray ICC profile) and non-ICC LodePNGColorProfile renamed to
1821 *) 30 dec 2018: code style changes only: removed newlines before opening braces.
1836 *) 18 apr 2015: Boundary PM instead of just package-merge for faster encoding.
1874 *) 17 apr 2011: code cleanup. Bugfixes. Convert low to 16-bit per sample colors.
1898 *) 13 jan 2008: Added ability to encode Adam7-interlaced images. Improved
1901 C++ wrapper around this provides an interface almost identical to before.
1908 *) 08 jun 2007: fixed bug with 2- and 4-bit color, and small interlaced images
1925 *) 27 jan 2007: Made the Adler-32 test faster so that a timewaste is gone.
1927 greyscale type to 8-bit greyscale with or without alpha.
1930 *) 07 jan 2007: Some cleanup & fixes, and a few changes over the last days:
1940 Fixed a bug of the decoder with 16-bit per color.
1969 -----------------------
1980 Copyright (c) 2005-2020 Lode Vandevenne