Name: desktop/pdf-viewer/gsx Summary: GPL Ghostscript desktop utilities Publisher: solaris Version: 10.4.0 Build Release: 11.4 Branch: 11.4.81.0.0.193.0 Packaging Date: Fri Mar 21 18:45:35 2025 Size: 1.77 MB Compressed Size: 320.12 kB FMRI: pkg://solaris/desktop/pdf-viewer/gsx@10.4.0,11.4-11.4.81.0.0.193.0:20250321T184535Z License: ## Files: LICENSE The files in the base, psi, lib, toolbin, examples, doc, man and iccprofiles directories (folders), and pcl, xps and gpdl directories (folders), if included, and any subdirectories (sub-folders) thereof are part of GPL Ghostscript. The files in the Resource directory and any subdirectories thereof are also part of GPL Ghostscript, with the explicit exception of the files in the CMap subdirectory (except "Identity-UTF16-H", which is part of GPL Ghostscript). The CMap files are copyright Adobe Systems Incorporated and covered by a separate, Affero GPL compatible license. Additionally, the font files (in Resource/Font) are distributed under the AGPL with the following exemption: As a special exception, permission is granted to include these font programs in a Postscript or PDF file that consists of a document that contains text to be displayed or printed using this font, regardless of the conditions or license applying to the document itself. The files under the jpegxr directory and any subdirectories thereof are distributed under a no cost, open source license granted by the ITU/ISO/IEC but it is not Affero GPL compatible - see jpegxr/COPYRIGHT.txt for details. GPL Ghostscript is free software; you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. GPL Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program so you can know your rights and responsibilities. It should be in a file named doc/COPYING. If not, write to the Free Software Foundation, Inc., 59 Temple Place Suite 330, Boston, MA 02111-1307, USA. ## Files: doc/COPYING extract/COPYING jbig2dec/COPYING GNU AFFERO GENERAL PUBLIC LICENSE Version 3, 19 November 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU Affero General Public License is a free, copyleft license for software and other kinds of works, specifically designed to ensure cooperation with the community in the case of network server software. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, our General Public Licenses are intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. Developers that use our General Public Licenses protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License which gives you legal permission to copy, distribute and/or modify the software. A secondary benefit of defending all users' freedom is that improvements made in alternate versions of the program, if they receive widespread use, become available for other developers to incorporate. Many developers of free software are heartened and encouraged by the resulting cooperation. However, in the case of software used on network servers, this result may fail to come about. The GNU General Public License permits making a modified version and letting the public access it on a server without ever releasing its source code to the public. The GNU Affero General Public License is designed specifically to ensure that, in such cases, the modified source code becomes available to the community. It requires the operator of a network server to provide the source code of the modified version running there to the users of that server. Therefore, public use of a modified version, on a publicly accessible server, gives the public access to the source code of the modified version. An older license, called the Affero General Public License and published by Affero, was designed to accomplish similar goals. This is a different license, not a version of the Affero GPL, but Affero has released a new version of the Affero GPL which permits relicensing under this license. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU Affero General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Remote Network Interaction; Use with the GNU General Public License. Notwithstanding any other provision of this License, if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network (if your version supports such interaction) an opportunity to receive the Corresponding Source of your version by providing access to the Corresponding Source from a network server at no charge, through some standard or customary means of facilitating copying of software. This Corresponding Source shall include the Corresponding Source for any work covered by version 3 of the GNU General Public License that is incorporated pursuant to the following paragraph. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the work with which it is combined will remain governed by version 3 of the GNU General Public License. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU Affero General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU Affero General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU Affero General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU Affero General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . Also add information on how to contact you by electronic and paper mail. If your software can interact with users remotely through a computer network, you should also make sure that it provides a way for users to get its source. For example, if your program is a web application, its interface could display a "Source" link that leads users to an archive of the code. There are many ways you could offer source, and different solutions will be better for different programs; see section 13 for the specific requirements. You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU AGPL, see . ## Files: freetype/src/bdf/README FreeType font driver for BDF fonts Francesco Zappa Nardelli Introduction ************ BDF (Bitmap Distribution Format) is a bitmap font format defined by Adobe, which is intended to be easily understood by both humans and computers. This code implements a BDF driver for the FreeType library, following the Adobe Specification V 2.2. The specification of the BDF font format is available from Adobe's web site: https://adobe-type-tools.github.io/font-tech-notes/pdfs/5005.BDF_Spec.pdf Many good bitmap fonts in bdf format come with XFree86 (www.XFree86.org). They do not define vertical metrics, because the X Consortium BDF specification has removed them. Encodings ********* [This section is out of date, retained for historical reasons. BDF properties can be retrieved with `FT_Get_BDF_Property`, character set ID values with `FT_Get_BDF_Charset_ID`.] The variety of encodings that accompanies bdf fonts appears to encompass the small set defined in freetype.h. On the other hand, two properties that specify encoding and registry are usually defined in bdf fonts. I decided to make these two properties directly accessible, leaving to the client application the work of interpreting them. For instance: #include FT_INTERNAL_BDF_TYPES_H FT_Face face; BDF_Public_Face bdfface; FT_New_Face( library, ..., &face ); bdfface = (BDF_Public_Face)face; if ( ( bdfface->charset_registry == "ISO10646" ) && ( bdfface->charset_encoding == "1" ) ) [..] Thus the driver always exports `ft_encoding_none' as face->charmap.encoding. FT_Get_Char_Index's behavior is unmodified, that is, it converts the ULong value given as argument into the corresponding glyph number. If the two properties are not available, Adobe Standard Encoding should be assumed. Anti-Aliased Bitmaps ******************** The driver supports an extension to the BDF format as used in Mark Leisher's xmbdfed bitmap font editor. Microsoft's SBIT tool expects bitmap fonts in that format for adding anti-aliased them to TrueType fonts. It introduces a fourth field to the `SIZE' keyword which gives the bpp value (bits per pixel) of the glyph data in the font. Possible values are 1 (the default), 2 (four gray levels), 4 (16 gray levels), and 8 (256 gray levels). The driver returns either a bitmap with 1 bit per pixel or a pixmap with 8bits per pixel (using 4, 16, and 256 gray levels, respectively). Known problems ************** - A font is entirely loaded into memory. Obviously, this is not the Right Thing(TM). If you have big fonts I suggest you convert them into PCF format (using the bdftopcf utility): the PCF font drive of FreeType can perform incremental glyph loading. When I have some time, I will implement on-demand glyph parsing. - Except for encodings properties, client applications have no visibility of the PCF_Face object. This means that applications cannot directly access font tables and must trust FreeType. - Currently, glyph names are ignored. I plan to give full visibility of the BDF_Face object in an upcoming revision of the driver, thus implementing also glyph names. - As I have never seen a BDF font that defines vertical metrics, vertical metrics are (parsed and) discarded. If you own a BDF font that defines vertical metrics, please let me know (I will implement them in 5-10 minutes). License ******* Copyright (C) 2001-2002 by Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. *** Portions of the driver (that is, bdflib.c and bdf.h): Copyright 2000 Computing Research Labs, New Mexico State University Copyright 2001-2002, 2011 Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE COMPUTING RESEARCH LAB OR NEW MEXICO STATE UNIVERSITY BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Credits ******* This driver is based on excellent Mark Leisher's bdf library. If you find something good in this driver you should probably thank him, not me. ## Files: freetype/src/pcf/README FreeType font driver for PCF fonts Francesco Zappa Nardelli Introduction ************ PCF (Portable Compiled Format) is a binary bitmap font format, largely used in X world. This code implements a PCF driver for the FreeType library. Glyph images are loaded into memory only on demand, thus leading to a small memory footprint. Information on the PCF font format can only be worked out from `pcfread.c', and `pcfwrite.c', to be found, for instance, in the XFree86 (www.xfree86.org) source tree (xc/lib/font/bitmap/). Many good bitmap fonts in bdf format come with XFree86: they can be compiled into the pcf format using the `bdftopcf' utility. Supported hardware ****************** The driver has been tested on linux/x86 and sunos5.5/sparc. In both cases the compiler was gcc. When back in Paris, I will test it also on linux/alpha. Encodings ********* Use `FT_Get_BDF_Charset_ID' to access the encoding and registry. The driver always exports `ft_encoding_none' as face->charmap.encoding. FT_Get_Char_Index() behavior is unmodified, that is, it converts the ULong value given as argument into the corresponding glyph number. Known problems ************** - dealing explicitly with encodings breaks the uniformity of FreeType 2 API. - except for encodings properties, client applications have no visibility of the PCF_Face object. This means that applications cannot directly access font tables and are obliged to trust FreeType. - currently, glyph names and ink_metrics are ignored. I plan to give full visibility of the PCF_Face object in the next release of the driver, thus implementing also glyph names and ink_metrics. - height is defined as (ascent - descent). Is this correct? - if unable to read size information from the font, PCF_Init_Face sets available_size->width and available_size->height to 12. - too many english grammar errors in the readme file :-( License ******* Copyright (C) 2000 by Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Credits ******* Keith Packard wrote the pcf driver found in XFree86. His work is at the same time the specification and the sample implementation of the PCF format. Undoubtedly, this driver is inspired from his work. ## Files: lcms2mt/COPYING Little CMS Copyright (c) 1998-2020 Marti Maria Saguer Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: libpng/contrib/pngminus/LICENSE.txt pnm2png / png2pnm --- conversion from PBM/PGM/PPM-file to PNG-file copyright (C) 1999-2019 by Willem van Schaik Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. The software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall the authors or copyight holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software. ## Files: openjpeg/LICENSE /* * The copyright in this software is being made available under the 2-clauses * BSD License, included below. This software may be subject to other third * party and contributor rights, including patent rights, and no such rights * are granted under this license. * * Copyright (c) 2001-2003, David Janssens * Copyright (c) 2002-2003, Yannick Verschueren * Copyright (c) 2002-2014, Professor Benoit Macq * Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium * Copyright (c) 2003-2009, Francois-Olivier Devaux * Copyright (c) 2003-2014, Antonin Descampe * Copyright (c) 2005, Herve Drolon, FreeImage Team * Copyright (c) 2011-2012, Centre National d'Etudes Spatiales (CNES), France * Copyright (c) 2012, CS Systemes d'Information, France * * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS' * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ ## Files: contrib/chp2200/COPYING GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ## Files: contrib/lxm3200-tweaked/LICENSE GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave, Cambridge, MA 02139, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS Appendix: How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ## Files: contrib/pcl3/README ******************************************************************************* File: @(#)$Id: README,v 2.12 2001/08/19 09:03:27 Martin Rel $ Contents: README file for the pcl3 distribution Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 1997, 1998, 1999, 2000, 2001 by Martin Lottermoser * * All rights reserved * * * ******************************************************************************* Table of Contents ================= - What is pcl3? - Conditions of use - Status of this release - Files needed - How to compile ghostscript with pcl3 What is pcl3? ============= pcl3, formerly called hpdj, is a ghostscript device driver for printers understanding Hewlett-Packard's Printer Command Language, Level 3+ (PCL 3+). Some printer models (currently exclusively HP DeskJets) are explicitly supported, but there is also generic support for other PCL-3+ printers. So far I have not heard of any PCL-3 printer for which the driver cannot be used at all and it even works for some printers which claim to be PCL-3-conforming but aren't. For a more positive statement, i.e., a list of printer models for which pcl3 is currently known to work and how, see the file doc/reports.txt. Conditions of use ================= pcl3 is free software and can be used under the terms of the GNU Lesser General Public License (LGPL), Version 2.1 (February 1999). You can find a copy of the LGPL in the pcl3 distribution, in several software packages distributed by the Free Software Foundation, and at http://www.gnu.org/copyleft/lesser.html. This implies in particular that you are using pcl3 AT YOUR OWN RISK! Status of this release ====================== This is version 3.3 of pcl3, released 2001-08-19. This is an ordinary (non-beta) release. Read the manual page to learn about the supported functionality and restrictions. Files needed ============ First, you need a ghostscript distribution. This version of pcl3 has been successfully integrated with the following ghostscript distributions: - AFPL ghostscript 7.0 - GNU ghostscript 6.51 Other ghostscript versions than those mentioned here are very likely to work, too. To obtain a ghostscript distribution, visit http://www.cs.wisc.edu/~ghost. You will also need some third-party archives in addition. See the URL just mentioned or check Make.htm in the ghostscript distribution you have obtained. Second, you need a font distribution containing at least a basic set of PostScript fonts. Such a set is distributed with ghostscript as an "std" and an "other" archive. Because font files are PostScript files, they are normally not restricted to a particular version of ghostscript although the archives have a ghostscript version number in their file names. Some of the possibilities are: ghostscript-fonts-std-6.0.tar.gz ghostscript-fonts-other-6.0.tar.gz gnu-gs-fonts-std-6.0.tar.gz gnu-gs-fonts-std-5.50.tar.gz gnu-gs-fonts-other-6.0.tar.gz gnu-gs-fonts-other-5.50.tar.gz Unless you already have such a set on your system, fetch at least an "std" archive and choose the one with the highest version number you can readily lay your hands on. Different file names do not necessarily mean different contents. A side remark: The "StandardSymL" font dated 1998-03-26 (first present in a 5.10 font archive) contains the Euro glyph. However, it has the wrong PostScript name ("euro" instead of "Euro") and the wrong default encoding (decimal 240 instead of octal 240). This is corrected in the version dated 1999-10-21. Ghostscript's "SymbolEncoding" encoding vector had the same bugs in gs 5.50 and this was fixed in gs 6.0. Third, you need the pcl3 distribution: pcl3-.tar.gz But if you are reading this file, you should already have it. If not, you can obtain the current distribution through the following URL: http://home.t-online.de/home/Martin.Lottermoser/pcl3.html I am distributing pcl3 only in the form of gzipped tar archives. If you wish to compile pcl3 on a non-UNIX platform, you need gzip, tar (on a Microsoft Windows system, you can use the Cygnus port of the GNU tools, available from http://sources.redhat.com/cygwin), and a command to convert text files from LF-terminated lines to whatever the line termination conventions are on your system. How to compile ghostscript with pcl3 ==================================== You need an ISO-C-conforming compiler and library in order to compile pcl3. The following description is heavily biased towards UNIX systems and in particular Linux. 1. Unpack the core distribution This is the file ghostscript-N.NN.tar or gnu-gs-N.NN.tar. Unpacking it will create a subdirectory "gsN.NN" in the current directory. In order to clearly identify directories I'm going to use the following expressions: - "gs directory": the directory gsN.NN you have just created - "documentation directory": In gs 5.50 this is identical to the gs directory, in newer versions it is the subdirectory "doc" in the gs directory. - "source directory": In gs 5.50 this is identical to the gs directory, in newer versions it is the subdirectory "src" in the gs directory. 2. Read Make.htm in the documentation directory on how to compile ghostscript. In particular, you should learn - which other files you need to unpack and how, and - what the platform-specific make file for your platform is. 3. Unpack the other files needed (except the font files) as directed by Make.htm. 4. Unpack pcl3, preferably in the gs directory. The file pcl3-.tar unpacks into a subdirectory pcl3- with only three files: README-cover pcl3.tar the distribution proper pcl3.tar.sig an OpenPGP signature for pcl3.tar Make the directory accessible under the name "pcl3" from the gs directory, either by renaming it or by creating an appropriate symbolic link. Then change into the pcl3 directory and unpack pcl3.tar from there. This should give you in addition the following regular files in that directory: BUGS pcl3's bug list LGPL text of the GNU LGPL NEWS list of user-visible changes between versions README this file Furthermore, a number of subdirectories will have been created: doc documentation eprn C source code for the eprn device on which pcl3 is based lib cups-pcl3, example.mcf, if-pcl3 ppd PostScript printer description files ps PostScript files src C source code and build files for pcl3 5. Extend contrib.mak in the source directory. The pcl3 distribution contains extension files "src/contrib.mak-N.NN.add" for this purpose, where "N.NN" is a ghostscript version (at least for all ghostscript distributions listed in "Files needed" above). These files contain text to be inserted into contrib.mak at some point, for example at the end. An extension file might work for other gs versions in addition to the designated one. The extension files contain an initial comment which gives you some further instructions (compile options, files shared with hpdj, available devices). 6. Add at least "$(DD)pcl3.dev" ("pcl3.dev" in gs 5.50) to one of the DEVICE_DEVS* variables in the platform-specific make file. The conventional place is DEVICE_DEVS3, DEVICE_DEVS4, or DEVICE_DEVS5. For a complete list of pcl3 devices you can define here, see the contrib.mak-N.NN.add file. You might also wish to modify the device and feature lists in other respects. On a Linux system, the file to edit is unix-gcc.mak. 7. Read the file doc/gs-mods.txt about modifications I suggest for making in ghostscript's source code or configuration files. 8. Other changes to the platform-specific make file For a UNIX system and if you wish to install the software in a non-default directory, edit the make variable "prefix" (normally /usr/local). This directory must exist before step 10. If you intend to use the X Window System, check whether the values for the variables XINCLUDE, XLIBDIRS, and XLIBS are correct. On Linux, they should usually be "-I/usr/X11R6/include", "-L/usr/X11R6/lib", and "Xt SM ICE Xext X11", respectively. You can ignore XINCLUDE if one of the directories searched by the compiler anyway contains an appropriate "X11" subdirectory (e.g., there is a link from /usr/include/X11 to /usr/X11R6/include/X11). 9. On a UNIX system, check that the platform-specific make file (unix-gcc.mak for Linux) is available to make from the gs directory (or use "-f"). Then, in the gs directory, type "make" to generate the gs binary, and "make pcl3opts" to generate the pcl3opts binary. The latter step is likely to fail if you are not on an XPG-conforming UNIX system. 10. Install: "make install pcl3-install". If you are not on a UNIX system, you'll probably have to omit the "pcl3-install" part. Instead, copy pcl3's doc/*.html files and the compiled pcl3opts binary (provided it did compile) to appropriate places yourself. If "make pcl3-install" gives you a usage message from the "instcopy" command you've forgotten "make pcl3opts" in step 9. The "make pcl3opts" call, if successful, has also generated two NLS message catalogues for pcl3opts in ghostscript's object file directory ("obj" in the gs directory): pcl3opts-en.cat (English) and pcl3opts-de.cat (German). These catalogues are not installed automatically. If you wish to use them, copy each file into an appropriate NLS directory under a name matching your NLSPATH conventions with "pcl3opts" for %N. (On Linux the default value for NLSPATH usually includes /usr/share/locale/%L/%N and /usr/share/locale/%L/LC_MESSAGES/%N.) You need the English catalogue only if you want pcl3opts to issue media sizes in inches instead of millimetres. Note that pcl3's PostScript example files (subdirectory "ps") are also not installed. If you find them useful, copy them to an appropriate place yourself. 11. Install the fonts. First call the newly generated "gs" with the option "-h". The output will show you ghostscript's search path. The fonts should be present in one of these directories. On UNIX systems, the convention is to use a ".../fonts" directory for this purpose. Note that newer font distributions unpack into "./fonts" and some older ones into ".". If you already have a ghostscript installation somewhere else on your system and its font directory is not included in the font path of your new gs binary, you can create a symbolic link from the ".../fonts" directory to your installed fonts, or use the environment variable GS_FONTPATH to direct gs to the directory/ies in question. 12. This is a good point to take a first look at pcl3's documentation if you haven't done that yet. It is available as a manual page (type "man gs-pcl3") and in HTML format (open gs-pcl3.html in the installed ghostscript's documentation directory with an HTML browser). 13. If your printer is not directly supported by pcl3 and you wish the driver to be correctly informed about supported media sizes and the associated hardware margins, look into the file lib/example.mcf and then create a media configuration file for your printer from information in its manual. You must at least specify an entry for the default page size (A4 or US Letter as selected in your ghostscript configuration). If you have selected to set PCL3_MEDIA_FILE in step 5, the media file you have just created should be installed under that path name. 14. Integration with a spool system This depends on your spooler :-). The minimum you need is the ability to print a file without any modifications by spool commands. In that case you can generate a PCL file by calling ghostscript with option values appropriate for your current needs and pass the generated file through the spool system for printing. Such spool queues are usually called "raw" queues. If you are using CUPS (Common UNIX Printing System, http://www.cups.org), you can proceed as follows: - Create a file ppd/gs.ppd describing the site-specific properties of your ghostscript installation. - Select a PPD file suitable for your printer model and copy it into CUPS' "model" directory using the ppd/catppd script. - Copy the lib/cups-pcl3 filter to CUPS' "filter" directory. - Install a new print queue based on the new PPD file. The details of the first two steps are described in the ppd/README file. You should also at some stage read the initial comments in lib/cups-pcl3. Most Linux systems still use a Berkeley spooler (lpr/lprm/lpq) which maps the queue name in the print request to a call to some backend command, based on /etc/printcap. Frequently, the backend is an intelligent filter which will examine the contents of the file to be printed and perform appropriate processing based on the file type. Because with an ordinary Berkeley spooler one cannot pass command line options to the backend, it is a good idea to install several print queues for those option combinations one needs frequently. You could for example install seven print queues: one for passing any file to the printer unchanged, three for monochrome and three for colour printing, each of the last two groups having a queue for "draft", "normal" and "presentation" quality. If you are on a machine with an AT&T spool system (lp/cancel/lpstat), one queue can be sufficient because you can pass command line options to the backend. However, if your printer has different hardware configurations (either black or CMY cartridge, either banner or tray feed) and you cannot completely control when print jobs are submitted, you should still install separate queues for these configurations, take steps to make it at least likely that the jobs submitted to each queue have the necessary properties, and enable only the queue agreeing with the printer's current configuration. You also need only one queue independent of the spool system if you have a spooler frontend capable of inserting PostScript setup commands into the document to be printed or if such a document manager is part of your spooler (the latter applies to CUPS). The pcl3 distribution contains the necessary PPD files for these cases; read the file ppd/README for further instructions. Note that the remarks above on separate queues for distinct hardware configurations apply also to this case. The pcl3 distribution contains configurable input filters for the Berkeley spooler and for CUPS in the files "lib/if-pcl3" and "lib/cups-pcl3", respectively. Read the initial comments in these files for further instructions. You should also not forget to skim the "OPTIONS" and "CONFIGURATION" sections in pcl3's manual page: some parts are particularly relevant for spooler backends. 15. Test your configuration by printing a few example documents. As a first step and in particular when you are using a media configuration file, print some of the margin test files ps/margins-*.ps appropriate for your current media size. They should show marks with a distance of 25 mm or 1 in (depending on the media size) from the margins. If you find deviations from what you expect, read the manual page and in particular the description of how to use the "Margins" or "PageOffset" entries to correct misalignments. For trying out various rendering parameters, ps/levels-test.ps is a good test file, in particular if you print through a spooler, because the printed page will tell you which settings were effective. ## Files: contrib/pcl3/ppd/README ******************************************************************************* File: @(#)$Id: README,v 1.10 2001/08/19 08:52:32 Martin Rel $ Contents: Notes on the PPD files in the pcl3 distribution Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 2001 by Martin Lottermoser * * All rights reserved * * * ******************************************************************************* Purpose and Format of PPD Files, Document Managers ************************************************** Some PostScript commands (e.g., for duplex printing) are not concerned with what appears on the page but control the way a document is printed independent of its contents. Such commands are usually not created by the application generating the PostScript document but are inserted at the user's request when actually printing the file. In addition, some PostScript interpreters differ in the commands needed to achieve a particular effect, hence a PostScript file might have to be adapted for a certain device if it was orginally generated for a different one. This post-processing of PostScript files is the job of a PostScript "document manager" or "print manager". It obtains its information from a PPD (PostScript Printer Description) file for the printer selected. The most useful kind of document manager is a preprocessor for a spooler. This preprocessor parses the PostScript file to determine its current settings, asks the user which special features (e.g., duplex printing, output quality, stapling, etc.) are desired, extends or modifies the file with commands extracted from the PPD file, and passes the modified file to the spooler. There exist also spooler-integrated document managers where the user interface is detached from the editing component; in these cases the interface passes the information it has collected to the spooling interface in some spooler-specific manner and later a backend inserts appropriate PostScript commands. Primitive document manager implementations don't bother about parsing the PostScript file but merely prepend the new PostScript commands to the file; such commands will not take effect if the file already contains invocations of the same feature. Beware of this in particular in the case of Windows-generated PostScript files which usually contain explicit settings for the resolution. You might consider adding definitions for ghostscript's FIXEDRESOLUTION variable to the *Resolution statements in the PPD file if you have such a document manager. PPD files contain also some information which is relevant for software generating PostScript files. A case in point is the list of supported media sizes: it can be used by PostScript-generating programs to present a user with a list of choices for the document to be composed, and it is also used by the document manager to replace the size's invocation code with the commands required to obtain this size on the printer selected. It can be confusing if you have a PPD-based user interface to a print system which accepts PostScript as well as non-PostScript files and where the interface does not clearly distinguish between these two steps (document composition and printing); you might get the impression that you can alter the page size after the PostScript file has been generated. (A similar case is page orientation.) Actually, PostScript does provide functionality for doing this (PageSize recovery policies), but altering the size selection commands is logically wrong and does not give a usable result in general. The PPD file format is defined by Adobe: Adobe Systems Incorporated "PostScript Printer Description File Format Specification" Version 4.3 9 February 1996 Document ID: PN LPS5003 This specification can be obtained from http://www.adobe.com. The PPD Files for pcl3 ********************** The PPD files distributed with pcl3 are not complete descriptions of the devices implemented by ghostscript with the pcl3 driver. Their main purpose is to provide some essential support for document managers acting as preprocessors. This makes it possible to create printing interfaces which are easier to use than ghostscript's command line interface. As a consequence, you will find no *OpenUI/*CloseUI entries for device parameters like "SendBlackLast" or "PJLLanguage": the values of these parameters are not job-specific but printer-specific properties and should be given as additions in other PPD statements or in the call to ghostscript. PPD files can include other PPD files. For pcl3, the include structure looks like this (inclusion is from top to bottom): gs-pcl3-.ppd | gs-pcl3-common.ppd | gs.ppd | gs-.ppd | gs-common.ppd Several of the files gs-pcl3-.ppd and in particular those where is not an acceptable argument to "-sSubdevice" are valid for several subdevices. If you are unsure which file to select, check the initial comments or the *ModelName statement in a file to discover the subdevices supported by that file. The gs-pcl3-.ppd files assume that the PostScript file generated by the document manager is passed to a ghostscript executable with options selecting pcl3 and the intended subdevice and without altering the default state of the device as far as it is reflected in the PPD file. If this does not agree with your environment, use a local PPD customization file for the necessary adaptations. If you're using CUPS, device and subdevice selection should happen via the *cupsFilter statement and the filter called. The gs-pcl3-.ppd files already contain *cupsFilter statements using the cups-pcl3 filter. If you're using a different filter, modify the statements as needed, otherwise read the initial comments in the file cups-pcl3. Installation of the Files ************************* 1. Create a file called gs.ppd for describing site-specific settings of your ghostscript installation. It should contain at least the following statements: *PPD-Adobe: "4.3" *DefaultPaperDimension: *Include: "gs-.ppd" Replace "" with the default page size configured for your ghostscript installation. Usually, this is either "A4" or "Letter". In the case of A4 you would therefore write: *DefaultPaperDimension: A4 You might also wish to insert other statements here which describe settings which are relevant for a document manager. For example, if your document manager downloads fonts to the PostScript interpreter if it is of the opinion that the latter does not have a particular font used in a document (this is the case for CUPS), you should compose a PPD file with a list of fonts accessible to your ghostscript installation and insert it or an *Include statement for it at this point. You can use the fonts.ppd file in this directory as a model (or as a temporary substitute); it contains a list of ghostscript's usual standard fonts. If the programs accessing the PPD file use it only for determining whether a font is accessible to the interpreter or not, you can also simply use the list of font descriptions resulting from running gs on: /scratch 200 string def (*) { (*Font ) print print (: Standard "\(0.0\)" Standard Disk\n) print } scratch /Font resourceforall (put this into a file and run "gs -q -dBATCH -sDEVICE=bit" on it). This output will contain information which is wrong, but it will list all fonts known to your ghostscript installation. Don't forget to also replace with your ghostscript's version number. If there is no gs-.ppd file for your gs version, use one of the existing gs-.ppd files as a model. 2. The PPD specification distinguishes between printer models (e.g., the HP DeskJet 540) and printer instances (e.g., the second printer in room 12). The PPD file for an instance can be generated by creating a local instance-specific customization file which includes the model's PPD file. If your document manager has an interface for instance installation, it is sufficient to give it the relevant gs-pcl3-.ppd files which describe models. Otherwise you usually have to create a customization file under the name of the instance, containing just *PPD-Adobe: "4.3" *ShortNickName: "" *NickName: "" *Include: "gs-pcl3-.ppd" with describing the printer instance ( should basically have the same content but consist of at most 31 characters) and being replaced to generate the name of the pcl3 PPD file you wish to use for this printer. If you wish to extend or override other settings in the gs-pcl3-.ppd file, add these statements in the customization file between the first and the last statement above. The pcl3 PPD files contain *InputSlot definitions only for those media sources ("Cassette" and "ManualFeed") which are available independent of your "InputAttributes" definitions. If you configure a print queue such that other sources are available as well, read the comments on the *InputSlot entry in gs-pcl3-common.ppd. You can't use local customization files with CUPS up to at least version 1.1.8 because the CUPS PPD scanner (a) does not support the *Include statement and (b) violates the PPD specification in either taking the last occurrence of a keyword as the correct instance or collecting all instances instead of disregarding every except the first. Modify the installed instance files in this case if you need some customization, for example to change the "*NickName" value (which actually CUPS should do when you give it a description for the print queue at creation time). 3. Copy all PPD files needed into a directory where they will be found by your document manager. If your document manager does not support the "*Include" statement, use the script "catppd" for this purpose: catppd The script requires that all the files referenced from must be accessible from the current working directory under the name given in the "*Include" statement. In the case of pcl3's PPD files this means that you must call it from the "ppd" directory. If you are installing model files you may specify any gs-pcl3-*.ppd file for with the exception of gs-pcl3-common.ppd. If you are installing instance files, use catppd only on your customization files. For CUPS up to at least version 1.1.8 you'll have to use catppd and you should copy the files into the .../cups/model directory. You must also remove the second "*OpenUI *MediaType: ... *CloseUI *MediaType" section from the copied gs-pcl3-unspec.ppd file. 4. If you are using the "unspec" or "unspecold" subdevices, check whether the PPD file supports all the features you need. You will also almost certainly find some features or values there which are not supported by your printer. It is probably best to create your own PPD file in this case. ## Files: cups/LICENSE.txt CUPS License Agreement Copyright 2007-2012 by Apple Inc. 1 Infinite Loop Cupertino, CA 95014 USA WWW: http://www.cups.org/ INTRODUCTION CUPS(tm) is provided under the GNU General Public License ("GPL") and GNU Library General Public License ("LGPL"), Version 2, with exceptions for Apple operating systems and the OpenSSL toolkit. A copy of the exceptions and licenses follow this introduction. The GNU LGPL applies to the CUPS and CUPS Imaging libraries located in the "cups" and "filter" subdirectories of the CUPS source distribution and the files in the "test" subdirectory. The GNU GPL applies to the remainder of the CUPS distribution. For those not familiar with the GNU GPL, the license basically allows you to: - Use the CUPS software at no charge. - Distribute verbatim copies of the software in source or binary form. - Sell verbatim copies of the software for a media fee, or sell support for the software. What this license *does not* allow you to do is make changes or add features to CUPS and then sell a binary distribution without source code. You must provide source for any changes or additions to the software, and all code must be provided under the GPL or LGPL as appropriate. The only exceptions to this are the portions of the CUPS software covered by the Apple operating system license exceptions outlined later in this license agreement. The GNU LGPL relaxes the "link-to" restriction, allowing you to develop applications that use the CUPS and CUPS Imaging libraries under other licenses and/or conditions as appropriate for your application, driver, or filter. LICENSE EXCEPTIONS In addition, as the copyright holder of CUPS, Apple Inc. grants the following special exceptions: 1. Apple Operating System Development License Exception; a. Software that is developed by any person or entity for an Apple Operating System ("Apple OS-Developed Software"), including but not limited to Apple and third party printer drivers, filters, and backends for an Apple Operating System, that is linked to the CUPS imaging library or based on any sample filters or backends provided with CUPS shall not be considered to be a derivative work or collective work based on the CUPS program and is exempt from the mandatory source code release clauses of the GNU GPL. You may therefore distribute linked combinations of the CUPS imaging library with Apple OS-Developed Software without releasing the source code of the Apple OS-Developed Software. You may also use sample filters and backends provided with CUPS to develop Apple OS-Developed Software without releasing the source code of the Apple OS-Developed Software. b. An Apple Operating System means any operating system software developed and/or marketed by Apple Inc., including but not limited to all existing releases and versions of Apple's Darwin, OS X, and OS X Server products and all follow-on releases and future versions thereof. c. This exception is only available for Apple OS-Developed Software and does not apply to software that is distributed for use on other operating systems. d. All CUPS software that falls under this license exception have the following text at the top of each source file: This file is subject to the Apple OS-Developed Software exception. 2. OpenSSL Toolkit License Exception; a. Apple Inc. explicitly allows the compilation and distribution of the CUPS software with the OpenSSL Toolkit. No developer is required to provide these exceptions in a derived work. KERBEROS SUPPORT CODE The Kerberos support code ("KSC") is copyright 2006 by Jelmer Vernooij and is provided 'as-is', without any express or implied warranty. In no event will the author or Apple Inc. be held liable for any damages arising from the use of the KSC. Sources files containing KSC have the following text at the top of each source file: This file contains Kerberos support code, copyright 2006 by Jelmer Vernooij. The KSC copyright and license apply only to Kerberos-related feature code in CUPS. Such code is typically conditionally compiled based on the present of the HAVE_GSSAPI preprocessor definition. Permission is granted to anyone to use the KSC for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of the KSC must not be misrepresented; you must not claim that you wrote the original software. If you use the KSC in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. TRADEMARKS CUPS and the CUPS logo (the "CUPS Marks") are trademarks of Apple Inc. Apple grants you a non-exclusive and non-transferable right to use the CUPS Marks in any direct port or binary distribution incorporating CUPS software and in any promotional material therefor. You agree that your products will meet the highest levels of quality and integrity for similar goods, not be unlawful, and be developed, manufactured, and distributed in compliance with this license. You will not interfere with Apple's rights in the CUPS Marks, and all use of the CUPS Marks shall inure to the benefit of Apple. This license does not apply to use of the CUPS Marks in a derivative products, which requires prior written permission from Apple Inc. GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS Appendix: How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. GNU LIBRARY GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the library GPL. It is numbered 2 because it goes with version 2 of the ordinary GPL.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Library General Public License, applies to some specially designated Free Software Foundation software, and to any other libraries whose authors decide to use it. You can use it for your libraries, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library, or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link a program with the library, you must provide complete object files to the recipients so that they can relink them with the library, after making changes to the library and recompiling it. And you must show them these terms so they know their rights. Our method of protecting your rights has two steps: (1) copyright the library, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the library. Also, for each distributor's protection, we want to make certain that everyone understands that there is no warranty for this free library. If the library is modified by someone else and passed on, we want its recipients to know that what they have is not the original version, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that companies distributing free software will individually obtain patent licenses, thus in effect transforming the program into proprietary software. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License, which was designed for utility programs. This license, the GNU Library General Public License, applies to certain designated libraries. This license is quite different from the ordinary one; be sure to read it in full, and don't assume that anything in it is the same as in the ordinary license. The reason we have a separate public license for some libraries is that they blur the distinction we usually make between modifying or adding to a program and simply using it. Linking a program with a library, without changing the library, is in some sense simply using the library, and is analogous to running a utility program or application program. However, in a textual and legal sense, the linked executable is a combined work, a derivative of the original library, and the ordinary General Public License treats it as such. Because of this blurred distinction, using the ordinary General Public License for libraries did not effectively promote software sharing, because most developers did not use the libraries. We concluded that weaker conditions might promote sharing better. However, unrestricted linking of non-free programs would deprive the users of those programs of all benefit from the free status of the libraries themselves. This Library General Public License is intended to permit developers of non-free programs to use free libraries, while preserving your freedom as a user of such programs to change the free libraries that are incorporated in them. (We have not seen how to achieve this as regards changes in header files, but we have achieved it as regards changes in the actual functions of the Library.) The hope is that this will lead to faster development of free libraries. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, while the latter only works together with the library. Note that it is possible for a library to be covered by the ordinary General Public License rather than by this special one. GNU LIBRARY GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Library General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also compile or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. c) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. d) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Library General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS Appendix: How to Apply These Terms to Your New Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! ## Files: freetype/LICENSE.TXT FREETYPE LICENSES ----------------- The FreeType 2 font engine is copyrighted work and cannot be used legally without a software license. In order to make this project usable to a vast majority of developers, we distribute it under two mutually exclusive open-source licenses. This means that *you* must choose *one* of the two licenses described below, then obey all its terms and conditions when using FreeType 2 in any of your projects or products. - The FreeType License, found in the file `docs/FTL.TXT`, which is similar to the original BSD license *with* an advertising clause that forces you to explicitly cite the FreeType project in your product's documentation. All details are in the license file. This license is suited to products which don't use the GNU General Public License. Note that this license is compatible to the GNU General Public License version 3, but not version 2. - The GNU General Public License version 2, found in `docs/GPLv2.TXT` (any later version can be used also), for programs which already use the GPL. Note that the FTL is incompatible with GPLv2 due to its advertisement clause. The contributed BDF and PCF drivers come with a license similar to that of the X Window System. It is compatible to the above two licenses (see files `src/bdf/README` and `src/pcf/README`). The same holds for the source code files `src/base/fthash.c` and `include/freetype/internal/fthash.h`; they were part of the BDF driver in earlier FreeType versions. The gzip module uses the zlib license (see `src/gzip/zlib.h`) which too is compatible to the above two licenses. The files `src/autofit/ft-hb.c` and `src/autofit/ft-hb.h` contain code taken almost verbatim from the HarfBuzz file `hb-ft.cc`, which uses the 'Old MIT' license, compatible to the above two licenses. The MD5 checksum support (only used for debugging in development builds) is in the public domain. --- end of LICENSE.TXT --- ## Files: freetype/README FreeType 2.13.0 =============== Homepage: https://www.freetype.org FreeType is a freely available software library to render fonts. It is written in C, designed to be small, efficient, highly customizable, and portable while capable of producing high-quality output (glyph images) of most vector and bitmap font formats. Please read the `docs/CHANGES` file, it contains IMPORTANT INFORMATION. Read the files `docs/INSTALL*` for installation instructions; see the file `docs/LICENSE.TXT` for the available licenses. For using FreeType's git repository instead of a distribution bundle, please read file `README.git`. Note that you have to actually clone the repository; using a snapshot will not work (in other words, don't use gitlab's 'Download' button). The FreeType 2 API reference is located in directory `docs/reference`; use the file `index.html` as the top entry point. [Please note that currently the search function for locally installed documentation doesn't work due to cross-site scripting issues.] Additional documentation is available as a separate package from our sites. Go to https://download.savannah.gnu.org/releases/freetype/ and download one of the following files. freetype-doc-2.13.0.tar.xz freetype-doc-2.13.0.tar.gz ftdoc2130.zip To view the documentation online, go to https://www.freetype.org/freetype2/docs/ Mailing Lists ------------- The preferred way of communication with the FreeType team is using e-mail lists. general use and discussion: freetype@nongnu.org engine internals, porting, etc.: freetype-devel@nongnu.org announcements: freetype-announce@nongnu.org git repository tracker: freetype-commit@nongnu.org The lists are moderated; see https://www.freetype.org/contact.html how to subscribe. Bugs ---- Please submit bug reports at https://gitlab.freedesktop.org/freetype/freetype/-/issues Alternatively, you might report bugs by e-mail to `freetype-devel@nongnu.org`. Don't forget to send a detailed explanation of the problem -- there is nothing worse than receiving a terse message that only says 'it doesn't work'. Patches ------- For larger changes please provide merge requests at https://gitlab.freedesktop.org/freetype/freetype/-/merge_requests Alternatively, you can send patches to the `freetype-devel@nongnu.org` mailing list -- and thank you in advance for your work on improving FreeType! Details on the process can be found here: https://www.freetype.org/developer.html#patches Enjoy! The FreeType Team ---------------------------------------------------------------------- Copyright (C) 2006-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. --- end of README --- ## Files: freetype/builds/amiga/README README for the builds/amiga subdirectory. Copyright (C) 2005-2023 by Werner Lemberg and Detlef W�rkner. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. The makefile.os4 is for the AmigaOS4 SDK. To use it, type "make -f makefile.os4", it produces a link library libft2_ppc.a. The makefile is for ppc-morphos-gcc-2.95.3-bin.tgz (gcc 2.95.3 hosted on 68k-Amiga producing MorphOS-PPC-binaries from http://www.morphos.de). To use it, type "make assign", then "make"; it produces a link library libft2_ppc.a. The smakefile is a makefile for Amiga SAS/C 6.58 (no longer available, latest sold version was 6.50, updates can be found in Aminet). It is based on the version found in the sourcecode of ttf.library 0.83b for FreeType 1.3.1 from Richard Griffith (ragriffi@sprynet.com, http://ragriffi.home.sprynet.com). You will also need the latest include files and amiga.lib from the Amiga web site (https://os.amigaworld.de/download.php?id=3) for AmigaOS 3.9; the generated code should work under AmigaOS 2.04 and up. To use it, call "smake assign" and then "smake" from the builds/amiga directory. The results are: - A link library "ft2_680x0.lib" (where x depends on the setting of the CPU entry in the smakefile) containing all FreeType2 parts except of the init code, debugging code, and the system interface code. - ftsystem.o, an object module containing the standard version of the system interface code which uses fopen() fclose() fread() fseek() ftell() malloc() realloc() and free() from lib:sc.lib (not pure). - ftsystempure.o, an object module containing the pure version of the system interface code which uses Open() Close() Read() Seek() ExamineFH() AsmAllocPooled() AsmFreePooled() etc. This version can be used in both normal programs and in Amiga run-time shared system librarys (can be linked with lib:libinit.o, no copying of DATA and BSS hunks for each OpenLibrary() necessary). Source code is in src/base/ftsystem.c. - ftdebug.o, an object module containing the standard version of the debugging code which uses vprintf() and exit() (not pure). Debugging can be turned on in FT:include/freetype/config/ftoption.h and with FT_SetTraceLevel(). - ftdebugpure.o, an object module containing the pure version of the debugging code which uses KVPrintf() from lib:debug.lib and no exit(). For debugging of Amiga run-time shared system libraries. Source code is in src/base/ftdebug.c. - NO ftinit.o. Because linking with a link library should result in linking only the needed object modules in it, but standard ftsystem.o would force ALL FreeType2 modules to be linked to your program, I decided to use a different scheme: You must #include FT:src/base/ftinit.c in your sourcecode and specify with #define statements which modules you need. See include/freetype/config/ftmodule.h. To use in your own programs: - Insert the #define and #include statements from top of include/freetype/config/ftmodule.h in your source code and uncomment the #define statements for the FreeType2 modules you need. - You can use either PARAMETERS=REGISTER or PARAMETERS=STACK for calling the FreeType2 functions, because the link library and the object files are compiled with PARAMETERS=BOTH. - "smake assign" (assign "FT:" to the FreeType2 main directory). - Compile your program. - Link with either ftsystem.o or ftsystempure.o, if debugging enabled with either ftdebug.o or (ftdebugpure.o and lib:debug.lib), and with ft2_680x0.lib as link library. To adapt to other compilers: - The standard ANSI C maximum length of 31 significant characters in identifiers is not enough for FreeType2. Check if your compiler has a minimum length of 40 significant characters or can be switched to it. "idlen=40" is the option for SAS/C. Setting #define HAVE_LIMIT_ON_IDENTS in an include file may also work (not tested). - Make sure that the include directory in builds/amiga is searched before the normal FreeType2 include directory, so you are able to replace problematic include files with your own version (same may be useful for the src directory). - An example of how to replace/workaround a problematic include file is include/freetype/config/ftconfig.h; it changes a #define that would prevent SAS/C from generating XDEF's where it should do that and then includes the standard FreeType2 include file. Local Variables: coding: latin-1 End: ## Files: freetype/src/gxvalid/README gxvalid: TrueType GX validator ============================== 1. What is this --------------- `gxvalid' is a module to validate TrueType GX tables: a collection of additional tables in TrueType font which are used by `QuickDraw GX Text', Apple Advanced Typography (AAT). In addition, gxvalid can validates `kern' tables which have been extended for AAT. Like the otvalid module, gxvalid uses FreeType 2's validator framework (ftvalid). You can link gxvalid with your program; before running your own layout engine, gxvalid validates a font file. As the result, you can remove error-checking code from the layout engine. It is also possible to use gxvalid as a stand-alone font validator; the `ftvalid' test program included in the ft2demo bundle calls gxvalid internally. A stand-alone font validator may be useful for font developers. This documents documents the following issues. - supported TrueType GX tables - fundamental validation limitations - permissive error handling of broken GX tables - `kern' table issue. 2. Supported tables ------------------- The following GX tables are currently supported. bsln feat just kern(*) lcar mort morx opbd prop trak The following GX tables are currently unsupported. cvar fdsc fmtx fvar gvar Zapf The following GX tables won't be supported. acnt(**) hsty(***) The following undocumented tables in TrueType fonts designed for Apple platform aren't handled either. addg CVTM TPNM umif *) The `kern' validator handles both the classic and the new kern formats; the former is supported on both Microsoft and Apple platforms, while the latter is supported on Apple platforms. **) `acnt' tables are not supported by currently available Apple font tools. ***) There is one more Apple extension, `hsty', but it is for Newton-OS, not GX (Newton-OS is a platform by Apple, but it can use sfnt- housed bitmap fonts only). Therefore, it should be excluded from `Apple platform' in the context of TrueType. gxvalid ignores it as Apple font tools do so. We have checked 183 fonts bundled with MacOS 9.1, MacOS 9.2, MacOS 10.0, MacOS X 10.1, MSIE for MacOS, and AppleWorks 6.0. In addition, we have checked 67 Dynalab fonts (designed for MacOS) and 189 Ricoh fonts (designed for Windows and MacOS dual platforms). The number of fonts including TrueType GX tables are as follows. bsln: 76 feat: 191 just: 84 kern: 59 lcar: 4 mort: 326 morx: 19 opbd: 4 prop: 114 trak: 16 Dynalab and Ricoh fonts don't have GX tables except of `feat' and `mort'. 3. Fundamental validation limitations ------------------------------------- TrueType GX provides layout information to libraries for font rasterizers and text layout. gxvalid can check whether the layout data in a font is conformant to the TrueType GX format specified by Apple. But gxvalid cannot check a how QuickDraw GX/AAT renderer uses the stored information. 3-1. Validation of State Machine activity ----------------------------------------- QuickDraw GX/AAT uses a `State Machine' to provide `stateful' layout features, and TrueType GX stores the state transition diagram of this `State Machine' in a `StateTable' data structure. While the State Machine receives a series of glyph IDs, the State Machine starts with `start of text' state, walks around various states and generates various layout information to the renderer, and finally reaches the `end of text' state. gxvalid can check essential errors like: - possibility of state transitions to undefined states - existence of glyph IDs that the State Machine doesn't know how to handle - the State Machine cannot compute the layout information from given diagram These errors can be checked within finite steps, and without the State Machine itself, because these are `expression' errors of state transition diagram. There is no limitation about how long the State Machine walks around, so validation of the algorithm in the state transition diagram requires infinite steps, even if we had a State Machine in gxvalid. Therefore, the following errors and problems cannot be checked. - existence of states which the State Machine never transits to - the possibility that the State Machine never reaches `end of text' - the possibility of stack underflow/overflow in the State Machine (in ligature and contextual glyph substitutions, the State Machine can store 16 glyphs onto its stack) In addition, gxvalid doesn't check `temporary glyph IDs' used in the chained State Machines (in `mort' and `morx' tables). If a layout feature is implemented by a single State Machine, a glyph ID converted by the State Machine is passed to the glyph renderer, thus it should not point to an undefined glyph ID. But if a layout feature is implemented by chained State Machines, a component State Machine (if it is not the final one) is permitted to generate undefined glyph IDs for temporary use, because it is handled by next component State Machine and not by the glyph renderer. To validate such temporary glyph IDs, gxvalid must stack all undefined glyph IDs which can occur in the output of the previous State Machine and search them in the `ClassTable' structure of the current State Machine. It is too complex to list all possible glyph IDs from the StateTable, especially from a ligature substitution table. 3-2. Validation of relationship between multiple layout features ---------------------------------------------------------------- gxvalid does not validate the relationship between multiple layout features at all. If multiple layout features are defined in TrueType GX tables, possible interactions, overrides, and conflicts between layout features are implicitly given in the font too. For example, there are several predefined spacing control features: - Text Spacing (Proportional/Monospace/Half-width/Normal) - Number Spacing (Monospaced-numbers/Proportional-numbers) - Kana Spacing (Full-width/Proportional) - Ideographic Spacing (Full-width/Proportional) - CJK Roman Spacing (Half-width/Proportional/Default-roman /Full-width-roman/Proportional) If all layout features are independently managed, we can activate inconsistent typographic rules like `Text Spacing=Monospace' and `Ideographic Spacing=Proportional' at the same time. The combinations of layout features is managed by a 32bit integer (one bit each for selector setting), so we can define relationships between up to 32 features, theoretically. But if one feature setting affects another feature setting, we need typographic priority rules to validate the relationship. Unfortunately, the TrueType GX format specification does not give such information even for predefined features. 4. Permissive error handling of broken GX tables ------------------------------------------------ When Apple's font rendering system finds an inconsistency, like a specification violation or an unspecified value in a TrueType GX table, it does not always return error. In most cases, the rendering engine silently ignores such wrong values or even whole tables. In fact, MacOS is shipped with fonts including broken GX/AAT tables, but no harmful effects due to `officially broken' fonts are observed by end-users. gxvalid is designed to continue the validation process as long as possible. When gxvalid find wrong values, gxvalid warns it at least, and takes a fallback procedure if possible. The fallback procedure depends on the debug level. We used the following three tools to investigate Apple's error handling. - FontValidator (for MacOS 8.5 - 9.2) resource fork font - ftxvalidator (for MacOS X 10.1 -) dfont or naked-sfnt - ftxdumperfuser (for MacOS X 10.1 -) dfont or naked-sfnt However, all tests were done on a PowerPC based Macintosh; at present, we have not checked those tools on a m68k-based Macintosh. In total, we checked 183 fonts bundled to MacOS 9.1, MacOS 9.2, MacOS 10.0, MacOS X 10.1, MSIE for MacOS, and AppleWorks 6.0. These fonts are distributed officially, but many broken GX/AAT tables were found by Apple's font tools. In the following, we list typical violation of the GX specification, in fonts officially distributed with those Apple systems. 4-1. broken BinSrchHeader (19/183) ---------------------------------- `BinSrchHeader' is a header of a data array for m68k platforms to access memory efficiently. Although there are only two independent parameters for real (`unitSize' and `nUnits'), BinSrchHeader has three additional parameters which can be calculated from `unitSize' and `nUnits', for fast setup. Apple font tools ignore them silently, so gxvalid warns if it finds and inconsistency, and always continues validation. The additional parameters are ignored regardless of the consistency. 19 fonts include such inconsistencies; all breaks are in the BinSrchHeader structure of the `kern' table. 4-2. too-short LookupTable (5/183) ---------------------------------- LookupTable format 0 is a simple array to get a value from a given GID (glyph ID); the index of this array is a GID too. Therefore, the length of the array is expected to be same as the maximum GID value defined in the `maxp' table, but there are some fonts whose LookupTable format 0 is too short to cover all GIDs. FontValidator ignores this error silently, ftxvalidator and ftxdumperfuser both warn and continue. Similar problems are found in format 3 subtables of `kern'. gxvalid warns always and abort if the validation level is set to FT_VALIDATE_PARANOID. 5 fonts include too-short kern format 0 subtables. 1 font includes too-short kern format 3 subtable. 4-3. broken LookupTable format 2 (1/183) ---------------------------------------- LookupTable format 2, subformat 4 covers the GID space by a collection of segments which are specified by `firstGlyph' and `lastGlyph'. Some fonts store `firstGlyph' and `lastGlyph' in reverse order, so the segment specification is broken. Apple font tools ignore this error silently; a broken segment is ignored as if it did not exist. gxvalid warns and normalize the segment at FT_VALIDATE_DEFAULT, or ignore the segment at FT_VALIDATE_TIGHT, or abort at FT_VALIDATE_PARANOID. 1 font includes broken LookupTable format 2, in the `just' table. *) It seems that all fonts manufactured by ITC for AppleWorks have this error. 4-4. bad bracketing in glyph property (14/183) ---------------------------------------------- GX/AAT defines a `bracketing' property of the glyphs in the `prop' table, to control layout features of strings enclosed inside and outside of brackets. Some fonts give inappropriate bracket properties to glyphs. Apple font tools warn about this error; gxvalid warns too and aborts at FT_VALIDATE_PARANOID. 14 fonts include wrong bracket properties. 4-5. invalid feature number (117/183) ------------------------------------- The GX/AAT extension can include 255 different layout features, but popular layout features are predefined (see https://developer.apple.com/fonts/TrueType-Reference-Manual/RM09/AppendixF.html). Some fonts include feature numbers which are incompatible with the predefined feature registry. In our survey, there are 140 fonts including `feat' table. a) 67 fonts use a feature number which should not be used. b) 117 fonts set the wrong feature range (nSetting). This is mostly found in the `mort' and `morx' tables. Apple font tools give no warning, although they cannot recognize what the feature is. At FT_VALIDATE_DEFAULT, gxvalid warns but continues in both cases (a, b). At FT_VALIDATE_TIGHT, gxvalid warns and aborts for (a), but continues for (b). At FT_VALIDATE_PARANOID, gxvalid warns and aborts in both cases (a, b). 4-6. invalid prop version (10/183) ---------------------------------- As most TrueType GX tables, the `prop' table must start with a 32bit version identifier: 0x00010000, 0x00020000 or 0x00030000. But some fonts store nonsense binary data instead. When Apple font tools find them, they abort the processing immediately, and the data which follows is unhandled. gxvalid does the same. 10 fonts include broken `prop' version. All of these fonts are classic TrueType fonts for the Japanese script, manufactured by Apple. 4-7. unknown resource name (2/183) ------------------------------------ NOTE: THIS IS NOT A TRUETYPE GX ERROR. If a TrueType font is stored in the resource fork or in dfont format, the data must be tagged as `sfnt' in the resource fork index to invoke TrueType font handler for the data. But the TrueType font data in `Keyboard.dfont' is tagged as `kbd', and that in `LastResort.dfont' is tagged as `lst'. Apple font tools can detect that the data is in TrueType format and successfully validate them. Maybe this is possible because they are known to be dfont. The current implementation of the resource fork driver of FreeType cannot do that, thus gxvalid cannot validate them. 2 fonts use an unknown tag for the TrueType font resource. 5. `kern' table issues ---------------------- In common terminology of TrueType, `kern' is classified as a basic and platform-independent table. But there are Apple extensions of `kern', and there is an extension which requires a GX state machine for contextual kerning. Therefore, gxvalid includes a special validator for `kern' tables. Unfortunately, there is no exact algorithm to check Apple's extension, so gxvalid includes a heuristic algorithm to find the proper validation routines for all possible data formats, including the data format for Microsoft. By calling classic_kern_validate() instead of gxv_validate(), you can specify the `kern' format explicitly. However, current FreeType2 uses Microsoft `kern' format only, others are ignored (and should be handled in a library one level higher than FreeType). 5-1. History ------------ The original 16bit version of `kern' was designed by Apple in the pre-GX era, and it was also approved by Microsoft. Afterwards, Apple designed a new 32bit version of the `kern' table. According to the documentation, the difference between the 16bit and 32bit version is only the size of variables in the `kern' header. In the following, we call the original 16bit version as `classic', and 32bit version as `new'. 5-2. Versions and dialects which should be differentiated --------------------------------------------------------- The `kern' table consists of a table header and several subtables. The version number which identifies a `classic' or a `new' version is explicitly written in the table header, but there are undocumented differences between Microsoft's and Apple's formats. It is called a `dialect' in the following. There are three cases which should be handled: the new Apple-dialect, the classic Apple-dialect, and the classic Microsoft-dialect. An analysis of the formats and the auto detection algorithm of gxvalid is described in the following. 5-2-1. Version detection: classic and new kern ---------------------------------------------- According to Apple TrueType specification, there are only two differences between the classic and the new: - The `kern' table header starts with the version number. The classic version starts with 0x0000 (16bit), the new version starts with 0x00010000 (32bit). - In the `kern' table header, the number of subtables follows the version number. In the classic version, it is stored as a 16bit value. In the new version, it is stored as a 32bit value. From Apple font tool's output (DumpKERN is also tested in addition to the three Apple font tools in above), there is another undocumented difference. In the new version, the subtable header includes a 16bit variable named `tupleIndex' which does not exist in the classic version. The new version can store all subtable formats (0, 1, 2, and 3), but the Apple TrueType specification does not mention the subtable formats available in the classic version. 5-2-2. Available subtable formats in classic version ---------------------------------------------------- Although the Apple TrueType specification recommends to use the classic version in the case if the font is designed for both the Apple and Microsoft platforms, it does not document the available subtable formats in the classic version. According to the Microsoft TrueType specification, the subtable format assured for Windows and OS/2 support is only subtable format 0. The Microsoft TrueType specification also describes subtable format 2, but does not mention which platforms support it. Subtable formats 1, 3, and higher are documented as reserved for future use. Therefore, the classic version can store subtable formats 0 and 2, at least. `ttfdump.exe', a font tool provided by Microsoft, ignores the subtable format written in the subtable header, and parses the table as if all subtables are in format 0. `kern' subtable format 1 uses a StateTable, so it cannot be utilized without a GX State Machine. Therefore, it is reasonable to assume that format 1 (and 3) were introduced after Apple had introduced GX and moved to the new 32bit version. 5-2-3. Apple and Microsoft dialects ----------------------------------- The `kern' subtable has a 16bit `coverage' field to describe kerning attributes, but bit interpretations by Apple and Microsoft are different: For example, Apple uses bits 0-7 to identify the subtable, while Microsoft uses bits 8-15. In addition, due to the output of DumpKERN and FontValidator, Apple's bit interpretations of coverage in classic and new version are incompatible also. In summary, there are three dialects: classic Apple dialect, classic Microsoft dialect, and new Apple dialect. The classic Microsoft dialect and the new Apple dialect are documented by each vendors' TrueType font specification, but the documentation for classic Apple dialect is not available. For example, in the new Apple dialect, bit 15 is documented as `set to 1 if the kerning is vertical'. On the other hand, in classic Microsoft dialect, bit 1 is documented as `set to 1 if the kerning is horizontal'. From the outputs of DumpKERN and FontValidator, classic Apple dialect recognizes 15 as `set to 1 when the kerning is horizontal'. From the results of similar experiments, classic Apple dialect seems to be the Endian reverse of the classic Microsoft dialect. As a conclusion it must be noted that no font tool can identify classic Apple dialect or classic Microsoft dialect automatically. 5-2-4. gxvalid auto dialect detection algorithm ----------------------------------------------- The first 16 bits of the `kern' table are enough to identify the version: - if the first 16 bits are 0x0000, the `kern' table is in classic Apple dialect or classic Microsoft dialect - if the first 16 bits are 0x0001, and next 16 bits are 0x0000, the kern table is in new Apple dialect. If the `kern' table is a classic one, the 16bit `coverage' field is checked next. Firstly, the coverage bits are decoded for the classic Apple dialect using the following bit masks (this is based on DumpKERN output): 0x8000: 1=horizontal, 0=vertical 0x4000: not used 0x2000: 1=cross-stream, 0=normal 0x1FF0: reserved 0x000F: subtable format If any of reserved bits are set or the subtable bits is interpreted as format 1 or 3, we take it as `impossible in classic Apple dialect' and retry, using the classic Microsoft dialect. The most popular coverage in new Apple-dialect: 0x8000, The most popular coverage in classic Apple-dialect: 0x0000, The most popular coverage in classic Microsoft dialect: 0x0001. 5-3. Tested fonts ----------------- We checked 59 fonts bundled with MacOS and 38 fonts bundled with Windows, where all font include a `kern' table. - fonts bundled with MacOS * new Apple dialect format 0: 18 format 2: 1 format 3: 1 * classic Apple dialect format 0: 14 * classic Microsoft dialect format 0: 15 - fonts bundled with Windows * classic Microsoft dialect format 0: 38 It looks strange that classic Microsoft-dialect fonts are bundled to MacOS: they come from MSIE for MacOS, except of MarkerFelt.dfont. ACKNOWLEDGEMENT --------------- Some parts of gxvalid are derived from both the `gxlayout' module and the `otvalid' module. Development of gxlayout was supported by the Information-technology Promotion Agency(IPA), Japan. The detailed analysis of undefined glyph ID utilization in `mort' and `morx' tables is provided by George Williams. ------------------------------------------------------------------------ Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. --- end of README --- ## Files: ijs/README IJS 0.35 News as of 0.35: 11 Feb 2004 The autoconf build system has been moderized and we now use libtool for portable shared library building. Thanks to Roger Leigh for helping with that. Also a bug with ColorSpace field was corrected, thanks to David Suffield. News as of 0.34: 22 Apr 2002 The source files now have official MIT license banners. Thanks to www.opensource.org for hosting the ur-text of this license. Also some clarifications on namespace management in the spec. There is now an IJS website, graciously hosted by linuxprinting.org. http://www.linuxprinting.org/ijs/ There have been some minor improvements in the makefile. News as of 0.33: The buffer size has been increased to 4096. It should probably be dynamically allocated, though. Minor clarification in BitsPerSample language in spec (thanks to Jackie Chang for pointing out the ambiguity). News as of 0.32: The xres and yres fields of ph are now floats. The example server now supports margins. A few small bugs have been cleaned up as well. News as of 0.31: A number of small cleanups in the code. The example client and server support more querying and enumeration, but not yet margins. There is a new API for the client to query the negotiated version number. The ijs_exec_unix module now sets the SIGPIPE signal to ignore. This way, if the client abnormally exits, it allows the error to propagate through the read() or write() call to the pipe, rather than immediately killing the client. News as of 0.30: It now builds as a library. Also, there is basic autoconf support (but not automake or libtool). It's probably best to link the static library for now. I'm open to suggestions - I'm open to drinking the entire pitcher of auto* Kool-Aid, but we probably won't use libtool in Ghostscript builds. This release fixes a number of bugs and improves portability. In particular, server errors should now bubble up to the client, and the termination logic has been patched according to David Suffield, who discovered a race condition there. Thanks to David and Russell for patches. The spec is now in a reasonable draft. See ijs_spec.sgml and ijs_spec.pdf. Comments and suggestions are welcome. The example client and server have _not_ yet been updated to use the newer features of the ijs spec. Patches are welcome. News as of 0.29: I've added a number of things discussed on the mailing list, including listing and enumerating parameters, as well as a job abstraction. The client interface has changed a bit - job id's are now present in most callbacks, colorspace is now presented only as a string, and there are quite a few more callbacks. I've started a skeleton of a protocol spec in DocBook. Note, there's a potential race condition in EXIT noted by David Suffield. The fix hasn't yet been merged in from his work. News as of 0.2: This version integrates set_param and get_param, and has moved the "page header" processing to use set_param. Also, there are both Windows (MS VC++) and Unix makefiles. Use "make -f unix.mak" to build on Unix. Thanks to Russell Lang for Windows portability work. Introduction This is an early snapshot of IJS. I expect the protocols and API's to evolve somewhat, and things like error handling are still far from perfect. However, I'm pretty happy that this is going in the right direction. I am doing this prerelease so that authors of various packages related to raster-based printing can start thinking about how to integrate it. Ideally, all producers of printable raster data should be able to function as an ijs client, and all consumers should be able to function as an ijs server. This release is about as functional as piping pnm's, which is primitive, but the way a lot of drivers still work. What is IJS? IJS is, first and foremost, a protocol for transmission of raster page images. This snapshot provides a reference implementation of the protocol, the design of which is still in flux. When the protocol specification is published, it will be authoritative. Applications should feel free to link against the library provided in this package, adapt that code for their own needs, or roll a completely new implementation. The protocol is a fairly traditional client-server design. In general, the client sends one or more page images to the server, along with various metadata. Communication is through simple "commands", which are essentially size-prefixed packets. The client sends a command to the server, then waits for a response command, either ACK or NAK. The server "speaks" IJS through stdin and stdout. One consequence of this design decision is that the server can be invoked remotely, for example through ssh. It's not clear yet how useful this will be, but at least people can experiment with it. Currently, all data goes through the stdin and stdout pipes. It is envisioned that a shared memory transport will also be provided, transparently. IJS will fall back to pipes if shared memory is not available for any reason. I'm not yet convinced that the performance win for shared memory is significant. I would like to benchmark domain sockets as well, as they are likely to provide better performance than pipes, and are also highly desirable for cases where the server runs as a persistent daemon. This tarball provides an "IJS library" in the form of ijs, ijs_client, and ijs_server. It also provides an example client (capable of reading pnmraw files) and an example server (capable of generating PostScript). I imagine that the example programs will be useful for development and testing, but that end-users probably won't find a need for them. To try IJS, compile and run "./ijs_client_example -s ./ijs_server_example -pOutputFile=/tmp/tmp.ps foo.ppm". This will invoke ./ijs_server_example, which will in turn generate a /tmp/tmp.ps file. The ijs_client_example takes a -p command line argument for setting parameters, and a -r argument for setting resolution. Here is a typical command line: ./ijs_client_example -s ./ijs_server_example -pOutputFile=/tmp/tmp.ps \ -r300 in.ppm The syntax of -p is a sequence of key=value pairs, separated by commas. A backslash in the value escapes the next character (allowing embedded commas in the value). Thus, '-pfoo=bar, quux=a\,b' sets the key "foo" to the value "bar, and the key "quux" to the value "a,b". FAQ What does IJS stand for? It stands for "raster printer driver architecture." It's spelled U+30EA U+13DA, to avoid confusion, and to save space in UTF-16 encodings. Actually, the name derives from HPIJS, which presumably stands for HP InkJet Server. The name pays homage to HPIJS for the inspiration, while communicating that it's not specific to HP printers. Licensing All source code in this distribution is released under the MIT License. I want everybody to be able to use this. More stuff to write: Actual specification for the protocol (in draft). Client spawns server, invoker invokes client and server, and persistent server daemon modes. Negotation of extensions (goal is interoperability between versions). (Actually, the PING/PONG protocol as it exists negotiates version numbers). TODO: Shared memory transport. Should have an alternate mode in which the client is passed the pipe information, rather than having to spawn the server. wait() cleanup of invoked server. Package library up as libijs.a, .so (partially done) ## Files: jbig2dec/LICENSE The files in this directory (folder) and any subdirectories (sub-folders) thereof are part of jbig2dec, with the exception of certain source files included to support portability which are marked otherwise in their copyright headers. jbig2dec is free software; you can redistribute it and/or modify it under the terms the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program in the file named COPYING. If not, write to the Free Software Foundation, Inc., 59 Temple Place Suite 330, Boston, MA 02111-1307, USA. In addition, specific permission is given to link jbig2dec to or compile jbig2dec into AFPL Ghostscript and to distribute same under the Aladdin Free Public License (AFPL) version 9. ## Files: jpeg/README The Independent JPEG Group's JPEG software ========================================== README for release 9e of 16-Jan-2022 ==================================== This distribution contains the ninth public release of the Independent JPEG Group's free JPEG software. You are welcome to redistribute this software and to use it for any purpose, subject to the conditions under LEGAL ISSUES, below. This software is the work of Tom Lane, Guido Vollbeding, Philip Gladstone, Bill Allombert, Jim Boucher, Lee Crocker, Bob Friesenhahn, Ben Jackson, John Korejwa, Julian Minguillon, Luis Ortiz, George Phillips, Davide Rossi, Ge' Weijers, and other members of the Independent JPEG Group. IJG is not affiliated with the ISO/IEC JTC1/SC29/WG1 standards committee (previously known as JPEG, together with ITU-T SG16). DOCUMENTATION ROADMAP ===================== This file contains the following sections: OVERVIEW General description of JPEG and the IJG software. LEGAL ISSUES Copyright, lack of warranty, terms of distribution. REFERENCES Where to learn more about JPEG. ARCHIVE LOCATIONS Where to find newer versions of this software. ACKNOWLEDGMENTS Special thanks. FILE FORMAT WARS Software *not* to get. TO DO Plans for future IJG releases. Other documentation files in the distribution are: User documentation: install.txt How to configure and install the IJG software. usage.txt Usage instructions for cjpeg, djpeg, jpegtran, rdjpgcom, and wrjpgcom. *.1 Unix-style man pages for programs (same info as usage.txt). wizard.txt Advanced usage instructions for JPEG wizards only. cdaltui.txt Description of alternate user interface for cjpeg/djpeg. change.log Version-to-version change highlights. Programmer and internal documentation: libjpeg.txt How to use the JPEG library in your own programs. example.c Sample code for calling the JPEG library. structure.txt Overview of the JPEG library's internal structure. filelist.txt Road map of IJG files. coderules.txt Coding style rules --- please read if you contribute code. Please read at least the files install.txt and usage.txt. Some information can also be found in the JPEG FAQ (Frequently Asked Questions) article. See ARCHIVE LOCATIONS below to find out where to obtain the FAQ article. If you want to understand how the JPEG code works, we suggest reading one or more of the REFERENCES, then looking at the documentation files (in roughly the order listed) before diving into the code. OVERVIEW ======== This package contains C software to implement JPEG image encoding, decoding, and transcoding. JPEG (pronounced "jay-peg") is a standardized compression method for full-color and grayscale images. This software implements JPEG baseline, extended-sequential, and progressive compression processes. Provision is made for supporting all variants of these processes, although some uncommon parameter settings aren't implemented yet. We have made no provision for supporting the hierarchical or lossless processes defined in the standard. We provide a set of library routines for reading and writing JPEG image files, plus two sample applications "cjpeg" and "djpeg", which use the library to perform conversion between JPEG and some other popular image file formats. The library is intended to be reused in other applications. In order to support file conversion and viewing software, we have included considerable functionality beyond the bare JPEG coding/decoding capability; for example, the color quantization modules are not strictly part of JPEG decoding, but they are essential for output to colormapped file formats or colormapped displays. These extra functions can be compiled out of the library if not required for a particular application. We have also included "jpegtran", a utility for lossless transcoding between different JPEG processes, and "rdjpgcom" and "wrjpgcom", two simple applications for inserting and extracting textual comments in JFIF files. The emphasis in designing this software has been on achieving portability and flexibility, while also making it fast enough to be useful. In particular, the software is not intended to be read as a tutorial on JPEG. (See the REFERENCES section for introductory material.) Rather, it is intended to be reliable, portable, industrial-strength code. We do not claim to have achieved that goal in every aspect of the software, but we strive for it. We welcome the use of this software as a component of commercial products. No royalty is required, but we do ask for an acknowledgement in product documentation, as described under LEGAL ISSUES. LEGAL ISSUES ============ In plain English: 1. We don't promise that this software works. (But if you find any bugs, please let us know!) 2. You can use this software for whatever you want. You don't have to pay us. 3. You may not pretend that you wrote this software. If you use it in a program, you must acknowledge somewhere in your documentation that you've used the IJG code. In legalese: The authors make NO WARRANTY or representation, either express or implied, with respect to this software, its quality, accuracy, merchantability, or fitness for a particular purpose. This software is provided "AS IS", and you, its user, assume the entire risk as to its quality and accuracy. This software is copyright (C) 1991-2022, Thomas G. Lane, Guido Vollbeding. All Rights Reserved except as specified below. Permission is hereby granted to use, copy, modify, and distribute this software (or portions thereof) for any purpose, without fee, subject to these conditions: (1) If any part of the source code for this software is distributed, then this README file must be included, with this copyright and no-warranty notice unaltered; and any additions, deletions, or changes to the original files must be clearly indicated in accompanying documentation. (2) If only executable code is distributed, then the accompanying documentation must state that "this software is based in part on the work of the Independent JPEG Group". (3) Permission for use of this software is granted only if the user accepts full responsibility for any undesirable consequences; the authors accept NO LIABILITY for damages of any kind. These conditions apply to any software derived from or based on the IJG code, not just to the unmodified library. If you use our work, you ought to acknowledge us. Permission is NOT granted for the use of any IJG author's name or company name in advertising or publicity relating to this software or products derived from it. This software may be referred to only as "the Independent JPEG Group's software". We specifically permit and encourage the use of this software as the basis of commercial products, provided that all warranty or liability claims are assumed by the product vendor. The Unix configuration script "configure" was produced with GNU Autoconf. It is copyright by the Free Software Foundation but is freely distributable. The same holds for its supporting scripts (config.guess, config.sub, ltmain.sh). Another support script, install-sh, is copyright by X Consortium but is also freely distributable. REFERENCES ========== We recommend reading one or more of these references before trying to understand the innards of the JPEG software. The best short technical introduction to the JPEG compression algorithm is Wallace, Gregory K. "The JPEG Still Picture Compression Standard", Communications of the ACM, April 1991 (vol. 34 no. 4), pp. 30-44. (Adjacent articles in that issue discuss MPEG motion picture compression, applications of JPEG, and related topics.) If you don't have the CACM issue handy, a PDF file containing a revised version of Wallace's article is available at https://www.ijg.org/files/Wallace.JPEG.pdf. The file (actually a preprint for an article that appeared in IEEE Trans. Consumer Electronics) omits the sample images that appeared in CACM, but it includes corrections and some added material. Note: the Wallace article is copyright ACM and IEEE, and it may not be used for commercial purposes. A somewhat less technical, more leisurely introduction to JPEG can be found in "The Data Compression Book" by Mark Nelson and Jean-loup Gailly, published by M&T Books (New York), 2nd ed. 1996, ISBN 1-55851-434-1. This book provides good explanations and example C code for a multitude of compression methods including JPEG. It is an excellent source if you are comfortable reading C code but don't know much about data compression in general. The book's JPEG sample code is far from industrial-strength, but when you are ready to look at a full implementation, you've got one here... The best currently available description of JPEG is the textbook "JPEG Still Image Data Compression Standard" by William B. Pennebaker and Joan L. Mitchell, published by Van Nostrand Reinhold, 1993, ISBN 0-442-01272-1. Price US$59.95, 638 pp. The book includes the complete text of the ISO JPEG standards (DIS 10918-1 and draft DIS 10918-2). Although this is by far the most detailed and comprehensive exposition of JPEG publicly available, we point out that it is still missing an explanation of the most essential properties and algorithms of the underlying DCT technology. If you think that you know about DCT-based JPEG after reading this book, then you are in delusion. The real fundamentals and corresponding potential of DCT-based JPEG are not publicly known so far, and that is the reason for all the mistaken developments taking place in the image coding domain. The original JPEG standard is divided into two parts, Part 1 being the actual specification, while Part 2 covers compliance testing methods. Part 1 is titled "Digital Compression and Coding of Continuous-tone Still Images, Part 1: Requirements and guidelines" and has document numbers ISO/IEC IS 10918-1, ITU-T T.81. Part 2 is titled "Digital Compression and Coding of Continuous-tone Still Images, Part 2: Compliance testing" and has document numbers ISO/IEC IS 10918-2, ITU-T T.83. IJG JPEG 8 introduced an implementation of the JPEG SmartScale extension which is specified in two documents: A contributed document at ITU and ISO with title "ITU-T JPEG-Plus Proposal for Extending ITU-T T.81 for Advanced Image Coding", April 2006, Geneva, Switzerland. The latest version of this document is Revision 3. And a contributed document ISO/IEC JTC1/SC29/WG1 N 5799 with title "Evolution of JPEG", June/July 2011, Berlin, Germany. IJG JPEG 9 introduces a reversible color transform for improved lossless compression which is described in a contributed document ISO/IEC JTC1/SC29/ WG1 N 6080 with title "JPEG 9 Lossless Coding", June/July 2012, Paris, France. The JPEG standard does not specify all details of an interchangeable file format. For the omitted details we follow the "JFIF" conventions, version 2. JFIF version 1 has been adopted as Recommendation ITU-T T.871 (05/2011) : Information technology - Digital compression and coding of continuous-tone still images: JPEG File Interchange Format (JFIF). It is available as a free download in PDF file format from https://www.itu.int/rec/T-REC-T.871. A PDF file of the older JFIF document is available at https://www.w3.org/Graphics/JPEG/jfif3.pdf. The TIFF 6.0 file format specification can be obtained by FTP from ftp://ftp.sgi.com/graphics/tiff/TIFF6.ps.gz. The JPEG incorporation scheme found in the TIFF 6.0 spec of 3-June-92 has a number of serious problems. IJG does not recommend use of the TIFF 6.0 design (TIFF Compression tag 6). Instead, we recommend the JPEG design proposed by TIFF Technical Note #2 (Compression tag 7). Copies of this Note can be obtained from https://www.ijg.org/files/. It is expected that the next revision of the TIFF spec will replace the 6.0 JPEG design with the Note's design. Although IJG's own code does not support TIFF/JPEG, the free libtiff library uses our library to implement TIFF/JPEG per the Note. ARCHIVE LOCATIONS ================= The "official" archive site for this software is www.ijg.org. The most recent released version can always be found there in directory "files". This particular version will be archived in Windows-compatible "zip" archive format as https://www.ijg.org/files/jpegsr9e.zip, and in Unix-compatible "tar.gz" archive format as https://www.ijg.org/files/jpegsrc.v9e.tar.gz. The JPEG FAQ (Frequently Asked Questions) article is a source of some general information about JPEG. It is available on the World Wide Web at http://www.faqs.org/faqs/jpeg-faq/ and other news.answers archive sites, including the official news.answers archive at rtfm.mit.edu: ftp://rtfm.mit.edu/pub/usenet/news.answers/jpeg-faq/. If you don't have Web or FTP access, send e-mail to mail-server@rtfm.mit.edu with body send usenet/news.answers/jpeg-faq/part1 send usenet/news.answers/jpeg-faq/part2 ACKNOWLEDGMENTS =============== Thank to Juergen Bruder for providing me with a copy of the common DCT algorithm article, only to find out that I had come to the same result in a more direct and comprehensible way with a more generative approach. Thank to Istvan Sebestyen and Joan L. Mitchell for inviting me to the ITU JPEG (Study Group 16) meeting in Geneva, Switzerland. Thank to Thomas Wiegand and Gary Sullivan for inviting me to the Joint Video Team (MPEG & ITU) meeting in Geneva, Switzerland. Thank to Thomas Richter and Daniel Lee for inviting me to the ISO/IEC JTC1/SC29/WG1 (previously known as JPEG, together with ITU-T SG16) meeting in Berlin, Germany. Thank to John Korejwa and Massimo Ballerini for inviting me to fruitful consultations in Boston, MA and Milan, Italy. Thank to Hendrik Elstner, Roland Fassauer, Simone Zuck, Guenther Maier-Gerber, Walter Stoeber, Fred Schmitz, and Norbert Braunagel for corresponding business development. Thank to Nico Zschach and Dirk Stelling of the technical support team at the Digital Images company in Halle for providing me with extra equipment for configuration tests. Thank to Richard F. Lyon (then of Foveon Inc.) for fruitful communication about JPEG configuration in Sigma Photo Pro software. Thank to Andrew Finkenstadt for hosting the ijg.org site. Thank to Thomas G. Lane for the original design and development of this singular software package. Thank to Lars Goehler, Andreas Heinecke, Sebastian Fuss, Yvonne Roebert, Andrej Werner, Ulf-Dietrich Braumann, and Nina Ssymank for support and public relations. FILE FORMAT WARS ================ The ISO/IEC JTC1/SC29/WG1 standards committee (previously known as JPEG, together with ITU-T SG16) currently promotes different formats containing the name "JPEG" which is misleading because these formats are incompatible with original DCT-based JPEG and are based on faulty technologies. IJG therefore does not and will not support such momentary mistakes (see REFERENCES). There exist also distributions under the name "OpenJPEG" promoting such kind of formats which is misleading because they don't support original JPEG images. We have no sympathy for the promotion of inferior formats. Indeed, one of the original reasons for developing this free software was to help force convergence on common, interoperable format standards for JPEG files. Don't use an incompatible file format! (In any case, our decoder will remain capable of reading existing JPEG image files indefinitely.) The ISO committee pretends to be "responsible for the popular JPEG" in their public reports which is not true because they don't respond to actual requirements for the maintenance of the original JPEG specification. Furthermore, the ISO committee pretends to "ensure interoperability" with their standards which is not true because their "standards" support only application-specific and proprietary use cases and contain mathematically incorrect code. There are currently different distributions in circulation containing the name "libjpeg" which is misleading because they don't have the features and are incompatible with formats supported by actual IJG libjpeg distributions. One of those fakes is released by members of the ISO committee and just uses the name of libjpeg for misdirection of people, similar to the abuse of the name JPEG as described above, while having nothing in common with actual IJG libjpeg distributions and containing mathematically incorrect code. The other one claims to be a "derivative" or "fork" of the original libjpeg, but violates the license conditions as described under LEGAL ISSUES above and violates basic C programming properties. We have no sympathy for the release of misleading, incorrect and illegal distributions derived from obsolete code bases. Don't use an obsolete code base! According to the UCC (Uniform Commercial Code) law, IJG has the lawful and legal right to foreclose on certain standardization bodies and other institutions or corporations that knowingly perform substantial and systematic deceptive acts and practices, fraud, theft, and damaging of the value of the people of this planet without their knowing, willing and intentional consent. The titles, ownership, and rights of these institutions and all their assets are now duly secured and held in trust for the free people of this planet. People of the planet, on every country, may have a financial interest in the assets of these former principals, agents, and beneficiaries of the foreclosed institutions and corporations. IJG asserts what is: that each man, woman, and child has unalienable value and rights granted and deposited in them by the Creator and not any one of the people is subordinate to any artificial principality, corporate fiction or the special interest of another without their appropriate knowing, willing and intentional consent made by contract or accommodation agreement. IJG expresses that which already was. The people have already determined and demanded that public administration entities, national governments, and their supporting judicial systems must be fully transparent, accountable, and liable. IJG has secured the value for all concerned free people of the planet. A partial list of foreclosed institutions and corporations ("Hall of Shame") is currently prepared and will be published later. TO DO ===== Version 9 is the second release of a new generation JPEG standard to overcome the limitations of the original JPEG specification, and is the first true source reference JPEG codec. More features are being prepared for coming releases... Please send bug reports, offers of help, etc. to jpeg-info@jpegclub.org. ## Files: libpng/AUTHORS PNG REFERENCE LIBRARY AUTHORS ============================= This is the list of PNG Reference Library ("libpng") Contributing Authors, for copyright and licensing purposes. * Andreas Dilger * Cosmin Truta * Dave Martindale * Eric S. Raymond * Gilles Vollant * Glenn Randers-Pehrson * Greg Roelofs * Guy Eric Schalnat * James Yu * John Bowler * Kevin Bracey * Magnus Holmgren * Mandar Sahastrabuddhe * Mans Rullgard * Matt Sarett * Mike Klein * Pascal Massimino * Paul Schmidt * Qiang Zhou * Sam Bushell * Samuel Williams * Simon-Pierre Cadieux * Tim Wegner * Tom Lane * Tom Tanner * Vadim Barkov * Willem van Schaik * Zhijie Liang * Arm Holdings - Richard Townsend * Google Inc. - Dan Field - Leon Scroggins III - Matt Sarett - Mike Klein - Sami Boukortt The build projects, the build scripts, the test scripts, and other files in the "ci", "projects", "scripts" and "tests" directories, have other copyright owners, but are released under the libpng license. Some files in the "contrib" directory, and some tools-generated files that are distributed with libpng, have other copyright owners, and are released under other open source licenses. ## Files: libpng/LICENSE COPYRIGHT NOTICE, DISCLAIMER, and LICENSE ========================================= PNG Reference Library License version 2 --------------------------------------- * Copyright (c) 1995-2022 The PNG Reference Library Authors. * Copyright (c) 2018-2022 Cosmin Truta. * Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson. * Copyright (c) 1996-1997 Andreas Dilger. * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. The software is supplied "as is", without warranty of any kind, express or implied, including, without limitation, the warranties of merchantability, fitness for a particular purpose, title, and non-infringement. In no event shall the Copyright owners, or anyone distributing the software, be liable for any damages or other liability, whether in contract, tort or otherwise, arising from, out of, or in connection with the software, or the use or other dealings in the software, even if advised of the possibility of such damage. Permission is hereby granted to use, copy, modify, and distribute this software, or portions hereof, for any purpose, without fee, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated, but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This Copyright notice may not be removed or altered from any source or altered source distribution. PNG Reference Library License version 1 (for libpng 0.5 through 1.6.35) ----------------------------------------------------------------------- libpng versions 1.0.7, July 1, 2000, through 1.6.35, July 15, 2018 are Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson, are derived from libpng-1.0.6, and are distributed according to the same disclaimer and license as libpng-1.0.6 with the following individuals added to the list of Contributing Authors: Simon-Pierre Cadieux Eric S. Raymond Mans Rullgard Cosmin Truta Gilles Vollant James Yu Mandar Sahastrabuddhe Google Inc. Vadim Barkov and with the following additions to the disclaimer: There is no warranty against interference with your enjoyment of the library or against infringement. There is no warranty that our efforts or the library will fulfill any of your particular purposes or needs. This library is provided with all faults, and the entire risk of satisfactory quality, performance, accuracy, and effort is with the user. Some files in the "contrib" directory and some configure-generated files that are distributed with libpng have other copyright owners, and are released under other open source licenses. libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are Copyright (c) 1998-2000 Glenn Randers-Pehrson, are derived from libpng-0.96, and are distributed according to the same disclaimer and license as libpng-0.96, with the following individuals added to the list of Contributing Authors: Tom Lane Glenn Randers-Pehrson Willem van Schaik libpng versions 0.89, June 1996, through 0.96, May 1997, are Copyright (c) 1996-1997 Andreas Dilger, are derived from libpng-0.88, and are distributed according to the same disclaimer and license as libpng-0.88, with the following individuals added to the list of Contributing Authors: John Bowler Kevin Bracey Sam Bushell Magnus Holmgren Greg Roelofs Tom Tanner Some files in the "scripts" directory have other copyright owners, but are released under this license. libpng versions 0.5, May 1995, through 0.88, January 1996, are Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. For the purposes of this copyright and license, "Contributing Authors" is defined as the following set of individuals: Andreas Dilger Dave Martindale Guy Eric Schalnat Paul Schmidt Tim Wegner The PNG Reference Library is supplied "AS IS". The Contributing Authors and Group 42, Inc. disclaim all warranties, expressed or implied, including, without limitation, the warranties of merchantability and of fitness for any purpose. The Contributing Authors and Group 42, Inc. assume no liability for direct, indirect, incidental, special, exemplary, or consequential damages, which may result from the use of the PNG Reference Library, even if advised of the possibility of such damage. Permission is hereby granted to use, copy, modify, and distribute this source code, or portions hereof, for any purpose, without fee, subject to the following restrictions: 1. The origin of this source code must not be misrepresented. 2. Altered versions must be plainly marked as such and must not be misrepresented as being the original source. 3. This Copyright notice may not be removed or altered from any source or altered source distribution. The Contributing Authors and Group 42, Inc. specifically permit, without fee, and encourage the use of this source code as a component to supporting the PNG file format in commercial products. If you use this source code in a product, acknowledgment is not required but would be appreciated. ## Files: libpng/README README for libpng version 1.6.39 ================================ See the note about version numbers near the top of png.h. See INSTALL for instructions on how to install libpng. Libpng comes in several distribution formats. Get libpng-*.tar.gz or libpng-*.tar.xz if you want UNIX-style line endings in the text files, or lpng*.7z or lpng*.zip if you want DOS-style line endings. Version 0.89 was the first official release of libpng. Don't let the fact that it's the first release fool you. The libpng library has been in extensive use and testing since mid-1995. By late 1997 it had finally gotten to the stage where there hadn't been significant changes to the API in some time, and people have a bad feeling about libraries with versions < 1.0. Version 1.0.0 was released in March 1998. **** Note that some of the changes to the png_info structure render this version of the library binary incompatible with libpng-0.89 or earlier versions if you are using a shared library. The type of the "filler" parameter for png_set_filler() has changed from png_byte to png_uint_32, which will affect shared-library applications that use this function. To avoid problems with changes to the internals of the png info_struct, new APIs have been made available in 0.95 to avoid direct application access to info_ptr. These functions are the png_set_ and png_get_ functions. These functions should be used when accessing/storing the info_struct data, rather than manipulating it directly, to avoid such problems in the future. It is important to note that the APIs did not make current programs that access the info struct directly incompatible with the new library, through libpng-1.2.x. In libpng-1.4.x, which was meant to be a transitional release, members of the png_struct and the info_struct can still be accessed, but the compiler will issue a warning about deprecated usage. Since libpng-1.5.0, direct access to these structs is not allowed, and the definitions of the structs reside in private pngstruct.h and pnginfo.h header files that are not accessible to applications. It is strongly suggested that new programs use the new APIs (as shown in example.c and pngtest.c), and older programs be converted to the new format, to facilitate upgrades in the future. **** Additions since 0.90 include the ability to compile libpng as a Windows DLL, and new APIs for accessing data in the info struct. Experimental functions include the ability to set weighting and cost factors for row filter selection, direct reads of integers from buffers on big-endian processors that support misaligned data access, faster methods of doing alpha composition, and more accurate 16->8 bit color conversion. The additions since 0.89 include the ability to read from a PNG stream which has had some (or all) of the signature bytes read by the calling application. This also allows the reading of embedded PNG streams that do not have the PNG file signature. As well, it is now possible to set the library action on the detection of chunk CRC errors. It is possible to set different actions based on whether the CRC error occurred in a critical or an ancillary chunk. For a detailed description on using libpng, read libpng-manual.txt. For examples of libpng in a program, see example.c and pngtest.c. For usage information and restrictions (what little they are) on libpng, see png.h. For a description on using zlib (the compression library used by libpng) and zlib's restrictions, see zlib.h I have included a general makefile, as well as several machine and compiler specific ones, but you may have to modify one for your own needs. You should use zlib 1.0.4 or later to run this, but it MAY work with versions as old as zlib 0.95. Even so, there are bugs in older zlib versions which can cause the output of invalid compression streams for some images. You should also note that zlib is a compression library that is useful for more things than just PNG files. You can use zlib as a drop-in replacement for fread() and fwrite(), if you are so inclined. zlib should be available at the same place that libpng is, or at https://zlib.net. You may also want a copy of the PNG specification. It is available as an RFC, a W3C Recommendation, and an ISO/IEC Standard. You can find these at http://www.libpng.org/pub/png/pngdocs.html . This code is currently being archived at libpng.sourceforge.io in the [DOWNLOAD] area, and at http://libpng.download/src . This release, based in a large way on Glenn's, Guy's and Andreas' earlier work, was created and will be supported by myself and the PNG development group. Send comments/corrections/commendations to png-mng-implement at lists.sourceforge.net (subscription required; visit https://lists.sourceforge.net/lists/listinfo/png-mng-implement to subscribe). Send general questions about the PNG specification to png-mng-misc at lists.sourceforge.net (subscription required; visit https://lists.sourceforge.net/lists/listinfo/png-mng-misc to subscribe). Files in this distribution: ANNOUNCE => Announcement of this version, with recent changes AUTHORS => List of contributing authors CHANGES => Description of changes between libpng versions INSTALL => Instructions to install libpng LICENSE => License to use and redistribute libpng README => This file TODO => Things not implemented in the current library TRADEMARK => Trademark information example.c => Example code for using libpng functions libpng.3 => Manual page for libpng (includes libpng-manual.txt) libpng-manual.txt => Description of libpng and its functions libpngpf.3 => Manual page for libpng's private functions (deprecated) png.5 => Manual page for the PNG format png.c => Basic interface functions common to library png.h => Library function and interface declarations (public) pngpriv.h => Library function and interface declarations (private) pngconf.h => System specific library configuration (public) pngstruct.h => png_struct declaration (private) pnginfo.h => png_info struct declaration (private) pngdebug.h => debugging macros (private) pngerror.c => Error/warning message I/O functions pngget.c => Functions for retrieving info from struct pngmem.c => Memory handling functions pngbar.png => PNG logo, 88x31 pngnow.png => PNG logo, 98x31 pngpread.c => Progressive reading functions pngread.c => Read data/helper high-level functions pngrio.c => Lowest-level data read I/O functions pngrtran.c => Read data transformation functions pngrutil.c => Read data utility functions pngset.c => Functions for storing data into the info_struct pngtest.c => Library test program pngtest.png => Library test sample image pngtrans.c => Common data transformation functions pngwio.c => Lowest-level write I/O functions pngwrite.c => High-level write functions pngwtran.c => Write data transformations pngwutil.c => Write utility functions arm/ => Optimized code for the ARM platform intel/ => Optimized code for the INTEL-SSE2 platform mips/ => Optimized code for the MIPS platform powerpc/ => Optimized code for the PowerPC platform ci/ => Scripts for continuous integration contrib/ => External contributions arm-neon/ => Optimized code for the ARM-NEON platform mips-msa/ => Optimized code for the MIPS-MSA platform powerpc-vsx/ => Optimized code for the POWERPC-VSX platform examples/ => Example programs gregbook/ => Source code for PNG reading and writing, from "PNG: The Definitive Guide" by Greg Roelofs, O'Reilly, 1999 libtests/ => Test programs oss-fuzz/ => Files used by the OSS-Fuzz project for fuzz-testing libpng pngminim/ => Minimal decoder, encoder, and progressive decoder programs demonstrating the use of pngusr.dfa pngminus/ => Simple pnm2png and png2pnm programs pngsuite/ => Test images testpngs/ => Test images tools/ => Various tools visupng/ => VisualPng, a Windows viewer for PNG images projects/ => Project files and workspaces for various IDEs owatcom/ => OpenWatcom project visualc71/ => Microsoft Visual C++ 7.1 workspace vstudio/ => Microsoft Visual Studio workspace scripts/ => Scripts and makefiles for building libpng (see scripts/README.txt for the complete list) tests/ => Test scripts Good luck, and happy coding! * Cosmin Truta (current maintainer, since 2018) * Glenn Randers-Pehrson (former maintainer, 1998-2018) * Andreas Eric Dilger (former maintainer, 1996-1997) * Guy Eric Schalnat (original author and former maintainer, 1995-1996) (formerly of Group 42, Inc.) ## Files: libpng/contrib/README.txt This "contrib" directory contains contributions which are not necessarily under the libpng license, although all are open source. They are not part of libpng proper and are not used for building the library, although some are used for testing the library via "make check". ## Files: libpng/contrib/arm-neon/README OPERATING SYSTEM SPECIFIC ARM NEON DETECTION -------------------------------------------- Detection of the ability to execute ARM NEON on an ARM processor requires operating system support. (The information is not available in user mode.) HOW TO USE THIS --------------- This directory contains C code fragments that can be included in arm/arm_init.c by setting the macro PNG_ARM_NEON_FILE to the file name in "" or <> at build time. This setting is not recorded in pnglibconf.h and can be changed simply by rebuilding arm/arm_init.o with the required macro definition. For any of this code to be used the ARM NEON code must be enabled and run time checks must be supported. I.e.: #if PNG_ARM_NEON_OPT > 0 #ifdef PNG_ARM_NEON_CHECK_SUPPORTED This is done in a 'configure' build by passing configure the argument: --enable-arm-neon=check Apart from the basic Linux implementation in contrib/arm-neon/linux.c this code is unsupported. That means that it is not even compiled on a regular basis and may be broken in any given minor release. FILE FORMAT ----------- Each file documents its testing status as of the last time it was tested (which may have been a long time ago): STATUS: one of: SUPPORTED: This indicates that the file is included in the regularly performed test builds and bugs are fixed when discovered. COMPILED: This indicates that the code did compile at least once. See the more detailed description for the extent to which the result was successful. TESTED: This means the code was fully compiled into the libpng test programs and these were run at least once. BUG REPORTS: an email address to which to send reports of problems The file is a fragment of C code. It should not define any 'extern' symbols; everything should be static. It must define the function: static int png_have_neon(png_structp png_ptr); That function must return 1 if ARM NEON instructions are supported, 0 if not. It must not execute png_error unless it detects a bug. A png_error will prevent the reading of the PNG and in the future, writing too. BUG REPORTS ----------- If you mail a bug report for any file that is not SUPPORTED there may only be limited response. Consider fixing it and sending a patch to fix the problem - this is more likely to result in action. CONTRIBUTIONS ------------- You may send contributions of new implementations to png-mng-implement@sourceforge.net. Please write code in strict C90 C where possible. Obviously OS dependencies are to be expected. If you submit code you must have the authors permission and it must have a license that is acceptable to the current maintainer; in particular that license must permit modification and redistribution. Please try to make the contribution a single file and give the file a clear and unambiguous name that identifies the target OS. If multiple files really are required put them all in a sub-directory. You must also be prepared to handle bug reports from users of the code, either by joining the png-mng-implement mailing list or by providing an email for the "BUG REPORTS" entry or both. Please make sure that the header of the file contains the STATUS and BUG REPORTS fields as above. Please list the OS requirements as precisely as possible. Ideally you should also list the environment in which the code has been tested and certainly list any environments where you suspect it might not work. ## Files: libpng/contrib/conftest/README This directory contains test configuration files, currently always '.dfa' files intended to be used in the build by setting the make macro DFA_XTRA to the name of the file. These files are used in release validation of the 'configure' builds of libpng by building 'make check', or 'make all-am' for cross-builds, with each .dfa file. The files in this directory may change between minor releases, however contributions describing specific builds of libpng are welcomed. There is no guarantee that libpng will continue to build with such configurations; support for given configurations can be, and has been, dropped between successive minor releases. However if a .dfa file describing a configuration is not in this directory it is very unlikely that it will be tested before a minor release! You can use these .dfa files as the basis of new configurations. Files in this directory should not have any use restrictions or restrictive licenses. This directory is not included in the .zip and .7z distributions, which do not contain 'configure' scripts. DOCUMENTATION ============= Examples: ${srcdir}/pngusr.dfa ${srcdir}/contrib/pngminim/*/pngusr.dfa Documentation of the options: ${srcdir}/scripts/pnglibconf.dfa Documentation of the file format: ${srcdir}/scripts/options.awk FILE NAMING =========== File names in this directory may NOT contain any of the five characters: - , + * ? Neither may they contain any space character. While other characters may be used it is strongly suggested that file names be limited to lower case Latiin alphabetic characters (a-z), digits (0-9) and, if necessary the underscore (_) character. File names should be about 8 characters long (excluding the .dfa extension). Submitted .dfa files should have names between 7 and 16 characters long, shorter names (6 characters or less) are reserved for standard tests. ## Files: libpng/contrib/examples/README.txt This directory (contrib/examples) contains examples of libpng usage. NO COPYRIGHT RIGHTS ARE CLAIMED TO ANY OF THE FILES IN THIS DIRECTORY. To the extent possible under law, the authors have waived all copyright and related or neighboring rights to this work. This work is published from: United States. The files may be used freely in any way. The intention is that appropriate parts of the files be used in other libpng-using programs without any need for the authors of the using code to seek copyright or license from the original authors. The source code and comments in this directory are the original work of the people named below. No other person or organization has made contributions to the work in this directory. ORIGINAL AUTHORS The following people have contributed to the code in this directory. None of the people below claim any rights with regard to the contents of this directory. John Bowler ## Files: libpng/contrib/gregbook/COPYING GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ## Files: libpng/contrib/gregbook/LICENSE --------------------------------------------------------------------------- Copyright (c) 1998-2008 Greg Roelofs. All rights reserved. This software is provided "as is," without warranty of any kind, express or implied. In no event shall the author or contributors be held liable for any damages arising in any way from the use of this software. The contents of this file are DUAL-LICENSED. You may modify and/or redistribute this software according to the terms of one of the following two licenses (at your option): LICENSE 1 ("BSD-like with advertising clause"): Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. Redistributions of source code must retain the above copyright notice, disclaimer, and this list of conditions. 2. Redistributions in binary form must reproduce the above copyright notice, disclaimer, and this list of conditions in the documenta- tion and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Greg Roelofs and contributors for the book, "PNG: The Definitive Guide," published by O'Reilly and Associates. LICENSE 2 (GNU GPL v2 or later): This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA --------------------------------------------------------------------------- ## Files: libpng/contrib/gregbook/README =========================== PNG: The Definitive Guide =========================== Source Code Chapters 13, 14 and 15 of "PNG: The Definitive Guide" discuss three free, cross-platform demo programs that show how to use the libpng reference library: rpng, rpng2 and wpng. rpng and rpng2 are viewers; the first is a very simple example that that shows how a standard file-viewer might use libpng, while the second is designed to process streaming data and shows how a web browser might be written. wpng is a simple command-line program that reads binary PGM and PPM files (the ``raw'' grayscale and RGB subsets of PBMPLUS/NetPBM) and converts them to PNG. The source code for all three demo programs currently compiles under Unix, OpenVMS, and 32-bit Windows. (Special thanks to Martin Zinser, zinser at decus.de, for making the necessary changes for OpenVMS and for providing an appropriate build script.) Build instructions can be found below. Files: README this file LICENSE terms of distribution and reuse (BSD-like or GNU GPL) COPYING GNU General Public License (GPL) Makefile.unx Unix makefile Makefile.w32 Windows (MSVC) makefile makevms.com OpenVMS build script rpng-win.c Windows front end for the basic viewer rpng-x.c X Window System (Unix, OpenVMS) front end readpng.c generic back end for the basic viewer readpng.h header file for the basic viewer rpng2-win.c Windows front end for the progressive viewer rpng2-x.c X front end for the progressive viewer readpng2.c generic back end for the progressive viewer readpng2.h header file for the progressive viewer wpng.c generic (text) front end for the converter writepng.c generic back end for the converter writepng.h header file for the converter toucan.png transparent PNG for testing (by Stefan Schneider) Note that, although the programs are designed to be functional, their primary purpose is to illustrate how to use libpng to add PNG support to other programs. As such, their user interfaces are crude and definitely are not intended for everyday use. Please see http://www.libpng.org/pub/png/pngbook.html for further infor- mation and links to the latest version of the source code, and Chapters 13-15 of the book for detailed discussion of the three programs. Greg Roelofs https://pobox.com/~newt/greg_contact.html 16 March 2008 BUILD INSTRUCTIONS - Prerequisites (in order of compilation): - zlib https://zlib.net/ - libpng http://www.libpng.org/pub/png/libpng.html - pngbook http://www.libpng.org/pub/png/book/sources.html The pngbook demo programs are explicitly designed to demonstrate proper coding techniques for using the libpng reference library. As a result, you need to download and build both zlib (on which libpng depends) and libpng. A common build setup is to place the zlib, libpng and pngbook subdirectory trees ("folders") in the same parent directory. Then the libpng build can refer to files in ../zlib (or ..\zlib or [-.zlib]), and similarly for the pngbook build. Note that all three packages are designed to be built from a command line by default; those who wish to use a graphical or other integrated development environments are on their own. - Unix: Unpack the latest pngbook sources (which should correspond to this README file) into a directory and change into that directory. Copy Makefile.unx to Makefile and edit the PNG* and Z* variables appropriately (possibly also the X* variables if necessary). make There is no "install" target, so copy the three executables somewhere in your path or run them from the current directory. All three will print a basic usage screen when run without any command-line arguments; see the book for more details. - Windows: Unpack the latest pngbook sources (which should correspond to this README file) into a folder, open a "DOS shell" or "command prompt" or equivalent command-line window, and cd into the folder where you unpacked the source code. For MSVC, set up the necessary environment variables by invoking %devstudio%\vc\bin\vcvars32.bat where where %devstudio% is the installation directory for MSVC / DevStudio. If you get "environment out of space" errors under 95/98, create a desktop shortcut with "c:\windows\command.com /e:4096" as the program command line and set the working directory to the pngbook directory. Then double-click to open the new DOS-prompt window with a bigger environment and retry the commands above. Copy Makefile.w32 to Makefile and edit the PNGPATH and ZPATH variables appropriately (possibly also the "INC" and "LIB" variables if needed). Note that the names of the dynamic and static libpng and zlib libraries used in the makefile may change in later releases of the libraries. Also note that, as of libpng version 1.0.5, MSVC DLL builds do not work. This makefile therefore builds statically linked executables, but if the DLL problems ever get fixed, uncommenting the appropriate PNGLIB and ZLIB lines will build dynamically linked executables instead. Do the build by typing nmake The result should be three executables: rpng-win.exe, rpng2-win.exe, and wpng.exe. Copy them somewhere in your PATH or run them from the current folder. Like the Unix versions, the two windowed programs (rpng and rpng2) now display a usage screen in a console window when invoked without command-line arguments; this is new behavior as of the June 2001 release. Note that the programs use the Unix-style "-" character to specify options, instead of the more common DOS/Windows "/" character. (For example: "rpng2-win -bgpat 4 foo.png", not "rpng2-win /bgpat 4 foo.png") - OpenVMS: Unpack the pngbook sources into a subdirectory and change into that subdirectory. Edit makevms.com appropriately, specifically the zpath and pngpath variables. @makevms To run the programs, they probably first need to be set up as "foreign symbols," with "disk" and "dir" set appropriately: $ rpng == "$disk:[dir]rpng-x.exe" $ rpng2 == "$disk:[dir]rpng2-x.exe" $ wpng == "$disk:[dir]wpng.exe" All three will print a basic usage screen when run without any command- line arguments; see the book for more details. Note that the options style is Unix-like, i.e., preceded by "-" rather than "/". RUNNING THE PROGRAMS: (VERY) BRIEF INTRO rpng is a simple PNG viewer that can display transparent PNGs with a specified background color; for example, rpng -bgcolor \#ff0000 toucan.png would display the image with a red background. rpng2 is a progressive viewer that simulates a web browser in some respects; it can display images against either a background color or a dynamically generated background image. For example: rpng2 -bgpat 16 toucan.png wpng is a purely command-line image converter from binary PBMPLUS/NetPBM format (.pgm or .ppm) to PNG; for example, wpng -time < toucan-notrans.ppm > toucan-notrans.png would convert the specified PPM file (using redirection) to PNG, auto- matically setting the PNG modification-time chunk. All options can be abbreviated to the shortest unique value; for example, "-bgc" for -bgcolor (versus "-bgp" for -bgpat), or "-g" for -gamma. ## Files: libpng/contrib/mips-msa/README OPERATING SYSTEM SPECIFIC MIPS MSA DETECTION -------------------------------------------- Detection of the ability to execute MIPS MSA on an MIPS processor requires operating system support. (The information is not available in user mode.) HOW TO USE THIS --------------- This directory contains C code fragments that can be included in mips/mips_init.c by setting the macro PNG_MIPS_MSA_FILE to the file name in "" or <> at build time. This setting is not recorded in pnglibconf.h and can be changed simply by rebuilding mips/msa_init.o with the required macro definition. For any of this code to be used the MIPS MSA code must be enabled and run time checks must be supported. I.e.: #if PNG_MIPS_MSA_OPT > 0 #ifdef PNG_MIPS_MSA_CHECK_SUPPORTED This is done in a 'configure' build by passing configure the argument: --enable-mips-msa=check Apart from the basic Linux implementation in contrib/mips-msa/linux.c this code is unsupported. That means that it is not even compiled on a regular basis and may be broken in any given minor release. FILE FORMAT ----------- Each file documents its testing status as of the last time it was tested (which may have been a long time ago): STATUS: one of: SUPPORTED: This indicates that the file is included in the regularly performed test builds and bugs are fixed when discovered. COMPILED: This indicates that the code did compile at least once. See the more detailed description for the extent to which the result was successful. TESTED: This means the code was fully compiled into the libpng test programs and these were run at least once. BUG REPORTS: an email address to which to send reports of problems The file is a fragment of C code. It should not define any 'extern' symbols; everything should be static. It must define the function: static int png_have_msa(png_structp png_ptr); That function must return 1 if MIPS MSA instructions are supported, 0 if not. It must not execute png_error unless it detects a bug. A png_error will prevent the reading of the PNG and in the future, writing too. BUG REPORTS ----------- If you mail a bug report for any file that is not SUPPORTED there may only be limited response. Consider fixing it and sending a patch to fix the problem - this is more likely to result in action. CONTRIBUTIONS ------------- You may send contributions of new implementations to png-mng-implement@sourceforge.net. Please write code in strict C90 C where possible. Obviously OS dependencies are to be expected. If you submit code you must have the authors permission and it must have a license that is acceptable to the current maintainer; in particular that license must permit modification and redistribution. Please try to make the contribution a single file and give the file a clear and unambiguous name that identifies the target OS. If multiple files really are required put them all in a sub-directory. You must also be prepared to handle bug reports from users of the code, either by joining the png-mng-implement mailing list or by providing an email for the "BUG REPORTS" entry or both. Please make sure that the header of the file contains the STATUS and BUG REPORTS fields as above. Please list the OS requirements as precisely as possible. Ideally you should also list the environment in which the code has been tested and certainly list any environments where you suspect it might not work. ## Files: libpng/contrib/oss-fuzz/README.txt Copyright (c) 2017 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Files in this directory are used by the oss-fuzz project (https://github.com/google/oss-fuzz/tree/master/projects/libpng). for "fuzzing" libpng. They were licensed by Google Inc, using the BSD-like Chromium license, which may be found at https://cs.chromium.org/chromium/src/LICENSE, or, if noted in the source, under the Apache-2.0 license, which may be found at http://www.apache.org/licenses/LICENSE-2.0 . If they have been modified, the derivatives are copyright Glenn Randers-Pehrson and are released under the same licenses as the originals. Several of the original files (libpng_read_fuzzer.options, png.dict, project.yaml) had no licensing information; we assumed that these were under the Chromium license. Any new files are released under the libpng license (see png.h). The files are Original Filename or derived Copyright License ========================= ========== ================ ========== Dockerfile* derived 2017, Glenn R-P Apache 2.0 build.sh derived 2017, Glenn R-P Apache 2.0 libpng_read_fuzzer.cc derived 2017, Glenn R-P Chromium libpng_read_fuzzer.options original 2015, Chrome Devs Chromium png.dict original 2015, Chrome Devs Chromium README.txt (this file) original 2017, Glenn R-P libpng * Dockerfile is a copy of the file used by oss-fuzz. build.sh, png.dict and libpng_read_fuzzer.* are the actual files used by oss-fuzz, which retrieves them from the libpng repository at Github. To do: exercise the progressive reader and the png encoder. ## Files: libpng/contrib/pngminus/README.txt PngMinus -------- (copyright Willem van Schaik, 1999-2019) Some history ------------ Soon after the creation of PNG in 1995, the need was felt for a set of pnmtopng / pngtopnm utilities. Independently Alexander Lehmann and I (Willem van Schaik) started such a project. Luckily we discovered this and merged the two, which later became part of NetPBM, available from SourceForge. These two utilities have many, many options and make use of most of the features of PNG, like gamma, alpha, sbit, text-chunks, etc. This makes the utilities quite complex and by now not anymore very maintainable. When we wrote these programs, libpng was still in an early stage. Therefore, lots of the functionality that we put in our software can now be done using transform-functions in libpng. Finally, to compile these programs, you need to have installed and compiled three libraries: libpng, zlib and netpbm. Especially the latter makes the whole setup a bit bulky. But that's unavoidable given the many features of pnmtopng. What now (1999) --------------- At this moment libpng is in a very stable state and can do much of the work done in pnmtopng. Also, pnmtopng needs to be upgraded to the new interface of libpng. Hence, it is time for a rewrite from the ground up of pnmtopng and pngtopnm. This will happen in the near future (stay tuned). The new package will get a different name to distinguish it from the old one: PngPlus. To experiment a bit with the new interface of libpng, I started off with a small prototype that contains only the basic functionality. It doesn't have any of the options to read or write special chunks and it will do no gamma correction. But this makes it also a simple program that is quite easy to understand and can serve well as a template for other software developments. By now there are of course a couple of programs, like Greg Roelofs' rpng/wpng, that can be used just as good. Can and can not --------------- As this is the small brother of the future PngPlus, I called this fellow PngMinus. Because I started this development in good-old Turbo-C, I avoided the use the netpbm library, which requires DOS extenders. Again, another reason to call it PngMinus (minus netpbm :-). So, part of the program are some elementary routines to read / write pgm- and ppm-files. It does not handle B&W pbm-files, but instead you could do pgm with bit- depth 1. The downside of this approach is that you can not use them on images that require blocks of memory bigger than 64k (the DOS version). For larger images you will get an out-of-memory error. As said before, PngMinus doesn't correct for gamma. When reading png-files you can do this just as well by piping the output of png2pnm to pnmgamma, one of the standard PbmPlus tools. This same scenario will most probably also be followed in the full-blown future PngPlus, with the addition of course of the possibility to create gamma-chunks when writing png-files. On the other hand it supports alpha-channels. When reading a png-image you can write the alpha-channel into a pgm-file. And when creating an RGB+A png-image, you just combine a ppm-file with a corresponding pgm-file containing the alpha-channel. When reading, transparency chunks are converted into an alpha-channel and from there on treated the same way. Finally you can opt for writing ascii or binary pgm- and ppm-files. When the bit-depth is 16, the format will always be ascii. Using it -------- To distinguish them from pnmtopng and PngPlus, the utilities are named png2pnm and pnm2png (2 instead of to). The input- and output-files can be given as parameters or through redirection. Therefore the programs can be part of a pipe. To list the options type "png2pnm -h" or "pnm2png -h". Just like Scandinavian furniture -------------------------------- You have to put it together yourself. I developed the software on MS-DOS with Turbo-C 3.0 and RedHat Linux 4.2 with gcc. In both cases I used libpng-1.0.4 and zlib-1.1.3. By now (2019) it is twenty years later and more current versions are OK. The makefile assumes that the libpng libraries can be found in ../.. and libz in ../../../zlib. But you can change this to for example ../libpng and ../zlib. The makefile creates two versions of each program, one with static library support and the other using shared libraries. If you create a ../pngsuite directory and then store the basn####.png files from PngSuite (http://www.schaik.com/pngsuite/) in there, you can test the proper functioning of PngMinus by running pngminus.sh. Warranty ------- Please, remember that this was just a small experiment to learn a few things. It will have many unforeseen features ... who said bugs? Use it when you are in need for something simple or when you want a starting point for developing your own stuff. The end ------- Willem van Schaik mailto:willem at schaik dot com http://www.schaik.com/png/ Oct 1999, Jan 2019 ## Files: libpng/contrib/pngsuite/README pngsuite -------- Copyright (c) Willem van Schaik, 1999, 2011, 2012 Two images (ftbbn0g01.png and ftbbn0g02.png) are by Glenn Randers-Pehrson, 2012 Permission to use, copy, modify, and distribute these images for any purpose and without fee is hereby granted. The 15 "bas*.png" images are part of the much larger PngSuite test-set of images, available for developers of PNG supporting software. The complete set, available at http:/www.schaik.com/pngsuite/, contains a variety of images to test interlacing, gamma settings, ancillary chunks, etc. The "ft*.png" images are "free/libre" replacements for the transparent corresponding t*.png images in the PngSuite. The "i*.png" images are the same images, but interlaced. The images in this directory represent the basic PNG color-types: grayscale (1-16 bit deep), full color (8 or 16 bit), paletted (1-8 bit) and grayscale or color images with alpha channel. You can use them to test the proper functioning of PNG software. filename depth type ------------ ------ -------------- basn0g01.png 1-bit grayscale basn0g02.png 2-bit grayscale basn0g04.png 4-bit grayscale basn0g08.png 8-bit grayscale basn0g16.png 16-bit grayscale basn2c08.png 8-bit truecolor basn2c16.png 16-bit truecolor basn3p01.png 1-bit paletted basn3p02.png 2-bit paletted basn3p04.png 4-bit paletted basn3p08.png 8-bit paletted basn4a08.png 8-bit gray with alpha basn4a16.png 16-bit gray with alpha basn6a08.png 8-bit RGBA basn6a16.png 16-bit RGBA ftbbn0g01.png 1-bit grayscale, black bKGD ftbbn0g02.png 2-bit grayscale, black bKGD ftbbn0g04.png 4-bit grayscale, black bKGD ftbbn2c16.png 16-bit truecolor, black bKGD ftbbn3p08.png 8-bit paletted, black bKGD ftbgn2c16.png 16-bit truecolor, gray bKGD ftbgn3p08.png 8-bit paletted, gray bKGD ftbrn2c08.png 8-bit truecolor, red bKGD ftbwn0g16.png 16-bit gray, white bKGD ftbwn3p08.png 8-bit paletted, white bKGD ftbyn3p08.png 8-bit paletted, yellow bKGD ftp0n0g08.png 8-bit grayscale, opaque ftp0n2c08.png 8-bit truecolor, opaque ftp0n3p08.png 8-bit paletted, opaque ftp1n3p08.png 8-bit paletted, no bKGD Here is the correct result of typing "pngtest -m bas*.png" in this directory: Testing basn0g01.png: PASS (524 zero samples) Filter 0 was used 32 times Testing basn0g02.png: PASS (448 zero samples) Filter 0 was used 32 times Testing basn0g04.png: PASS (520 zero samples) Filter 0 was used 32 times Testing basn0g08.png: PASS (3 zero samples) Filter 1 was used 9 times Filter 4 was used 23 times Testing basn0g16.png: PASS (1 zero samples) Filter 1 was used 1 times Filter 2 was used 31 times Testing basn2c08.png: PASS (6 zero samples) Filter 1 was used 5 times Filter 4 was used 27 times Testing basn2c16.png: PASS (592 zero samples) Filter 1 was used 1 times Filter 4 was used 31 times Testing basn3p01.png: PASS (512 zero samples) Filter 0 was used 32 times Testing basn3p02.png: PASS (448 zero samples) Filter 0 was used 32 times Testing basn3p04.png: PASS (544 zero samples) Filter 0 was used 32 times Testing basn3p08.png: PASS (4 zero samples) Filter 0 was used 32 times Testing basn4a08.png: PASS (32 zero samples) Filter 1 was used 1 times Filter 4 was used 31 times Testing basn4a16.png: PASS (64 zero samples) Filter 0 was used 1 times Filter 1 was used 2 times Filter 2 was used 1 times Filter 4 was used 28 times Testing basn6a08.png: PASS (160 zero samples) Filter 1 was used 1 times Filter 4 was used 31 times Testing basn6a16.png: PASS (1072 zero samples) Filter 1 was used 4 times Filter 4 was used 28 times libpng passes test Willem van Schaik October 1999 ## Files: libpng/contrib/powerpc-vsx/README OPERATING SYSTEM SPECIFIC POWERPC DETECTION -------------------------------------------- Detection of the ability to execute POWERPC on processor requires operating system support. (The information is not available in user mode.) Currently only this feature is supported only for linux platform. HOW TO USE THIS --------------- This directory contains C code fragments that can be included in powerpc/powerpc_init.c by setting the macro PNG_POWERPC_VSX_FILE to the file name in "" or <> at build time. This setting is not recorded in pnglibconf.h and can be changed simply by rebuilding arm/arm_init.o with the required macro definition. For any of this code to be used the POWERPC code must be enabled and run time checks must be supported. I.e.: #if PNG_POWERPC_VSX_OPT > 0 #ifdef PNG_POWERPC_VSX_CHECK_SUPPORTED This is done in a 'configure' build by passing configure the argument: --enable-powerpc-vsx=check FILE FORMAT ----------- Each file documents its testing status as of the last time it was tested (which may have been a long time ago): STATUS: one of: SUPPORTED: This indicates that the file is included in the regularly performed test builds and bugs are fixed when discovered. COMPILED: This indicates that the code did compile at least once. See the more detailed description for the extent to which the result was successful. TESTED: This means the code was fully compiled into the libpng test programs and these were run at least once. BUG REPORTS: an email address to which to send reports of problems The file is a fragment of C code. It should not define any 'extern' symbols; everything should be static. It must define the function: static int png_have_vsx(png_structp png_ptr); That function must return 1 if POWERPC_VSX instructions are supported, 0 if not. It must not execute png_error unless it detects a bug. A png_error will prevent the reading of the PNG and in the future, writing too. BUG REPORTS ----------- If you mail a bug report for any file that is not SUPPORTED there may only be limited response. Consider fixing it and sending a patch to fix the problem - this is more likely to result in action. CONTRIBUTIONS ------------- You may send contributions of new implementations to png-mng-implement@sourceforge.net. Please write code in strict C90 C where possible. Obviously OS dependencies are to be expected. If you submit code you must have the authors permission and it must have a license that is acceptable to the current maintainer; in particular that license must permit modification and redistribution. Please try to make the contribution a single file and give the file a clear and unambiguous name that identifies the target OS. If multiple files really are required put them all in a sub-directory. You must also be prepared to handle bug reports from users of the code, either by joining the png-mng-implement mailing list or by providing an email for the "BUG REPORTS" entry or both. Please make sure that the header of the file contains the STATUS and BUG REPORTS fields as above. Please list the OS requirements as precisely as possible. Ideally you should also list the environment in which the code has been tested and certainly list any environments where you suspect it might not work. ## Files: libpng/contrib/tools/README.txt This directory (contrib/tools) contains tools used by the authors of libpng. Code and data placed in this directory is not required to build libpng, however the code in this directory has been used to generate data or code in the body of the libpng source. The source code identifies where this has been done. Code in this directory may not compile on all operating systems that libpng supports. NO COPYRIGHT RIGHTS ARE CLAIMED TO ANY OF THE FILES IN THIS DIRECTORY. To the extent possible under law, the authors have waived all copyright and related or neighboring rights to this work. This work is published from: United States. The files may be used freely in any way. The source code and comments in this directory are the original work of the people named below. No other person or organization has made contributions to the work in this directory. ORIGINAL AUTHORS The following people have contributed to the code in this directory. None of the people below claim any rights with regard to the contents of this directory. John Bowler Glenn Randers-Pehrson ## Files: libpng/contrib/visupng/README.txt Microsoft Developer Studio Build File, Format Version 6.00 for VisualPng ------------------------------------------------------------------------ Copyright 2000, Willem van Schaik. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h As a PNG .dll demo VisualPng is finished. More features would only hinder the program's objective. However, further extensions (like support for other graphics formats) are in development. To get these, or for pre-compiled binaries, go to "http://www.schaik.com/png/visualpng.html". ------------------------------------------------------------------------ Assumes that libpng DLLs and LIBs are in ..\..\projects\msvc\win32\libpng zlib DLLs and LIBs are in ..\..\projects\msvc\win32\zlib libpng header files are in ..\..\..\libpng zlib header files are in ..\..\..\zlib the pngsuite images are in ..\pngsuite To build: 1) On the main menu Select "Build|Set Active configuration". Choose the configuration that corresponds to the library you want to test. This library must have been built using the libpng MS project located in the "..\..\mscv" subdirectory. 2) Select "Build|Clean" 3) Select "Build|Rebuild All" 4) After compiling and linking VisualPng will be started to view an image from the PngSuite directory. Press Ctrl-N (and Ctrl-V) for other images. To install: When distributing VisualPng (or a further development) the following options are available: 1) Build the program with the configuration "Win32 LIB" and you only need to include the executable from the ./lib directory in your distribution. 2) Build the program with the configuration "Win32 DLL" and you need to put in your distribution the executable from the ./dll directory and the dll's libpng1.dll, zlib.dll and msvcrt.dll. These need to be in the user's PATH. Willem van Schaik Calgary, June 6th 2000 P.S. VisualPng was written based on preliminary work of: - Simon-Pierre Cadieux - Glenn Randers-Pehrson - Greg Roelofs ## Files: libpng/projects/visualc71/README.txt Microsoft Developer Studio Project File, Format Version 7.10 for libpng. Copyright (C) 2004 Simon-Pierre Cadieux. This code is released under the libpng license. For conditions of distribution and use, see copyright notice in png.h NOTE: This project will be removed from libpng-1.5.0. It has been replaced with the "vstudio" project. Assumptions: * The libpng source files are in ..\.. * The zlib source files are in ..\..\..\zlib * The zlib project file is in . /* Warning: This is until the zlib project files get integrated into the next zlib release. The final zlib project directory will then be ..\..\..\zlib\projects\visualc71. */ To use: 1) On the main menu, select "File | Open Solution". Open "libpng.sln". 2) Display the Solution Explorer view (Ctrl+Alt+L) 3) Set one of the project as the StartUp project. If you just want to build the binaries set "libpng" as the startup project (Select "libpng" tree view item + Project | Set as StartUp project). If you want to build and test the binaries set it to "pngtest" (Select "pngtest" tree view item + Project | Set as StartUp project) 4) Select "Build | Configuration Manager...". Choose the configuration you wish to build. 5) Select "Build | Clean Solution". 6) Select "Build | Build Solution (Ctrl-Shift-B)" This project builds the libpng binaries as follows: * Win32_DLL_Release\libpng16.dll DLL build * Win32_DLL_Debug\libpng16d.dll DLL build (debug version) * Win32_DLL_VB\libpng16vb.dll DLL build for Visual Basic, using stdcall * Win32_LIB_Release\libpng.lib static build * Win32_LIB_Debug\libpngd.lib static build (debug version) Notes: If you change anything in the source files, or select different compiler settings, please change the DLL name to something different than any of the above names. Also, make sure that in your "pngusr.h" you define PNG_USER_PRIVATEBUILD and PNG_USER_DLLFNAME_POSTFIX according to the instructions provided in "pngconf.h". All DLLs built by this project use the Microsoft dynamic C runtime library MSVCR71.DLL (MSVCR71D.DLL for debug versions). If you distribute any of the above mentioned libraries you may have to include this DLL in your package. For a list of files that are redistributable in Visual Studio see $(VCINSTALLDIR)\redist.txt. ## Files: libpng/projects/vstudio/README.txt Instructions for building libpng using Microsoft Visual Studio ============================================================== Copyright (c) 2018,2022 Cosmin Truta Copyright (c) 2010,2013,2015 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h This directory contains a solution for building libpng under Microsoft Visual Studio 2019. It may also work under earlier or later versions of Visual Studio. You should be familiar with Visual Studio before using this solution. Initial preparations -------------------- You must enter some information in zlib.props before attempting to build with this 'solution'. Please read and edit zlib.props first. You will probably not be familiar with the contents of zlib.props - do not worry, it is mostly harmless. This is all you need to do to build the 'release' and 'release library' configurations. Debugging --------- The release configurations default to /Ox optimization. Full debugging information is produced (in the .pdb), but if you encounter a problem the optimization may make it difficult to debug. Simply rebuild with a lower optimization level (e.g. /Od.) Linking your application ------------------------ Normally you should link against the 'release' configuration. This builds a DLL for libpng with the default runtime options used by Visual Studio. In particular the runtime library is the "MultiThreaded DLL" version. If you use Visual Studio defaults to build your application, you should have no problems. If you don't use the Visual Studio defaults your application must still be built with the default runtime option (/MD). If, for some reason, it is not then your application will crash inside libpng16.dll as soon as libpng tries to read from a file handle you pass in. If you do not want to use the DLL, and prefer static linking instead, you may choose the 'release library' configuration. This is built with a non-standard runtime library - the "MultiThreaded" version. When you build your application, it must be compiled with this option (/MT), otherwise it will not build (if you are lucky) or it will crash (if you are not.) See the WARNING file that is distributed with this README. Stop reading here ----------------- You have enough information to build a working application. Debug versions have limited support ----------------------------------- This solution includes limited support for debug versions of libpng. You do not need these unless your own solution itself uses debug builds (it is far more effective to debug on the release builds, there is no point building a special debug build unless you have heap corruption problems that you can't track down.) The debug build of libpng is minimally supported. Support for debug builds of zlib is also minimal. Please keep this in mind, if you want to use it. WARNING ------- Libpng 1.6.x does not use the default run-time library when building static library builds of libpng; instead of the shared DLL runtime, it uses a static runtime. If you need to change this, make sure to change the setting on all the relevant projects: libpng zlib all the test programs The runtime library settings for each build are as follows: Release Debug DLL /MD /MDd Library /MT /MTd Also, be sure to build libpng, zlib, and your project, all for the same platform (e.g., 32-bit or 64-bit). ## Files: openjpeg/README.md # OPENJPEG Library and Applications ## What is OpenJPEG ? OpenJPEG is an open-source JPEG 2000 codec written in C language. It has been developed in order to promote the use of [JPEG 2000](http://www.jpeg.org/jpeg2000), a still-image compression standard from the Joint Photographic Experts Group ([JPEG](http://www.jpeg.org)). Since April 2015, it is officially recognized by ISO/IEC and ITU-T as a [JPEG 2000 Reference Software](http://www.itu.int/rec/T-REC-T.804-201504-I!Amd2). ## Who can use the code ? [![badge-license]][link-license] Anyone. As the OpenJPEG code is released under the [BSD 2-clause "Simplified" License][link-license], anyone can use or modify the code, even for commercial applications. The only restriction is to retain the copyright in the sources or in the binaries documentation. Of course, if you modified the code in a way that might be of interest for other users, you are encouraged to share it (through a [github pull request](https://github.com/uclouvain/openjpeg/pulls) or by filling an [issue](https://github.com/uclouvain/openjpeg/issues)) but this is not a requirement. ## How to install and use OpenJPEG ? API Documentation needs a major refactoring. Meanwhile, you can check [installation](https://github.com/uclouvain/openjpeg/wiki/Installation) instructions and [codec documentation](https://github.com/uclouvain/openjpeg/wiki/DocJ2KCodec). ## Current Status [![badge-build]][link-build] [![badge-msvc-build]][link-msvc-build] [![badge-coverity]][link-coverity] ## Who are the developers ? The library is developed and maintained by the Image and Signal Processing Group ([ISPGroup](http://sites.uclouvain.be/ispgroup/)), in the Université catholique de Louvain ([UCL](http://www.uclouvain.be/en-index.html), with the support of the [CNES](https://cnes.fr/), the [CS](http://www.c-s.fr/) company and the [intoPIX](http://www.intopix.com) company. The JPWL module has been developed by the Digital Signal Processing Lab ([DSPLab](http://dsplab.diei.unipg.it/)) of the University of Perugia, Italy ([UNIPG](http://www.unipg.it/)). ## Details on folders hierarchy * src * lib * openjp2: contains the sources of the openjp2 library (Part 1 & 2) * openjpwl: contains the additional sources if you want to build a JPWL-flavoured library. * openjpip: complete client-server architecture for remote browsing of jpeg 2000 images. * openjp3d: JP3D implementation * openmj2: MJ2 implementation * bin: contains all applications that use the openjpeg library * common: common files to all applications * jp2: a basic codec * mj2: motion jpeg 2000 executables * jpip: OpenJPIP applications (server and dec server) * java: a Java client viewer for JPIP * jp3d: JP3D applications * tcltk: a test tool for JP3D * wx * OPJViewer: gui for displaying j2k files (based on wxWidget) * wrapping * java: java jni to use openjpeg in a java program * thirdparty: thirdparty libraries used by some applications. These libraries will be built only if there are not found on the system. Note that libopenjpeg itself does not have any dependency. * doc: doxygen documentation setup file and man pages * tests: configuration files and utilities for the openjpeg test suite. All test images are located in [openjpeg-data](https://github.com/uclouvain/openjpeg-data) repository. * cmake: cmake related files * scripts: scripts for developers See [LICENSE][link-license] for license and copyright information. See [INSTALL](https://github.com/uclouvain/openjpeg/blob/master/INSTALL.md) for installation procedures. See [NEWS](https://github.com/uclouvain/openjpeg/blob/master/NEWS.md) for user visible changes in successive releases. ## API/ABI An API/ABI timeline is automatically updated [here][link-api-timeline]. OpenJPEG strives to provide a stable API/ABI for your applications. As such it only exposes a limited subset of its functions. It uses a mechanism of exporting/hiding functions. If you are unsure which functions you can use in your applications, you should compile OpenJPEG using something similar to gcc: `-fvisibility=hidden` compilation flag. See also: http://gcc.gnu.org/wiki/Visibility On windows, MSVC directly supports export/hiding function and as such the only API available is the one supported by OpenJPEG. [comment-license]: https://img.shields.io/github/license/uclouvain/openjpeg.svg "https://img.shields.io/badge/license-BSD--2--Clause-blue.svg" [badge-license]: https://img.shields.io/badge/license-BSD--2--Clause-blue.svg "BSD 2-clause \"Simplified\" License" [link-license]: https://github.com/uclouvain/openjpeg/blob/master/LICENSE "BSD 2-clause \"Simplified\" License" [badge-build]: https://travis-ci.org/uclouvain/openjpeg.svg?branch=master "Build Status" [link-build]: https://travis-ci.org/uclouvain/openjpeg "Build Status" [badge-msvc-build]: https://ci.appveyor.com/api/projects/status/github/uclouvain/openjpeg?branch=master&svg=true "Windows Build Status" [link-msvc-build]: https://ci.appveyor.com/project/detonin/openjpeg/branch/master "Windows Build Status" [badge-coverity]: https://scan.coverity.com/projects/6383/badge.svg "Coverity Scan Build Status" [link-coverity]: https://scan.coverity.com/projects/uclouvain-openjpeg "Coverity Scan Build Status" [link-api-timeline]: http://www.openjpeg.org/abi-check/timeline/openjpeg "OpenJPEG API/ABI timeline" ## Files: tesseract/LICENSE Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/README.md # Tesseract OCR [![Build status](https://ci.appveyor.com/api/projects/status/miah0ikfsf0j3819/branch/master?svg=true)](https://ci.appveyor.com/project/zdenop/tesseract/) [![Build status](https://github.com/tesseract-ocr/tesseract/actions/workflows/sw.yml/badge.svg)](https://github.com/tesseract-ocr/tesseract/actions/workflows/sw.yml)\ [![Coverity Scan Build Status](https://scan.coverity.com/projects/tesseract-ocr/badge.svg)](https://scan.coverity.com/projects/tesseract-ocr) [![CodeQL](https://github.com/tesseract-ocr/tesseract/workflows/CodeQL/badge.svg)](https://github.com/tesseract-ocr/tesseract/security/code-scanning) [![OSS-Fuzz](https://img.shields.io/badge/oss--fuzz-fuzzing-brightgreen)](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=2&q=proj:tesseract-ocr) \ [![GitHub license](https://img.shields.io/badge/license-Apache--2.0-blue.svg)](https://raw.githubusercontent.com/tesseract-ocr/tesseract/main/LICENSE) [![Downloads](https://img.shields.io/badge/download-all%20releases-brightgreen.svg)](https://github.com/tesseract-ocr/tesseract/releases/) ## Table of Contents * [Tesseract OCR](#tesseract-ocr) * [About](#about) * [Brief history](#brief-history) * [Installing Tesseract](#installing-tesseract) * [Running Tesseract](#running-tesseract) * [For developers](#for-developers) * [Support](#support) * [License](#license) * [Dependencies](#dependencies) * [Latest Version of README](#latest-version-of-readme) ## About This package contains an **OCR engine** - `libtesseract` and a **command line program** - `tesseract`. Tesseract 4 adds a new neural net (LSTM) based [OCR engine](https://en.wikipedia.org/wiki/Optical_character_recognition) which is focused on line recognition, but also still supports the legacy Tesseract OCR engine of Tesseract 3 which works by recognizing character patterns. Compatibility with Tesseract 3 is enabled by using the Legacy OCR Engine mode (--oem 0). It also needs [traineddata](https://tesseract-ocr.github.io/tessdoc/Data-Files.html) files which support the legacy engine, for example those from the [tessdata](https://github.com/tesseract-ocr/tessdata) repository. Stefan Weil is the current lead developer. Ray Smith was the lead developer until 2018. The maintainer is Zdenko Podobny. For a list of contributors see [AUTHORS](https://github.com/tesseract-ocr/tesseract/blob/main/AUTHORS) and GitHub's log of [contributors](https://github.com/tesseract-ocr/tesseract/graphs/contributors). Tesseract has **unicode (UTF-8) support**, and can **recognize [more than 100 languages](https://tesseract-ocr.github.io/tessdoc/Data-Files-in-different-versions.html)** "out of the box". Tesseract supports **[various image formats](https://tesseract-ocr.github.io/tessdoc/InputFormats)** including PNG, JPEG and TIFF. Tesseract supports **various output formats**: plain text, hOCR (HTML), PDF, invisible-text-only PDF, TSV and ALTO. You should note that in many cases, in order to get better OCR results, you'll need to **[improve the quality](https://tesseract-ocr.github.io/tessdoc/ImproveQuality.html) of the image** you are giving Tesseract. This project **does not include a GUI application**. If you need one, please see the [3rdParty](https://tesseract-ocr.github.io/tessdoc/User-Projects-%E2%80%93-3rdParty.html) documentation. Tesseract **can be trained to recognize other languages**. See [Tesseract Training](https://tesseract-ocr.github.io/tessdoc/Training-Tesseract.html) for more information. ## Brief history Tesseract was originally developed at Hewlett-Packard Laboratories Bristol UK and at Hewlett-Packard Co, Greeley Colorado USA between 1985 and 1994, with some more changes made in 1996 to port to Windows, and some C++izing in 1998. In 2005 Tesseract was open sourced by HP. From 2006 until November 2018 it was developed by Google. Major version 5 is the current stable version and started with release [5.0.0](https://github.com/tesseract-ocr/tesseract/releases/tag/5.0.0) on November 30, 2021. Newer minor versions and bugfix versions are available from [GitHub](https://github.com/tesseract-ocr/tesseract/releases/). Latest source code is available from [main branch on GitHub](https://github.com/tesseract-ocr/tesseract/tree/main). Open issues can be found in [issue tracker](https://github.com/tesseract-ocr/tesseract/issues), and [planning documentation](https://tesseract-ocr.github.io/tessdoc/Planning.html). See **[Release Notes](https://tesseract-ocr.github.io/tessdoc/ReleaseNotes.html)** and **[Change Log](https://github.com/tesseract-ocr/tesseract/blob/main/ChangeLog)** for more details of the releases. ## Installing Tesseract You can either [Install Tesseract via pre-built binary package](https://tesseract-ocr.github.io/tessdoc/Installation.html) or [build it from source](https://tesseract-ocr.github.io/tessdoc/Compiling.html). A C++ compiler with good C++17 support is required for building Tesseract from source. ## Running Tesseract Basic **[command line usage](https://tesseract-ocr.github.io/tessdoc/Command-Line-Usage.html)**: tesseract imagename outputbase [-l lang] [--oem ocrenginemode] [--psm pagesegmode] [configfiles...] For more information about the various command line options use `tesseract --help` or `man tesseract`. Examples can be found in the [documentation](https://tesseract-ocr.github.io/tessdoc/Command-Line-Usage.html#simplest-invocation-to-ocr-an-image). ## For developers Developers can use `libtesseract` [C](https://github.com/tesseract-ocr/tesseract/blob/main/include/tesseract/capi.h) or [C++](https://github.com/tesseract-ocr/tesseract/blob/main/include/tesseract/baseapi.h) API to build their own application. If you need bindings to `libtesseract` for other programming languages, please see the [wrapper](https://tesseract-ocr.github.io/tessdoc/AddOns.html#tesseract-wrappers) section in the AddOns documentation. Documentation of Tesseract generated from source code by doxygen can be found on [tesseract-ocr.github.io](https://tesseract-ocr.github.io/). ## Support Before you submit an issue, please review **[the guidelines for this repository](https://github.com/tesseract-ocr/tesseract/blob/main/CONTRIBUTING.md)**. For support, first read the [documentation](https://tesseract-ocr.github.io/tessdoc/), particularly the [FAQ](https://tesseract-ocr.github.io/tessdoc/FAQ.html) to see if your problem is addressed there. If not, search the [Tesseract user forum](https://groups.google.com/g/tesseract-ocr), the [Tesseract developer forum](https://groups.google.com/g/tesseract-dev) and [past issues](https://github.com/tesseract-ocr/tesseract/issues), and if you still can't find what you need, ask for support in the mailing-lists. Mailing-lists: * [tesseract-ocr](https://groups.google.com/g/tesseract-ocr) - For tesseract users. * [tesseract-dev](https://groups.google.com/g/tesseract-dev) - For tesseract developers. Please report an issue only for a **bug**, not for asking questions. ## License The code in this repository is licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. **NOTE**: This software depends on other packages that may be licensed under different open source licenses. Tesseract uses [Leptonica library](http://leptonica.com/) which essentially uses a [BSD 2-clause license](http://leptonica.com/about-the-license.html). ## Dependencies Tesseract uses [Leptonica library](https://github.com/DanBloomberg/leptonica) for opening input images (e.g. not documents like pdf). It is suggested to use leptonica with built-in support for [zlib](https://zlib.net), [png](https://sourceforge.net/projects/libpng) and [tiff](http://www.simplesystems.org/libtiff) (for multipage tiff). ## Latest Version of README For the latest online version of the README.md see: ## Files: tiff/LICENSE.md # LibTIFF license Copyright © 1988-1997 Sam Leffler\ Copyright © 1991-1997 Silicon Graphics, Inc. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/README.md TIFF Software Distribution -------------------------- This file is just a placeholder; all the documentation is now in HTML in the html directory. To view the documentation point your favorite WWW viewer at html/index.html; e.g. firefox html/index.html If you don't have an HTML viewer then you can read the HTML source or fetch a PostScript version of this documentation from the directory http://download.osgeo.org/libtiff/ If you can't hack either of these options then basically what you want to do is: % ./configure % make % su # make install More information, email contacts, and mailing list information can be found online at http://www.simplesystems.org/libtiff/ Source code repository ---------------------- [GitLab](https://gitlab.com/libtiff/libtiff) Bug database ------------ [GitLab issues](https://gitlab.com/libtiff/libtiff/issues) Previously, the project used [Bugzilla](http://bugzilla.maptools.org/buglist.cgi?product=libtiff). This is no longer in use, and all remaining issues have been migrated to GitLab. Use and Copyright ----------------- Silicon Graphics has seen fit to allow us to give this work away. It is free. There is no support or guarantee of any sort as to its operations, correctness, or whatever. If you do anything useful with all or parts of it you need to honor the copyright notices. I would also be interested in knowing about it and, hopefully, be acknowledged. The legal way of saying that is: Copyright (c) 1988-1997 Sam Leffler Copyright (c) 1991-1997 Silicon Graphics, Inc. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: toolbin/color/icc_creator/README.txt Copyright (C) 2001-2023 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. This is a windows application for creating ICC profiles. It has multiple uses described below. The Device N profiles controls can be used to accurately define color for PDF and PS DeviceN color spaces. To use this tool, you will need to have CIELAB measurements of M^N equally spaced in device values from min to max inkoverprinted spot colors (or spot and process colors). See the example folder for sample input when we have N=2 colors with M=6 samples. You will also need a file that has the names of the colorants as they are used for the DeviceN color space in the document. The order of the names must be related to the rate of change of the CIELAB data in the hypercube of measurements. The first name relates to the device value that changes more slowly in the CIELAB data, while the last name relates to the device value that changes more rapidly in the CIELAB data. To include the DeviceN ICC profiles in ghostscript when processing a PDF or PS file that includes those spaces, use -sDeviceNProfile="5channel.icc; 6channel.icc; duotone.icc". The Thresholding Profiles controls allow one to generate ICC profiles that will threshold the output value for the device gray profile. The threshold range is based upon L*. Values with an L* above the threshold value will map to white those below will map to black. Default Profile Generation is used to create ICC profiles that can emulate the old PS color mapping routines. The mapping to CMYK requires the specification of a particular undercolor and black generation mappings (UCR/BG). The data is specified by the user in a table of tab delimited values. The range of values is 0 to 255 and example sets of data are given in the files ucr_bg_no_k.txt and ucr_bg_max_k. The CMYK ICC profiles generated from these data are given in no_k.icc and max_k.icc. The max_k.icc profile may be useful in generating black only text output from neutral source data. This is achieved using ghostscript with the option -sTextICCProfile=max_k.icc (where max_k.icc is included in ./iccprofiles and ghostscript is built with the ROM file system). ## Files: toolbin/halftone/ETS/README.txt Release notes ETS version 150 8 May 2014 Copyright 2000-2014 Artifex Sotware Inc. This release removed the SSE and VEC code so that we could focus on repairing lingering issues with the C code. Robin fixed issues in the actual ETS code. In particular he fixed issues with the "white count test" and the FS weights. We did a fair amount of testing with the various parameters. We also added more useful image outputs in the test bed allowing the creation of multiple colorants in PSD format including 16bit. We also moved to a Visual Studio solution for the project. Release notes ETS version 138 26 Apr 2006 Copyright 2000-2010 Artifex Sotware Inc. This is the latest unified release of Even Tone Screening. The core ETS algorithm has been highly tuned for modern inkjet printers such as the latest EPSON seven color devices. In addition, there are alternate versions of the core screening algorithm written for both Altivec (G4/PPC 970) and SSE2 (Pentium 4) instruction sets. The quality of the results with assembly speedup is comparable, but will not be bit-identical to the C code. README for Even Better Screening EBS is the newest refinement of Even Toned Screening. It is based on the same fundamental algorithms as ETS, and adds several interesting features. 1. It's possible to screen all planes in tandem, rather than screening each plane independent. The result is a more even distribution of inks, and an avoidance of "interference patterns" between similar fine structure in the planes. 2. The number of levels of output is adjustable at runtime. Most modern inkjets support multiple drop sizes, and the number of discrete drop sizes seems to be increasing. 3. Dot aspect ratios of 1:1, 2:1, and 4:1 are directly supported. 4. An option exists to apply Even Toned smoothing to shadow dots as well as highlight dots. In print modes where individual white dots in the shadow areas are visible, this avoids wormy patterns. It is a runtime option because there is a speed penalty. [ Note: this option not fully supported in the current release ] 5. More parameters are tunable at runtime, including the amplitude of added random noise, and the scale for the Even Toned output dependent feedback signal. Some usage tips: The default parameters for even_c1_scale, rand_scale, and do_shadows are all 0, and should give good results. The reasonable range for rand_scale is about -4 .. 3. Higher values result in more randomness. The effects should be quite easy to see. even_c1_scale produces a more subtle effect. Values of -1 or -2 should produce slightly less regular patterns in highlights. This might be a good idea on printers with poor accuracy between passes, for example in bidirectional modes. As mentioned above, set do_shadows to 1 if wormy patterns are visible in shadows. At high resolutions on most inkjet printers, the dots are so close together that individual white pixels cannot be seen. The planes in the call to even_better_line() should be sorted in darkest-to-lightest order, for example K, C, M, c, m, Y. The strengths[] parameter should be an array of approximate darkness values for the inks, for example { 128, 50, 50, 25, 25, 10 }. It might be worth fiddling with the strength parameters. Compiling SSE2 To enable SSE2 in evenbetter-rll.c, enable the #define USE_AVEC conditional compile. The SSE2 optimized code is in the assembly language file eb_sse2.s. In addition, I've included two win32-format object files, with and without the leading underscore. I believe the former is the one to use for both MS and Watcom compilers. You can use the NASM tool to reassemble the eb_sse2.s file. Use the following command line: nasm eb_sse2.s -f win32 Most compilers will need an additional underscore prefix in front of the global symbols. There's an _eb_sse2.s file that's the same as eb_sse2.s except for this change, and it can be assembled using the same command line as above, just with _eb_sse2.s as the filename. The included Makefile_sse2 will compile the test_evenbetter executable on Linux platforms. This utility acts as a pipe and converts pgm to pgm. Release notes for 2003-10-21 Altivec-optimized EvenBetter code drop 1. Compiling To enable Altivec in evenbetter-rll.c, enable the #define USE_AVEC conditional compile. The Altivec optimized code is in the C-language file eb_avec.c, using the Altivec intrinsics. Most up-to-date compilers should have support for this. With GCC, use the following command line: gcc -faltivec -O2 -Wall -Wmissing-prototypes -c -o eb_avec.o eb_avec.c Note that the -O3 option was tested and did not succeed, at least on GCC 3.3, build 1435. On other compilers, it may be necessary to define the HAVE_ALTIVEC_H preprocessor macro. The included Makefile_avec will compile the test_evenbetter executable on OS X platforms. This utility acts as a pipe and converts pgm to pgm. 2. Code changes For the most part, this code uses the same API as before. However, there is one important change: destination buffers _must_ be aligned to 16-byte boundaries, and should also have an additional 16 bytes of padding at the end. I've provided eb_malloc_aligned() and eb_free_aligned() as handy utility functions for allocating aligned memory blocks. See the allocation of "obuf" in the sample code (test_evenbetter.c) for an example. 3. Performance and quality Barring bugs, quality should be almost identical to the scalar version. I did not implement the test for G4 capability, as it's fairly dependent on platform specifics. Currently, G4 is always assumed, so the code is likely to crash when run on G3's. To fix this, edit the line "using_vectors = 1;" so that vectors are only enabled when the G4/G5 is detected. See: http://developer.apple.com/hardware/ve/g3_compatibility.html Performance is most optimal when the number of planes is a multiple of 4. Screening 5 planes will take about the same time as screening 8. Tone-dependent randomness scaling As of version 134, ETS can accept lookup tables to control the tone- dependent randomness scaling. If you do not wish to use this feature, you must set the new rand_scale_luts field of EvenBetterParams to NULL. Otherwise, rand_scale_luts has the same layout as luts - an array of pointers, one for each plane, to int arrays of size ET_SRC_MAX + 1. Each value of the array corresponds to one input tone level; in general, if you change the luts, you'll want to change the rand_scale_luts accordingly. The nominal value is 65536, which is a fairly small level of randomness. In general, gray values near round rational numbers (1/2, 1/3, etc.) will need higher levels of randomness in order to avoid repeating patterns. The current default, as computed in eb_compute_randshift, peaks at 2 << 19 for 1/4 and 1/2, 2 << 18 for 1/3, and 2 << 17 for 1/6 and 1/9. Note also that even when using the rand_scale_luts, the rand_scale parameter still has the effect of globally scaling the randomness value. Each increment by one of rand_scale is equivalent to doubling the values in the rand_scale luts. simultaneously doubling the rand_scale_lut values and decreasing rand_scale by 1 has no effect. To really fine-tune the tone-dependent randomness for a device, we recommend running grayscale test files with several different constant values for the luts, then visually choosing the best value for each grayscale value in the test file. Different devices will be sensitive to different patterns, depending on the details of the weaving. Lastly, keep in mind that the randomness scaling is quantized to powers of two in the scalar code, but is smoothly variable in the vector versions. Notes on per-channel even_c1_scale settings As of version 135, this code supports per-channel setting of even_c1_scale, as a way to control artifacts in "dirty highlights". Recommended values are -2 for full-strength inks for which light variants exist (magenta, cyan, and black on EPSON 7-color printer), and 0 for all other inks. Notes on mseveneighths The eb_avec vector version contains an experimental workaround for problems in "dirty highlights". It is disabled by default, but can easily be enabled by uncommenting these two lines in eb_avec.c: // f_4 = vec_abs(f_3); // f_3 = vec_madd(f_4, mseveneighths, f_3); The values in mseveneighths in eb_avec.c can also be adjusted - while the current value is -.875, values of -.90 or -.95 may be more effective in controlling the dirty highlights problem. However, values too near -1 seem to create other artifacts. Pending feedback from users, this experimental feature will either be removed from all versions, or added to all versions. Partial version history Version 138 contains a fix to eb_malloc_aligned for crashes when the base allocator is aligned to 4-byte but not 8-byte boundaries. Also, the .obj files for eb_sse2.s are updated, while in some 137 tarballs they were stale. Version 137 mostly contains small changes to the vector code to make it more like the scalar version. [There was never a consistent 136 release, although some code did go out with that version number] Version 135 adds per-channel control of even_c1_scale. Version 134 has tone-dependent randomness scaling. Version 133 has some fixes to make the code compile in C++. Version 132 fixes some improperly merged files in the 131 release. Version 131 contains a fix for a subtle problem in the noisy highlight change in 130, as well as more robust support for > 8bpp deep images on vector platforms. Version 130 contains a quality improvement in noisy highlight regions. Version 129 contains performance tuning for the SSE2 implementation. Version 128 contains a significant speedup in the prep (Altivec only), specialized to 8-but LUT's with gamma 1.0, 1.8, or 2.0. There is a new "gamma" parameter to enable it - a value of 0.0 uses the old LUT-based code. In addition, make sure the input buffer is allocated with 16-byte alignment, and is also padded up to a size which is a multiple of 16 bytes. This version also unifies the SSE2 release. To enable, undefine USE_AVEC and define USE_SSE2 at the top of evenbetter-rll.c. ## Files: toolbin/halftone/gen_ordered/README Ordered Dither Screen Creation Tool. Copyright 2010-2021 Artifex Software, Inc. This code is designed to enable the creation of clustered dot threshold arrays for halftoning, which can provide high lpi without quantization issues. As the lpi requirements of a halftone screen increases and begins to approach the limits of the printer resolution, the size of the clustered dot decreases and the number of levels that can be represented by the clustered dot decreases. To overcome this, the clustered dots are placed in a larger threshold array, where the threshold values of the individual clustered dots scaled are dithered to enable the representation of more gray levels within the larger screen. The dithering is performed in a manner that is pleasing to the visual system. The command line and parameters are as follows: gen_ordered [-a target_angle] -d [dot_shape] -f [ps | ppm | raw | raw16 | tos] [-l target_lpi] [-q target_quantization_levels] [-r resolution] [-s size_of_supercell] where: target_angle: The desired screen angle in degrees. [default 0 degrees] dot_shape: The index number of the dot shape, CIRCLE, REDBOOK_CIRCLE, INVERTED, RHOMBOID, LINE_X, LINE_Y, DIAMOND1, DIAMOND2 or ROUNDSPOT values from 0 to 8, respectively. target_lpi: The desired resolution of the screen in lines/inch. [default 300dpi] target_quantization_levels: indicates the desired number of "gray" levels that you wish to achieve with the screen (e.g. 256). [default 256] Special note on this option. To achieve a particular quantization level, it is neccessary that the size_of_supercell is sufficiently large. Since the default size of size_of_supercell is set to 1, the minimum possible size is always used and the target quantization may not be achieved. A warning is displayed to indicate this condition and a minimum size is suggested. resolution: The resolution of the output device in dots/inch. Horizontal and vertical resolution can be different if given as -rHxV where H is the horizontal, and V is the vertical resolution. [default 300dpi] size_of_supercell: The specified size of the supercell will impact the number of achievable levels. If a small size is specified (example 1) the smallest periodic cell will be created, regardless of the setting for target_quantization_levels and it is possible that target_quantization_levels will not be achieved. size_of_supercell should be set to something reasonably large to achieve a specified target_quantization_levels, for example 64. Work is underway to have this value optimally set based upon the desired number of gray levels. The output format (-f format) [default: tos] can be one of: Portable Pixmap (ppm): The screen is stored in a .ppm image that is readily viewed by most image viewers. A maximum of 256 levels can be written in the format. PostScript (ps): The output will be a screen that can readily be brought into ghostscript. For example: gswin32c -r300 -dDisplayFormat=16#20102 -c \ "(Screen_20x10.ps) run sethalftone" examples/tiger.eps This will be a HalftoneType 3, 8-bit threshold array unless there are more than 256 levels. For up to 65,536 levels a HalftoneType 16 Postscript threshold array will be output. Raw (raw): An 8 bit row ordered Width x Height threshold array that is periodic vertically and horizontally. The size of the array is indicated in the output file name, for example Screen_Dithered_WxH.raw. A maximum of 256 levels can be written in this format. 16-bitRaw (raw16): An 16 bit row ordered Width x Height threshold array that is periodic vertically and horizontally. The size of the array is indicated in the output file name, for example Screen_Dithered_WxH.16.raw. A maximum of 65536 levels can be written in this format. Turn-On-Sequence (tos): A format compatible with the 'thresh_remap' program. This consists of a line with the Width and Height of the threshold array as "# W=%d H=%d\n" followed by (width * height) x, y pairs in the format "%d\t%d n". This format can support more than 65,536 levels, and is the default format. Currently the code is limited in a few features, which will be included in the near future: 1) The code currently only creates bi-level threshold arrays. It is planned to enable the creation of multi-level threshold arrays. Due to the manner in which the screens are created, this should be a simple task. 2) Often it is desired to incorporate a tone reproduction curve (TRC) into the design of a screen. While not currently supported, the plan is add that option into this code. The thresh_remap program can be used to incorporate a TRC from the 'tos' format. 3) Typically screens are designed off line and provided as a threshold array to most applications. In postscript, it is possible that screens can be specified within the document with specific attributes including line frequency and dot shape. This code needs significant optimization before it should be folded into the ghostscript code base for use in this manner. 4) Minimum dot size handling is also a feature to be added. ## Files: zlib/LICENSE Copyright notice: (C) 1995-2022 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Jean-loup Gailly Mark Adler jloup@gzip.org madler@alumni.caltech.edu ## Files: zlib/README ZLIB DATA COMPRESSION LIBRARY zlib 1.2.13 is a general purpose data compression library. All the code is thread safe. The data format used by the zlib library is described by RFCs (Request for Comments) 1950 to 1952 in the files http://tools.ietf.org/html/rfc1950 (zlib format), rfc1951 (deflate format) and rfc1952 (gzip format). All functions of the compression library are documented in the file zlib.h (volunteer to write man pages welcome, contact zlib@gzip.org). A usage example of the library is given in the file test/example.c which also tests that the library is working correctly. Another example is given in the file test/minigzip.c. The compression library itself is composed of all source files in the root directory. To compile all files and run the test program, follow the instructions given at the top of Makefile.in. In short "./configure; make test", and if that goes well, "make install" should work for most flavors of Unix. For Windows, use one of the special makefiles in win32/ or contrib/vstudio/ . For VMS, use make_vms.com. Questions about zlib should be sent to , or to Gilles Vollant for the Windows DLL version. The zlib home page is http://zlib.net/ . Before reporting a problem, please check this site to verify that you have the latest version of zlib; otherwise get the latest version and check whether the problem still exists or not. PLEASE read the zlib FAQ http://zlib.net/zlib_faq.html before asking for help. Mark Nelson wrote an article about zlib for the Jan. 1997 issue of Dr. Dobb's Journal; a copy of the article is available at http://marknelson.us/1997/01/01/zlib-engine/ . The changes made in version 1.2.13 are documented in the file ChangeLog. Unsupported third party contributions are provided in directory contrib/ . zlib is available in Java using the java.util.zip package, documented at http://java.sun.com/developer/technicalArticles/Programming/compression/ . A Perl interface to zlib written by Paul Marquess is available at CPAN (Comprehensive Perl Archive Network) sites, including http://search.cpan.org/~pmqs/IO-Compress-Zlib/ . A Python interface to zlib written by A.M. Kuchling is available in Python 1.5 and later versions, see http://docs.python.org/library/zlib.html . zlib is built into tcl: http://wiki.tcl.tk/4610 . An experimental package to read and write files in .zip format, written on top of zlib by Gilles Vollant , is available in the contrib/minizip directory of zlib. Notes for some targets: - For Windows DLL versions, please see win32/DLL_FAQ.txt - For 64-bit Irix, deflate.c must be compiled without any optimization. With -O, one libpng test fails. The test works in 32 bit mode (with the -n32 compiler flag). The compiler bug has been reported to SGI. - zlib doesn't work with gcc 2.6.3 on a DEC 3000/300LX under OSF/1 2.1 it works when compiled with cc. - On Digital Unix 4.0D (formely OSF/1) on AlphaServer, the cc option -std1 is necessary to get gzprintf working correctly. This is done by configure. - zlib doesn't work on HP-UX 9.05 with some versions of /bin/cc. It works with other compilers. Use "make test" to check your compiler. - gzdopen is not supported on RISCOS or BEOS. - For PalmOs, see http://palmzlib.sourceforge.net/ Acknowledgments: The deflate format used by zlib was defined by Phil Katz. The deflate and zlib specifications were written by L. Peter Deutsch. Thanks to all the people who reported problems and suggested various improvements in zlib; they are too numerous to cite here. Copyright notice: (C) 1995-2022 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Jean-loup Gailly Mark Adler jloup@gzip.org madler@alumni.caltech.edu If you use the zlib library in a product, we would appreciate *not* receiving lengthy legal documents to sign. The sources are provided for free but without warranty of any kind. The library has been entirely written by Jean-loup Gailly and Mark Adler; it does not include third-party code. We make all contributions to and distributions of this project solely in our personal capacity, and are not conveying any rights to any intellectual property of any third parties. If you redistribute modified sources, we would appreciate that you include in the file ChangeLog history information documenting your changes. Please read the FAQ for more information on the distribution of modified source versions. ## Files: zlib/contrib/delphi/readme.txt Overview ======== This directory contains an update to the ZLib interface unit, distributed by Borland as a Delphi supplemental component. The original ZLib unit is Copyright (c) 1997,99 Borland Corp., and is based on zlib version 1.0.4. There are a series of bugs and security problems associated with that old zlib version, and we recommend the users to update their ZLib unit. Summary of modifications ======================== - Improved makefile, adapted to zlib version 1.2.1. - Some field types from TZStreamRec are changed from Integer to Longint, for consistency with the zlib.h header, and for 64-bit readiness. - The zlib_version constant is updated. - The new Z_RLE strategy has its corresponding symbolic constant. - The allocation and deallocation functions and function types (TAlloc, TFree, zlibAllocMem and zlibFreeMem) are now cdecl, and _malloc and _free are added as C RTL stubs. As a result, the original C sources of zlib can be compiled out of the box, and linked to the ZLib unit. Suggestions for improvements ============================ Currently, the ZLib unit provides only a limited wrapper around the zlib library, and much of the original zlib functionality is missing. Handling compressed file formats like ZIP/GZIP or PNG cannot be implemented without having this functionality. Applications that handle these formats are either using their own, duplicated code, or not using the ZLib unit at all. Here are a few suggestions: - Checksum class wrappers around adler32() and crc32(), similar to the Java classes that implement the java.util.zip.Checksum interface. - The ability to read and write raw deflate streams, without the zlib stream header and trailer. Raw deflate streams are used in the ZIP file format. - The ability to read and write gzip streams, used in the GZIP file format, and normally produced by the gzip program. - The ability to select a different compression strategy, useful to PNG and MNG image compression, and to multimedia compression in general. Besides the compression level TCompressionLevel = (clNone, clFastest, clDefault, clMax); which, in fact, could have used the 'z' prefix and avoided TColor-like symbols TCompressionLevel = (zcNone, zcFastest, zcDefault, zcMax); there could be a compression strategy TCompressionStrategy = (zsDefault, zsFiltered, zsHuffmanOnly, zsRle); - ZIP and GZIP stream handling via TStreams. -- Cosmin Truta ## Files: zlib/contrib/dotzlib/readme.txt This directory contains a .Net wrapper class library for the ZLib1.dll The wrapper includes support for inflating/deflating memory buffers, .Net streaming wrappers for the gz streams part of zlib, and wrappers for the checksum parts of zlib. See DotZLib/UnitTests.cs for examples. Directory structure: -------------------- LICENSE_1_0.txt - License file. readme.txt - This file. DotZLib.chm - Class library documentation DotZLib.build - NAnt build file DotZLib.sln - Microsoft Visual Studio 2003 solution file DotZLib\*.cs - Source files for the class library Unit tests: ----------- The file DotZLib/UnitTests.cs contains unit tests for use with NUnit 2.1 or higher. To include unit tests in the build, define nunit before building. Build instructions: ------------------- 1. Using Visual Studio.Net 2003: Open DotZLib.sln in VS.Net and build from there. Output file (DotZLib.dll) will be found ./DotZLib/bin/release or ./DotZLib/bin/debug, depending on you are building the release or debug version of the library. Check DotZLib/UnitTests.cs for instructions on how to include unit tests in the build. 2. Using NAnt: Open a command prompt with access to the build environment and run nant in the same directory as the DotZLib.build file. You can define 2 properties on the nant command-line to control the build: debug={true|false} to toggle between release/debug builds (default=true). nunit={true|false} to include or esclude unit tests (default=true). Also the target clean will remove binaries. Output file (DotZLib.dll) will be found in either ./DotZLib/bin/release or ./DotZLib/bin/debug, depending on whether you are building the release or debug version of the library. Examples: nant -D:debug=false -D:nunit=false will build a release mode version of the library without unit tests. nant will build a debug version of the library with unit tests nant clean will remove all previously built files. --------------------------------- Copyright (c) Henrik Ravn 2004 Use, modification and distribution are subject to the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) ## Files: zlib/contrib/pascal/readme.txt This directory contains a Pascal (Delphi, Kylix) interface to the zlib data compression library. Directory listing ================= zlibd32.mak makefile for Borland C++ example.pas usage example of zlib zlibpas.pas the Pascal interface to zlib readme.txt this file Compatibility notes =================== - Although the name "zlib" would have been more normal for the zlibpas unit, this name is already taken by Borland's ZLib unit. This is somehow unfortunate, because that unit is not a genuine interface to the full-fledged zlib functionality, but a suite of class wrappers around zlib streams. Other essential features, such as checksums, are missing. It would have been more appropriate for that unit to have a name like "ZStreams", or something similar. - The C and zlib-supplied types int, uInt, long, uLong, etc. are translated directly into Pascal types of similar sizes (Integer, LongInt, etc.), to avoid namespace pollution. In particular, there is no conversion of unsigned int into a Pascal unsigned integer. The Word type is non-portable and has the same size (16 bits) both in a 16-bit and in a 32-bit environment, unlike Integer. Even if there is a 32-bit Cardinal type, there is no real need for unsigned int in zlib under a 32-bit environment. - Except for the callbacks, the zlib function interfaces are assuming the calling convention normally used in Pascal (__pascal for DOS and Windows16, __fastcall for Windows32). Since the cdecl keyword is used, the old Turbo Pascal does not work with this interface. - The gz* function interfaces are not translated, to avoid interfacing problems with the C runtime library. Besides, gzprintf(gzFile file, const char *format, ...) cannot be translated into Pascal. Legal issues ============ The zlibpas interface is: Copyright (C) 1995-2003 Jean-loup Gailly and Mark Adler. Copyright (C) 1998 by Bob Dellaca. Copyright (C) 2003 by Cosmin Truta. The example program is: Copyright (C) 1995-2003 by Jean-loup Gailly. Copyright (C) 1998,1999,2000 by Jacques Nomssi Nzali. Copyright (C) 2003 by Cosmin Truta. This software is provided 'as-is', without any express or implied warranty. In no event will the author be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. ## Files: base/icc34.h toolbin/color/icc_creator/ICC_Creator/icc34.h Copyright (c) 1994-1996 SunSoft, Inc. Rights Reserved Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restrict- ion, including without limitation the rights to use, copy, modify, merge, publish distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON- INFRINGEMENT. IN NO EVENT SHALL SUNSOFT, INC. OR ITS PARENT COMPANY BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Except as contained in this notice, the name of SunSoft, Inc. shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without written authorization from SunSoft Inc. ## Files: contrib/opvp/opvp_0_2_0.h contrib/opvp/opvp_common.h Copyright (c) 2003-2004, AXE, Inc. All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: freetype/include/freetype/internal/fthash.h freetype/src/base/fthash.c Copyright 2000 Computing Research Labs, New Mexico State University Copyright 2001-2015 Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE COMPUTING RESEARCH LAB OR NEW MEXICO STATE UNIVERSITY BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: freetype/src/bdf/bdf.c bdf.c FreeType font driver for bdf files Copyright (C) 2001, 2002 by Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: freetype/src/bdf/bdf.h Copyright 2000 Computing Research Labs, New Mexico State University Copyright 2001-2004, 2011 Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE COMPUTING RESEARCH LAB OR NEW MEXICO STATE UNIVERSITY BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: freetype/src/bdf/bdfdrivr.c bdfdrivr.c FreeType font driver for bdf files Copyright (C) 2001-2008, 2011, 2013, 2014 by Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: freetype/src/bdf/bdfdrivr.h bdfdrivr.h FreeType font driver for bdf fonts Copyright (C) 2001, 2002, 2003, 2004 by Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: freetype/src/bdf/bdferror.h Copyright 2001, 2002, 2012 Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE COMPUTING RESEARCH LAB OR NEW MEXICO STATE UNIVERSITY BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: freetype/src/bdf/bdflib.c Copyright 2000 Computing Research Labs, New Mexico State University Copyright 2001-2014 Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE COMPUTING RESEARCH LAB OR NEW MEXICO STATE UNIVERSITY BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: freetype/src/pcf/pcf.c pcf.c FreeType font driver for pcf fonts Copyright 2000-2001, 2003 by Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: freetype/src/pcf/pcf.h pcf.h FreeType font driver for pcf fonts Copyright (C) 2000, 2001, 2002, 2003, 2006, 2010 by Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: freetype/src/pcf/pcfdrivr.c pcfdrivr.c FreeType font driver for pcf files Copyright (C) 2000-2004, 2006-2011, 2013, 2014 by Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: freetype/src/pcf/pcfdrivr.h pcfdrivr.h FreeType font driver for pcf fonts Copyright 2000-2001, 2002 by Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: freetype/src/pcf/pcfread.c pcfread.c FreeType font driver for pcf fonts Copyright 2000-2010, 2012-2014 by Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: freetype/src/pcf/pcfread.h pcfread.h FreeType font driver for pcf fonts Copyright 2003 by Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: freetype/src/pcf/pcfutil.h pcfutil.h FreeType font driver for pcf fonts Copyright 2000, 2001, 2004 by Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: ijs/ijs.c ijs/ijs.h ijs/ijs_client.c ijs/ijs_client.h ijs/ijs_client_example.c ijs/ijs_exec_unix.c ijs/ijs_exec_win.c ijs/ijs_server.c ijs/ijs_server.h ijs/ijs_server_example.c ijs/unistd_.h Copyright (C) 2001-2021 Artifex Software, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: lcms2mt/include/lcms2mt.h Little Color Management System Copyright (c) 1998-2021 Marti Maria Saguer Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. --------------------------------------------------------------------------------- Version 2.13alpha ## Files: lcms2mt/include/lcms2mt_plugin.h Little Color Management System Copyright (c) 1998-2020 Marti Maria Saguer Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. --------------------------------------------------------------------------------- This is the plug-in header file. Normal LittleCMS clients should not use it. It is provided for plug-in writters that may want to access the support functions to do low level operations. All plug-in related structures are defined here. Including this file forces to include the standard API too. ## Files: lcms2mt/src/cmsalpha.c lcms2mt/src/cmscam02.c lcms2mt/src/cmscgats.c lcms2mt/src/cmscnvrt.c lcms2mt/src/cmsgamma.c lcms2mt/src/cmsgmt.c lcms2mt/src/cmshalf.c lcms2mt/src/cmsintrp.c lcms2mt/src/cmsio0.c lcms2mt/src/cmsio1.c lcms2mt/src/cmslut.c lcms2mt/src/cmsmtrx.c lcms2mt/src/cmsnamed.c lcms2mt/src/cmsopt.c lcms2mt/src/cmspack.c lcms2mt/src/cmspcs.c lcms2mt/src/cmsplugin.c lcms2mt/src/cmsps2.c lcms2mt/src/cmssamp.c lcms2mt/src/cmssm.c lcms2mt/src/cmstypes.c lcms2mt/src/cmsvirt.c lcms2mt/src/cmswtpnt.c lcms2mt/src/cmsxform.c lcms2mt/src/lcms2_internal.h lcms2mt/testbed/testcms2.c lcms2mt/testbed/testcms2.h lcms2mt/testbed/testplugin.c lcms2mt/testbed/zoo_icc.c lcms2mt/utils/common/vprf.c lcms2mt/utils/samples/vericc.c lcms2mt/utils/tificc/tifdiff.c lcms2mt/utils/transicc/transicc.c Little Color Management System Copyright (c) 1998-2010 Marti Maria Saguer Copyright (c) 1998-2020 Marti Maria Saguer Copyright (c) 1998-2021 Marti Maria Saguer Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. --------------------------------------------------------------------------------- ## Files: lcms2mt/src/cmserr.c lcms2mt/src/cmsmd5.c lcms2mt/utils/common/utils.h lcms2mt/utils/jpgicc/jpgicc.c lcms2mt/utils/linkicc/linkicc.c lcms2mt/utils/psicc/psicc.c lcms2mt/utils/tificc/tificc.c Little Color Management System Copyright (c) 1998-2020 Marti Maria Saguer Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: lcms2mt/utils/common/xgetopt.c Little Color Management System Copyright (c) 1998-2020 Marti Maria Saguer Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. --------------------------------------------------------------------------------- xgetopt.c -- loosely based on System V getopt() option ::= SW [optLetter]* [argLetter space* argument] ## Files: lcms2mt/utils/matlab/icctrans.c lcms2mt/utils/samples/itufax.c lcms2mt/utils/samples/mkgrayer.c lcms2mt/utils/samples/mktiff8.c Little cms Copyright (C) 1998-2003 Marti Maria Copyright (C) 1998-2010 Marti Maria Copyright (C) 1998-2010 Marti Maria, Ignacio Ruiz de Conejo Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: lcms2mt/utils/samples/roundtrip.c Little cms Copyright (C) 1998-2011 Marti Maria Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION ## Files: lcms2mt/utils/samples/wtpt.c Little cms Copyright (C) 1998-2015 Marti Maria Copyright (c) 1998-2014 Marti Maria Saguer --------------------------------------------------------------------------------- Little Color Management System Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: tiff/contrib/addtiffo/addtiffo.c Project: GeoTIFF Overview Builder Purpose: Mainline for building overviews in a TIFF file. Author: Frank Warmerdam, warmerdam@pobox.com ***************************************************************************** Copyright (c) 1999, Frank Warmerdam Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ***************************************************************************** $Log: addtiffo.c,v $ Revision 1.8 2015-05-30 20:30:27 bfriesen * contrib/addtiffo/addtiffo.c (main): Possibly address Coverity 1024226 "Untrusted value as argument". Revision 1.7 2010-06-08 18:55:15 bfriesen * contrib: Add an emacs formatting mode footer to all source files so that emacs can be effectively used. Revision 1.6 2005/12/16 05:59:55 fwarmerdam Major upgrade to support YCbCr subsampled jpeg images Revision 1.4 2004/09/21 13:31:23 dron Add missed include string.h. Revision 1.3 2000/04/18 22:48:31 warmerda Added support for averaging resampling Revision 1.2 2000/01/28 15:36:38 warmerda pass TIFF handle instead of filename to overview builder Revision 1.1 1999/08/17 01:47:59 warmerda New Revision 1.1 1999/03/12 17:46:32 warmerda New Revision 1.2 1999/02/11 22:27:12 warmerda Added multi-sample support Revision 1.1 1999/02/11 18:12:30 warmerda New ## Files: tiff/contrib/addtiffo/tif_overview.c tif_overview.c,v 1.9 2005/05/25 09:03:16 dron Exp Project: TIFF Overview Builder Purpose: Library function for building overviews in a TIFF file. Author: Frank Warmerdam, warmerdam@pobox.com Notes: o Currently only images with bits_per_sample of a multiple of eight will work. o The downsampler currently just takes the top left pixel from the source rectangle. Eventually sampling options of averaging, mode, and ``center pixel'' should be offered. o The code will attempt to use the same kind of compression, photometric interpretation, and organization as the source image, but it doesn't copy geotiff tags to the reduced resolution images. o Reduced resolution overviews for multi-sample files will currently always be generated as PLANARCONFIG_SEPARATE. This could be fixed reasonable easily if needed to improve compatibility with other packages. Many don't properly support PLANARCONFIG_SEPARATE. ***************************************************************************** Copyright (c) 1999, Frank Warmerdam Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ***************************************************************************** ## Files: tiff/contrib/addtiffo/tif_ovrcache.c Project: TIFF Overview Builder Purpose: Library functions to maintain two rows of tiles or two strips of data for output overviews as an output cache. Author: Frank Warmerdam, warmerdam@pobox.com ***************************************************************************** Copyright (c) 2000, Frank Warmerdam Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ***************************************************************************** ## Files: tiff/contrib/addtiffo/tif_ovrcache.h tif_ovrcache.h,v 1.3 2005/05/25 09:03:16 dron Exp Project: TIFF Overview Builder Purpose: Library functions to maintain two rows of tiles or two strips of data for output overviews as an output cache. Author: Frank Warmerdam, warmerdam@pobox.com This code could potentially be used by other applications wanting to manage a once-through write cache. ***************************************************************************** Copyright (c) 2000, Frank Warmerdam Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ***************************************************************************** ## Files: tiff/libtiff/tif_hash_set.c Name: tif_hash_set.c Purpose: Hash set functions. Author: Even Rouault, ********************************************************************* Copyright (c) 2008-2009, Even Rouault Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: tiff/libtiff/tif_hash_set.h $Id$ Name: tif_hash_set.h Project: TIFF - Common Portability Library Purpose: Hash set functions. Author: Even Rouault, ********************************************************************* Copyright (c) 2008-2009, Even Rouault Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: base/aes.c base/aes.h FIPS-197 compliant AES implementation Copyright (C) 2006-2007 Christophe Devine Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code _must_ retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form may or may not reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of XySSL nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## Files: base/sha2.c FILE: sha2.c AUTHOR: Aaron D. Gifford - http://www.aarongifford.com/ Copyright (c) 2000-2001, Aaron D. Gifford All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the copyright holder nor the names of contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTOR(S) ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. $Id: sha2.c,v 1.1 2001/11/08 00:01:51 adg Exp adg $ ## Files: base/sha2.h FILE: sha2.h AUTHOR: Aaron D. Gifford - http://www.aarongifford.com/ Copyright (c) 2000-2001, Aaron D. Gifford All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the copyright holder nor the names of contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTOR(S) ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. $Id: sha2.h,v 1.1 2001/11/08 00:02:01 adg Exp adg $ ## Files: freetype/src/tools/ftrandom/ftrandom.c * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this * list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, * this list of conditions and the following disclaimer in the documentation * and/or other materials provided with the distribution. * The name of the author may not be used to endorse or promote products * derived from this software without specific prior written permission. * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## Files: leptonica/prog/adaptmap_dark.c leptonica/prog/adaptmap_reg.c leptonica/prog/adaptnorm_reg.c leptonica/prog/affine_reg.c leptonica/prog/alltests_reg.c leptonica/prog/alphaops_reg.c leptonica/prog/alphaxform_reg.c leptonica/prog/arabic_lines.c leptonica/prog/arithtest.c leptonica/prog/autogen.137.c leptonica/prog/autogen.137.h leptonica/prog/autogentest1.c leptonica/prog/autogentest2.c leptonica/prog/barcodetest.c leptonica/prog/baseline_reg.c leptonica/prog/bilateral1_reg.c leptonica/prog/bilateral2_reg.c leptonica/prog/bilinear_reg.c leptonica/prog/binarize_reg.c leptonica/prog/binarize_set.c leptonica/prog/binarizefiles.c leptonica/prog/bincompare.c leptonica/prog/binmorph1_reg.c leptonica/prog/binmorph2_reg.c leptonica/prog/binmorph3_reg.c leptonica/prog/binmorph4_reg.c leptonica/prog/binmorph5_reg.c leptonica/prog/binmorph6_reg.c leptonica/prog/blackwhite_reg.c leptonica/prog/blend1_reg.c leptonica/prog/blend2_reg.c leptonica/prog/blend3_reg.c leptonica/prog/blend4_reg.c leptonica/prog/blend5_reg.c leptonica/prog/blendcmaptest.c leptonica/prog/boxa1_reg.c leptonica/prog/boxa2_reg.c leptonica/prog/boxa3_reg.c leptonica/prog/boxa4_reg.c leptonica/prog/buffertest.c leptonica/prog/bytea_reg.c leptonica/prog/ccbord_reg.c leptonica/prog/ccbordtest.c leptonica/prog/cctest1.c leptonica/prog/ccthin1_reg.c leptonica/prog/ccthin2_reg.c leptonica/prog/checkerboard_reg.c leptonica/prog/circle_reg.c leptonica/prog/cleanpdf.c leptonica/prog/cmapquant_reg.c leptonica/prog/colorcontent_reg.c leptonica/prog/colorfill_reg.c leptonica/prog/coloring_reg.c leptonica/prog/colorize_reg.c leptonica/prog/colormask_reg.c leptonica/prog/colormorph_reg.c leptonica/prog/colorquant_reg.c leptonica/prog/colorseg_reg.c leptonica/prog/colorsegtest.c leptonica/prog/colorspace_reg.c leptonica/prog/compare_reg.c leptonica/prog/comparepages.c leptonica/prog/comparepixa.c leptonica/prog/comparetest.c leptonica/prog/compfilter_reg.c leptonica/prog/compresspdf.c leptonica/prog/conncomp_reg.c leptonica/prog/contrasttest.c leptonica/prog/conversion_reg.c leptonica/prog/convertfilestopdf.c leptonica/prog/convertfilestops.c leptonica/prog/convertformat.c leptonica/prog/convertsegfilestopdf.c leptonica/prog/convertsegfilestops.c leptonica/prog/converttogray.c leptonica/prog/converttopdf.c leptonica/prog/converttops.c leptonica/prog/convolve_reg.c leptonica/prog/cornertest.c leptonica/prog/corrupttest.c leptonica/prog/crop_reg.c leptonica/prog/croppdf.c leptonica/prog/croptext.c leptonica/prog/deskew_it.c leptonica/prog/dewarp_reg.c leptonica/prog/dewarprules.c leptonica/prog/dewarptest1.c leptonica/prog/dewarptest2.c leptonica/prog/dewarptest3.c leptonica/prog/dewarptest4.c leptonica/prog/dewarptest5.c leptonica/prog/digitprep1.c leptonica/prog/displayboxa.c leptonica/prog/displayboxes_on_pixa.c leptonica/prog/displaypix.c leptonica/prog/displaypixa.c leptonica/prog/distance_reg.c leptonica/prog/dither_reg.c leptonica/prog/dna_reg.c leptonica/prog/dwalinear.3.c leptonica/prog/dwalineargen.c leptonica/prog/dwalinearlow.3.c leptonica/prog/dwamorph1_reg.c leptonica/prog/dwamorph2_reg.c leptonica/prog/edge_reg.c leptonica/prog/encoding_reg.c leptonica/prog/enhance_reg.c leptonica/prog/equal_reg.c leptonica/prog/expand_reg.c leptonica/prog/extrema_reg.c leptonica/prog/falsecolor_reg.c leptonica/prog/fcombautogen.c leptonica/prog/fhmtauto_reg.c leptonica/prog/fhmtautogen.c leptonica/prog/fileinfo.c leptonica/prog/files_reg.c leptonica/prog/find_colorregions.c leptonica/prog/findbinding.c leptonica/prog/findcorners_reg.c leptonica/prog/findpattern1.c leptonica/prog/findpattern2.c leptonica/prog/findpattern3.c leptonica/prog/findpattern_reg.c leptonica/prog/flipdetect_reg.c leptonica/prog/fmorphauto_reg.c leptonica/prog/fmorphautogen.c leptonica/prog/fpix1_reg.c leptonica/prog/fpix2_reg.c leptonica/prog/fpixcontours.c leptonica/prog/gammatest.c leptonica/prog/genfonts_reg.c leptonica/prog/gifio_reg.c leptonica/prog/graphicstest.c leptonica/prog/grayfill_reg.c leptonica/prog/graymorph1_reg.c leptonica/prog/graymorph2_reg.c leptonica/prog/graymorphtest.c leptonica/prog/grayquant_reg.c leptonica/prog/hardlight_reg.c leptonica/prog/hash_reg.c leptonica/prog/hashtest.c leptonica/prog/heap_reg.c leptonica/prog/histoduptest.c leptonica/prog/histotest.c leptonica/prog/htmlviewer.c leptonica/prog/imagetops.c leptonica/prog/insert_reg.c leptonica/prog/ioformats_reg.c leptonica/prog/iomisc_reg.c leptonica/prog/italic_reg.c leptonica/prog/jbclass_reg.c leptonica/prog/jbcorrelation.c leptonica/prog/jbrankhaus.c leptonica/prog/jbwords.c leptonica/prog/jp2kio_reg.c leptonica/prog/jpegio_reg.c leptonica/prog/kernel_reg.c leptonica/prog/label_reg.c leptonica/prog/lightcolortest.c leptonica/prog/lineremoval_reg.c leptonica/prog/listtest.c leptonica/prog/livre_adapt.c leptonica/prog/livre_hmt.c leptonica/prog/livre_makefigs.c leptonica/prog/livre_orient.c leptonica/prog/livre_pageseg.c leptonica/prog/livre_seedgen.c leptonica/prog/livre_tophat.c leptonica/prog/locminmax_reg.c leptonica/prog/logicops_reg.c leptonica/prog/lowaccess_reg.c leptonica/prog/lowsat_reg.c leptonica/prog/maketile.c leptonica/prog/maptest.c leptonica/prog/maze_reg.c leptonica/prog/messagetest.c leptonica/prog/misctest1.c leptonica/prog/modifyhuesat.c leptonica/prog/morphseq_reg.c leptonica/prog/morphtest1.c leptonica/prog/mtiff_reg.c leptonica/prog/multitype_reg.c leptonica/prog/nearline_reg.c leptonica/prog/newspaper_reg.c leptonica/prog/numa1_reg.c leptonica/prog/numa2_reg.c leptonica/prog/numa3_reg.c leptonica/prog/numaranktest.c leptonica/prog/otsutest1.c leptonica/prog/otsutest2.c leptonica/prog/overlap_reg.c leptonica/prog/pageseg_reg.c leptonica/prog/pagesegtest1.c leptonica/prog/pagesegtest2.c leptonica/prog/paint_reg.c leptonica/prog/paintmask_reg.c leptonica/prog/partifytest.c leptonica/prog/partition_reg.c leptonica/prog/partitiontest.c leptonica/prog/pdfio1_reg.c leptonica/prog/pdfio2_reg.c leptonica/prog/pdfseg_reg.c leptonica/prog/percolatetest.c leptonica/prog/pixa1_reg.c leptonica/prog/pixa2_reg.c leptonica/prog/pixaatest.c leptonica/prog/pixadisp_reg.c leptonica/prog/pixafileinfo.c leptonica/prog/pixalloc_reg.c leptonica/prog/pixcomp_reg.c leptonica/prog/pixmem_reg.c leptonica/prog/pixserial_reg.c leptonica/prog/pixtile_reg.c leptonica/prog/plottest.c leptonica/prog/pngio_reg.c leptonica/prog/pnmio_reg.c leptonica/prog/printimage.c leptonica/prog/printsplitimage.c leptonica/prog/printtiff.c leptonica/prog/projection_reg.c leptonica/prog/projective_reg.c leptonica/prog/psio_reg.c leptonica/prog/psioseg_reg.c leptonica/prog/pta_reg.c leptonica/prog/ptra1_reg.c leptonica/prog/ptra2_reg.c leptonica/prog/quadtree_reg.c leptonica/prog/rank_reg.c leptonica/prog/rankbin_reg.c leptonica/prog/rankhisto_reg.c leptonica/prog/rasterop_reg.c leptonica/prog/rasteropip_reg.c leptonica/prog/rasteroptest.c leptonica/prog/rbtreetest.c leptonica/prog/recog_bootnum1.c leptonica/prog/recog_bootnum2.c leptonica/prog/recog_bootnum3.c leptonica/prog/recogsort.c leptonica/prog/recogtest1.c leptonica/prog/recogtest2.c leptonica/prog/recogtest3.c leptonica/prog/recogtest4.c leptonica/prog/recogtest5.c leptonica/prog/recogtest6.c leptonica/prog/recogtest7.c leptonica/prog/rectangle_reg.c leptonica/prog/reducetest.c leptonica/prog/removecmap.c leptonica/prog/renderfonts.c leptonica/prog/replacebytes.c leptonica/prog/rotate1_reg.c leptonica/prog/rotate2_reg.c leptonica/prog/rotate_it.c leptonica/prog/rotatefastalt.c leptonica/prog/rotateorth_reg.c leptonica/prog/rotateorthtest1.c leptonica/prog/rotatetest1.c leptonica/prog/runlengthtest.c leptonica/prog/scale_it.c leptonica/prog/scale_reg.c leptonica/prog/scaleandtile.c leptonica/prog/scaleimages.c leptonica/prog/scaletest1.c leptonica/prog/scaletest2.c leptonica/prog/seedfilltest.c leptonica/prog/seedspread_reg.c leptonica/prog/selio_reg.c leptonica/prog/settest.c leptonica/prog/sharptest.c leptonica/prog/shear1_reg.c leptonica/prog/shear2_reg.c leptonica/prog/sheartest.c leptonica/prog/showedges.c leptonica/prog/skew_reg.c leptonica/prog/skewtest.c leptonica/prog/smallpix_reg.c leptonica/prog/smoothedge_reg.c leptonica/prog/sorttest.c leptonica/prog/speckle_reg.c leptonica/prog/splitcomp_reg.c leptonica/prog/splitimage2pdf.c leptonica/prog/splitpdf.c leptonica/prog/string_reg.c leptonica/prog/subpixel_reg.c leptonica/prog/sudokutest.c leptonica/prog/textorient.c leptonica/prog/texturefill_reg.c leptonica/prog/threshnorm_reg.c leptonica/prog/tiffpdftest.c leptonica/prog/translate_reg.c leptonica/prog/trctest.c leptonica/prog/underlinetest.c leptonica/prog/warper_reg.c leptonica/prog/warpertest.c leptonica/prog/watershed_reg.c leptonica/prog/webpanimio_reg.c leptonica/prog/webpio_reg.c leptonica/prog/wordboxes_reg.c leptonica/prog/wordsinorder.c leptonica/prog/writemtiff.c leptonica/prog/writetext_reg.c leptonica/prog/xformbox_reg.c leptonica/prog/xtractprotos.c leptonica/prog/yuvtest.c leptonica/src/adaptmap.c leptonica/src/affine.c leptonica/src/affinecompose.c leptonica/src/allheaders.h leptonica/src/alltypes.h leptonica/src/array.h leptonica/src/array_internal.h leptonica/src/arrayaccess.c leptonica/src/arrayaccess.h leptonica/src/bardecode.c leptonica/src/baseline.c leptonica/src/bbuffer.c leptonica/src/bbuffer.h leptonica/src/bilateral.c leptonica/src/bilateral.h leptonica/src/bilinear.c leptonica/src/binarize.c leptonica/src/binexpand.c leptonica/src/binreduce.c leptonica/src/blend.c leptonica/src/bmf.c leptonica/src/bmf.h leptonica/src/bmfdata.h leptonica/src/bmp.h leptonica/src/bmpio.c leptonica/src/bmpiostub.c leptonica/src/bootnumgen1.c leptonica/src/bootnumgen2.c leptonica/src/bootnumgen3.c leptonica/src/bootnumgen4.c leptonica/src/boxbasic.c leptonica/src/boxfunc1.c leptonica/src/boxfunc2.c leptonica/src/boxfunc3.c leptonica/src/boxfunc4.c leptonica/src/boxfunc5.c leptonica/src/bytearray.c leptonica/src/ccbord.c leptonica/src/ccbord.h leptonica/src/ccbord_internal.h leptonica/src/ccthin.c leptonica/src/checkerboard.c leptonica/src/classapp.c leptonica/src/colorcontent.c leptonica/src/colorfill.c leptonica/src/colorfill.h leptonica/src/coloring.c leptonica/src/colormap.c leptonica/src/colormorph.c leptonica/src/colorquant1.c leptonica/src/colorquant2.c leptonica/src/colorseg.c leptonica/src/colorspace.c leptonica/src/compare.c leptonica/src/conncomp.c leptonica/src/convertfiles.c leptonica/src/convolve.c leptonica/src/correlscore.c leptonica/src/dewarp.h leptonica/src/dewarp1.c leptonica/src/dewarp2.c leptonica/src/dewarp3.c leptonica/src/dewarp4.c leptonica/src/dnabasic.c leptonica/src/dnafunc1.c leptonica/src/dnahash.c leptonica/src/dwacomb.2.c leptonica/src/dwacomblow.2.c leptonica/src/edge.c leptonica/src/enhance.c leptonica/src/environ.h leptonica/src/fhmtauto.c leptonica/src/fhmtgen.1.c leptonica/src/fhmtgenlow.1.c leptonica/src/finditalic.c leptonica/src/flipdetect.c leptonica/src/fmorphauto.c leptonica/src/fmorphgen.1.c leptonica/src/fmorphgenlow.1.c leptonica/src/fpix1.c leptonica/src/fpix2.c leptonica/src/gifio.c leptonica/src/gifiostub.c leptonica/src/gplot.c leptonica/src/gplot.h leptonica/src/graphics.c leptonica/src/graymorph.c leptonica/src/grayquant.c leptonica/src/hashmap.c leptonica/src/hashmap.h leptonica/src/heap.c leptonica/src/heap.h leptonica/src/imageio.h leptonica/src/jbclass.c leptonica/src/jbclass.h leptonica/src/jp2kheader.c leptonica/src/jp2kheaderstub.c leptonica/src/jp2kio.c leptonica/src/jp2kiostub.c leptonica/src/jpegio.c leptonica/src/jpegiostub.c leptonica/src/kernel.c leptonica/src/leptwin.c leptonica/src/leptwin.h leptonica/src/libversions.c leptonica/src/list.c leptonica/src/list.h leptonica/src/map.c leptonica/src/maze.c leptonica/src/morph.c leptonica/src/morph.h leptonica/src/morphapp.c leptonica/src/morphdwa.c leptonica/src/morphseq.c leptonica/src/numabasic.c leptonica/src/numafunc1.c leptonica/src/numafunc2.c leptonica/src/pageseg.c leptonica/src/paintcmap.c leptonica/src/parseprotos.c leptonica/src/partify.c leptonica/src/partition.c leptonica/src/pdfapp.c leptonica/src/pdfappstub.c leptonica/src/pdfio1.c leptonica/src/pdfio1stub.c leptonica/src/pdfio2.c leptonica/src/pdfio2stub.c leptonica/src/pix.h leptonica/src/pix1.c leptonica/src/pix2.c leptonica/src/pix3.c leptonica/src/pix4.c leptonica/src/pix5.c leptonica/src/pix_internal.h leptonica/src/pixabasic.c leptonica/src/pixacc.c leptonica/src/pixafunc1.c leptonica/src/pixafunc2.c leptonica/src/pixalloc.c leptonica/src/pixarith.c leptonica/src/pixcomp.c leptonica/src/pixconv.c leptonica/src/pixlabel.c leptonica/src/pixtiling.c leptonica/src/pngio.c leptonica/src/pngiostub.c leptonica/src/pnmio.c leptonica/src/pnmiostub.c leptonica/src/projective.c leptonica/src/psio1.c leptonica/src/psio1stub.c leptonica/src/psio2.c leptonica/src/psio2stub.c leptonica/src/ptabasic.c leptonica/src/ptafunc1.c leptonica/src/ptafunc2.c leptonica/src/ptra.c leptonica/src/ptra.h leptonica/src/quadtree.c leptonica/src/queue.c leptonica/src/queue.h leptonica/src/rank.c leptonica/src/rbtree.c leptonica/src/rbtree.h leptonica/src/readbarcode.c leptonica/src/readbarcode.h leptonica/src/readfile.c leptonica/src/recog.h leptonica/src/recogbasic.c leptonica/src/recogdid.c leptonica/src/recogident.c leptonica/src/recogtrain.c leptonica/src/regutils.c leptonica/src/regutils.h leptonica/src/rop.c leptonica/src/roplow.c leptonica/src/rotate.c leptonica/src/rotateam.c leptonica/src/rotateorth.c leptonica/src/rotateshear.c leptonica/src/runlength.c leptonica/src/sarray1.c leptonica/src/sarray2.c leptonica/src/scale1.c leptonica/src/scale2.c leptonica/src/seedfill.c leptonica/src/sel1.c leptonica/src/sel2.c leptonica/src/selgen.c leptonica/src/shear.c leptonica/src/skew.c leptonica/src/spixio.c leptonica/src/stack.c leptonica/src/stack.h leptonica/src/stringcode.c leptonica/src/stringcode.h leptonica/src/strokes.c leptonica/src/sudoku.c leptonica/src/sudoku.h leptonica/src/textops.c leptonica/src/tiffio.c leptonica/src/tiffiostub.c leptonica/src/utils1.c leptonica/src/utils2.c leptonica/src/warper.c leptonica/src/watershed.c leptonica/src/watershed.h leptonica/src/webpanimio.c leptonica/src/webpanimiostub.c leptonica/src/webpio.c leptonica/src/webpiostub.c leptonica/src/writefile.c leptonica/src/zlibmem.c leptonica/src/zlibmemstub.c ====================================================================* - Copyright (C) 2001 Leptonica. All rights reserved. - Copyright (C) 2001-2016 Leptonica. All rights reserved. - Copyright (C) 2017 Milner Technologies, Inc. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - 2. Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following - disclaimer in the documentation and/or other materials - provided with the distribution. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ANY - CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY - OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *==================================================================== ## Files: openjpeg/src/lib/openjp2/bench_dwt.c openjpeg/src/lib/openjp2/bio.c openjpeg/src/lib/openjp2/bio.h openjpeg/src/lib/openjp2/cio.c openjpeg/src/lib/openjp2/cio.h openjpeg/src/lib/openjp2/dwt.c openjpeg/src/lib/openjp2/dwt.h openjpeg/src/lib/openjp2/event.c openjpeg/src/lib/openjp2/event.h openjpeg/src/lib/openjp2/function_list.c openjpeg/src/lib/openjp2/function_list.h openjpeg/src/lib/openjp2/image.c openjpeg/src/lib/openjp2/image.h openjpeg/src/lib/openjp2/invert.c openjpeg/src/lib/openjp2/invert.h openjpeg/src/lib/openjp2/j2k.c openjpeg/src/lib/openjp2/jp2.c openjpeg/src/lib/openjp2/jp2.h openjpeg/src/lib/openjp2/mct.c openjpeg/src/lib/openjp2/mct.h openjpeg/src/lib/openjp2/mqc.c openjpeg/src/lib/openjp2/mqc.h openjpeg/src/lib/openjp2/mqc_inl.h openjpeg/src/lib/openjp2/openjpeg.c openjpeg/src/lib/openjp2/openjpeg.h openjpeg/src/lib/openjp2/opj_clock.c openjpeg/src/lib/openjp2/opj_clock.h openjpeg/src/lib/openjp2/opj_codec.h openjpeg/src/lib/openjp2/opj_common.h openjpeg/src/lib/openjp2/opj_includes.h openjpeg/src/lib/openjp2/opj_intmath.h openjpeg/src/lib/openjp2/opj_inttypes.h openjpeg/src/lib/openjp2/opj_malloc.c openjpeg/src/lib/openjp2/opj_malloc.h openjpeg/src/lib/openjp2/opj_stdint.h openjpeg/src/lib/openjp2/pi.c openjpeg/src/lib/openjp2/pi.h openjpeg/src/lib/openjp2/sparse_array.c openjpeg/src/lib/openjp2/sparse_array.h openjpeg/src/lib/openjp2/t1.c openjpeg/src/lib/openjp2/t1.h openjpeg/src/lib/openjp2/t1_generate_luts.c openjpeg/src/lib/openjp2/t2.c openjpeg/src/lib/openjp2/t2.h openjpeg/src/lib/openjp2/tcd.c openjpeg/src/lib/openjp2/tcd.h openjpeg/src/lib/openjp2/test_sparse_array.c openjpeg/src/lib/openjp2/tgt.c openjpeg/src/lib/openjp2/tgt.h openjpeg/src/lib/openjp2/thread.c openjpeg/src/lib/openjp2/thread.h openjpeg/src/lib/openjp2/tls_keys.h The copyright in this software is being made available under the 2-clauses BSD License, included below. This software may be subject to other third party and contributor rights, including patent rights, and no such rights are granted under this license. Copyright (c) 2001-2003, David Janssens Copyright (c) 2002-2003, Yannick Verschueren Copyright (c) 2002-2014, Professor Benoit Macq Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium Copyright (c) 2003-2007, Francois-Olivier Devaux Copyright (c) 2003-2014, Antonin Descampe Copyright (c) 2005, Herve Drolon, FreeImage Team Copyright (c) 2006-2007, Parvatha Elangovan Copyright (c) 2007, Callum Lerwick Copyright (c) 2007, Jonathan Ballard Copyright (c) 2008, 2011-2012, Centre National d'Etudes Spatiales (CNES), FR Copyright (c) 2008, Jerome Fimes, Communications & Systemes Copyright (c) 2010-2011, Kaori Hagihara Copyright (c) 2011-2012, Centre National d'Etudes Spatiales (CNES), France Copyright (c) 2012, CS Systemes d'Information, France Copyright (c) 2012, Carl Hetherington Copyright (c) 2012, Mathieu Malaterre Copyright (c) 2015, Mathieu Malaterre Copyright (c) 2015, Matthieu Darbois Copyright (c) 2016, Even Rouault Copyright (c) 2017, IntoPIX SA Copyright (c) 2017, IntoPix SA All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## Files: openjpeg/src/lib/openjp2/cidx_manager.c $Id: cidx_manager.c 897 2011-08-28 21:43:57Z Kaori.Hagihara@gmail.com $ Copyright (c) 2002-2014, Professor Benoit Macq Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium Copyright (c) 2003-2004, Yannick Verschueren Copyright (c) 2010-2011, Kaori Hagihara All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## Files: openjpeg/src/lib/openjp2/cidx_manager.h $Id: cidx_manager.h 897 2011-08-28 21:43:57Z Kaori.Hagihara@gmail.com $ Copyright (c) 2002-2014, Professor Benoit Macq Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium Copyright (c) 2003-2004, Yannick Verschueren Copyright (c) 2010-2011, Kaori Hagihara All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## Files: openjpeg/src/lib/openjp2/indexbox_manager.h $Id: indexbox_manager.h 897 2011-08-28 21:43:57Z Kaori.Hagihara@gmail.com $ Copyright (c) 2002-2014, Professor Benoit Macq Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium Copyright (c) 2003-2004, Yannick Verschueren Copyright (c) 2010-2011, Kaori Hagihara All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## Files: openjpeg/src/lib/openjp2/j2k.h The copyright in this software is being made available under the 2-clauses BSD License, included below. This software may be subject to other third party and contributor rights, including patent rights, and no such rights are granted under this license. Copyright (c) 2001-2003, David Janssens Copyright (c) 2002-2003, Yannick Verschueren Copyright (c) 2002-2014, Professor Benoit Macq Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium Copyright (c) 2003-2007, Francois-Olivier Devaux Copyright (c) 2003-2014, Antonin Descampe Copyright (c) 2005, Herve Drolon, FreeImage Team Copyright (c) 2006-2007, Parvatha Elangovan Copyright (c) 2008, Jerome Fimes, Communications & Systemes Copyright (c) 2011-2012, Centre National d'Etudes Spatiales (CNES), France Copyright (c) 2012, CS Systemes d'Information, France All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## Files: openjpeg/src/lib/openjp2/phix_manager.c $Id: phix_manager.c 897 2011-08-28 21:43:57Z Kaori.Hagihara@gmail.com $ Copyright (c) 2002-2014, Professor Benoit Macq Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium Copyright (c) 2003-2004, Yannick Verschueren Copyright (c) 2010-2011, Kaori Hagihara All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## Files: openjpeg/src/lib/openjp2/ppix_manager.c $Id: ppix_manager.c 897 2011-08-28 21:43:57Z Kaori.Hagihara@gmail.com $ Copyright (c) 2002-2014, Professor Benoit Macq Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium Copyright (c) 2003-2004, Yannick Verschueren Copyright (c) 2010-2011, Kaori Hagihara All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## Files: openjpeg/src/lib/openjp2/thix_manager.c $Id: thix_manager.c 897 2011-08-28 21:43:57Z Kaori.Hagihara@gmail.com $ Copyright (c) 2002-2014, Professor Benoit Macq Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium Copyright (c) 2003-2004, Yannick Verschueren Copyright (c) 2010-2011, Kaori Hagihara All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## Files: openjpeg/src/lib/openjp2/tpix_manager.c $Id: tpix_manager.c 897 2011-08-28 21:43:57Z Kaori.Hagihara@gmail.com $ Copyright (c) 2002-2014, Professor Benoit Macq Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium Copyright (c) 2003-2004, Yannick Verschueren Copyright (c) 2010-2011, Kaori Hagihara All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## Files: tiff/libtiff/tif_lzw.c Copyright (c) 1985, 1986 The Regents of the University of California. All rights reserved. This code is derived from software contributed to Berkeley by James A. Woods, derived from original work by Spencer Thomas and Joseph Orost. Redistribution and use in source and binary forms are permitted provided that the above copyright notice and this paragraph are duplicated in all such forms and that any documentation, advertising materials, and other materials related to such distribution and use acknowledge that the software was developed by the University of California, Berkeley. The name of the University may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ## Files: tiff/port/getopt.c Copyright (c) 1987, 1993, 1994 The Regents of the University of California. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## Files: arch/windows-arm-msvc.h arch/windows-x64-msvc.h arch/windows-x86-msvc.h base/assert_.h base/bench.c base/bobbin.c base/bobbin.h base/claptrap-impl.h base/ctype_.h base/dirent_.h base/dos_.h base/echogs.c base/errno_.h base/fapibstm.c base/fapiufst.c base/fcntl_.h base/gconf.c base/gconf.h base/gdbflags.h base/gdebug.h base/gdevabuf.c base/gdevbbox.c base/gdevbbox.h base/gdevdbit.c base/gdevdcrd.c base/gdevdcrd.h base/gdevddrw.c base/gdevddrw.h base/gdevdevn.h base/gdevdevnprn.h base/gdevdflt.c base/gdevdgbr.c base/gdevemap.c base/gdevepo.c base/gdevepo.h base/gdevflp.c base/gdevflp.h base/gdevhit.c base/gdevkrnlsclass.c base/gdevkrnlsclass.h base/gdevm1.c base/gdevm16.c base/gdevm2.c base/gdevm24.c base/gdevm32.c base/gdevm4.c base/gdevm40.c base/gdevm48.c base/gdevm56.c base/gdevm64.c base/gdevm8.c base/gdevmem.h base/gdevmpla.h base/gdevmplt.c base/gdevmplt.h base/gdevmr1.c base/gdevmr2n.c base/gdevmr8n.c base/gdevmrop.h base/gdevmrun.c base/gdevmrun.h base/gdevmx.c base/gdevnfwd.c base/gdevnup.c base/gdevnup.h base/gdevoflt.c base/gdevoflt.h base/gdevpccm.c base/gdevpccm.h base/gdevpipe.c base/gdevplnx.c base/gdevplnx.h base/gdevppla.c base/gdevppla.h base/gdevprn.h base/gdevpxat.h base/gdevpxen.h base/gdevpxop.h base/gdevrops.c base/gdevsclass.h base/gdevvec.h base/gen_ordered.c base/gen_ordered.h base/genarch.c base/genconf.c base/gendev.c base/genht.c base/globals.h base/gp.h base/gp_dosfe.c base/gp_dosfs.c base/gp_dvx.c base/gp_getnv.c base/gp_mktmp.c base/gp_msdll.c base/gp_msdos.c base/gp_mslib.c base/gp_mspol.c base/gp_msprn.c base/gp_mswin.c base/gp_mswin.h base/gp_nsync.c base/gp_ntfs.c base/gp_nxpsprn.c base/gp_os2.c base/gp_os2.h base/gp_os2fs.c base/gp_os2pr.c base/gp_os9.c base/gp_paper.c base/gp_psync.c base/gp_stdia.c base/gp_stdin.c base/gp_strdl.c base/gp_unifn.c base/gp_unifs.c base/gp_unix.c base/gp_upapr.c base/gp_utf8.h base/gp_vms.c base/gp_wgetv.c base/gp_win32.c base/gp_winfs.c base/gp_winfs2.c base/gp_wpapr.c base/gp_wsync.c base/gp_wxpsprn.cpp base/gpcheck.h base/gpgetenv.h base/gpmisc.h base/gs_dll_call.h base/gs_mgl_e.h base/gs_mro_e.h base/gsagl.c base/gsagl.h base/gsalloc.c base/gsalloc.h base/gsargs.c base/gsargs.h base/gsbitcom.c base/gsbitmap.h base/gsbitops.c base/gsbitops.h base/gsbittab.c base/gsbittab.h base/gsccode.h base/gsccolor.h base/gscdef.c base/gscdevn.h base/gscedata.h base/gscencs.c base/gscencs.h base/gschar.c base/gschar.h base/gschar0.c base/gscicach.c base/gscicach.h base/gscie.c base/gscie.h base/gsciemap.c base/gscindex.h base/gsclipsr.c base/gsclipsr.h base/gscolor.c base/gscolor.h base/gscolor1.c base/gscolor1.h base/gscolor2.c base/gscolor2.h base/gscolor3.c base/gscolor3.h base/gscompt.h base/gscoord.c base/gscoord.h base/gscparam.c base/gscpixel.c base/gscpixel.h base/gscpm.h base/gscrd.c base/gscrd.h base/gscrdp.c base/gscrdp.h base/gscrypt1.c base/gscrypt1.h base/gscscie.c base/gscsel.h base/gscsepr.h base/gscspace.h base/gscssub.c base/gscssub.h base/gsdcolor.h base/gsdevice.c base/gsdevice.h base/gsdevmem.c base/gsdll.h base/gsdllwin.h base/gsdps1.c base/gsdsrc.c base/gsdsrc.h base/gsequivc.c base/gsequivc.h base/gserrors.h base/gsexit.h base/gsfcid.c base/gsfcid2.c base/gsfcmap.c base/gsfcmap.h base/gsfcmap1.c base/gsflip.c base/gsflip.h base/gsfname.c base/gsfname.h base/gsfont.h base/gsfont0.c base/gsfont0c.c base/gsform1.h base/gsftopts.h base/gsfunc.c base/gsfunc.h base/gsfunc0.c base/gsfunc0.h base/gsfunc3.c base/gsfunc3.h base/gsfunc4.c base/gsfunc4.h base/gsgc.h base/gsgcache.c base/gsgcache.h base/gsgdata.c base/gsgdata.h base/gsgstate.c base/gsgstate.h base/gshsb.c base/gshsb.h base/gsht.h base/gsht1.c base/gsht1.h base/gshtscr.c base/gshtx.c base/gshtx.h base/gsicc.h base/gsicc_blacktext.c base/gsicc_blacktext.h base/gsicc_cache.h base/gsicc_cms.h base/gsicc_create.h base/gsicc_lcms2.c base/gsicc_lcms2mt.c base/gsicc_manage.h base/gsicc_monitorcm.c base/gsicc_nocm.c base/gsicc_profilecache.c base/gsicc_profilecache.h base/gsicc_replacecm.c base/gsimage.c base/gsimage.h base/gsimpath.c base/gsinit.c base/gsio.h base/gsiodev.c base/gsiodevs.c base/gsiodisk.c base/gsioram.c base/gsiorom.c base/gsiorom.h base/gsipar3x.h base/gsiparam.h base/gsiparm3.h base/gsiparm4.h base/gsjconf.h base/gsjmorec.h base/gslib.c base/gslib.h base/gsline.c base/gsline.h base/gslparam.h base/gsmalloc.h base/gsmatrix.c base/gsmatrix.h base/gsmchunk.c base/gsmchunk.h base/gsmdebug.h base/gsmemory.c base/gsmemory.h base/gsmemraw.h base/gsmemret.c base/gsmemret.h base/gsmisc.c base/gsnamecl.c base/gsnamecl.h base/gsncdummy.c base/gsncdummy.h base/gsnogc.c base/gsnogc.h base/gsnotify.c base/gsnotify.h base/gsovrc.h base/gspaint.c base/gspaint.h base/gsparam.c base/gsparam.h base/gsparam2.c base/gsparaml.c base/gsparams.c base/gsparams.h base/gsparamx.c base/gsparamx.h base/gspath.c base/gspath.h base/gspath1.c base/gspath2.h base/gspcolor.c base/gspcolor.h base/gspenum.h base/gspmdrv.c base/gspmdrv.h base/gsptype1.h base/gsptype2.c base/gsptype2.h base/gsrect.h base/gsrefct.h base/gsromfs0.c base/gsrop.c base/gsrop.h base/gsroprun.c base/gsroprun1.h base/gsroprun24.h base/gsroprun8.h base/gsropt.h base/gsroptab.c base/gsserial.c base/gsserial.h base/gsshade.c base/gsshade.h base/gssprintf.h base/gsstate.h base/gsstrl.h base/gsstrtok.h base/gsstruct.h base/gsstype.h base/gstext.h base/gstiffio.c base/gstiffio.h base/gstparam.h base/gstrans.c base/gstrans.h base/gstrap.c base/gstrap.h base/gstype1.c base/gstype1.h base/gstype2.c base/gstype42.c base/gstypes.h base/gsuid.h base/gsutil.c base/gsutil.h base/gsxfont.h base/gx.h base/gxacpath.c base/gxalloc.h base/gxalpha.h base/gxarith.h base/gxbcache.c base/gxbcache.h base/gxbitfmt.h base/gxbitmap.h base/gxbitops.h base/gxccache.c base/gxccman.c base/gxcdevn.h base/gxchar.c base/gxchar.h base/gxchrout.c base/gxchrout.h base/gxcht.c base/gxcid.h base/gxcie.h base/gxcindex.h base/gxclbits.c base/gxclfile.c base/gxclio.h base/gxclip2.c base/gxclip2.h base/gxclipm.c base/gxclipm.h base/gxclipsr.h base/gxcllzw.c base/gxclmem.h base/gxclpage.h base/gxclpath.h base/gxclrast.c base/gxclrect.c base/gxclthrd.h base/gxclzlib.c base/gxcmap.h base/gxcolor2.h base/gxcomp.h base/gxcoord.h base/gxcpath.h base/gxctable.c base/gxctable.h base/gxcvalue.h base/gxdcconv.c base/gxdcconv.h base/gxdcolor.h base/gxdda.h base/gxdevbuf.h base/gxdevice.h base/gxdevmem.h base/gxdevndi.c base/gxdht.h base/gxdhtres.h base/gxdhtserial.c base/gxdhtserial.h base/gxdither.h base/gxdownscale.h base/gxdtfill.h base/gxfapiu.c base/gxfapiu.h base/gxfarith.h base/gxfcache.h base/gxfcid.h base/gxfcmap.h base/gxfcmap1.h base/gxfill.c base/gxfill.h base/gxfillsl.h base/gxfilltr.h base/gxfillts.h base/gxfixed.h base/gxfmap.h base/gxfont0.h base/gxfont0c.h base/gxfont1.h base/gxfont42.h base/gxfrac.h base/gxfunc.h base/gxgetbit.h base/gxgstate.h base/gxhintn.c base/gxhintn.h base/gxhintn1.c base/gxhldevc.c base/gxhldevc.h base/gxht.c base/gxht.h base/gxht_thresh.c base/gxht_thresh.h base/gxhtbit.c base/gxhttile.h base/gxhttype.h base/gxi12bit.c base/gxi16bit.c base/gxiclass.h base/gxidata.c base/gximage.c base/gximage.h base/gximage1.c base/gximage3.c base/gximage3.h base/gximage4.c base/gximask.c base/gximask.h base/gxiodev.h base/gxiscale.c base/gxline.h base/gxlum.h base/gxmatrix.h base/gxmclip.c base/gxmclip.h base/gxobj.h base/gxoprect.c base/gxoprect.h base/gxp1impl.h base/gxpaint.c base/gxpaint.h base/gxpath.h base/gxpath2.c base/gxpcache.h base/gxpcopy.c base/gxpdash.c base/gxpflat.c base/gxrplane.h base/gxsample.c base/gxsample.h base/gxsamplp.h base/gxscanc.c base/gxscanc.h base/gxshade.c base/gxshade.h base/gxshade1.c base/gxshade4.c base/gxshade4.h base/gxstate.h base/gxstdio.h base/gxtext.h base/gxtmap.h base/gxttf.h base/gxttfb.c base/gxttfb.h base/gxtype1.h base/gxxfont.h base/gzacpath.h base/gzcpath.h base/gzht.h base/gzline.h base/gzpath.h base/gzspotan.c base/gzspotan.h base/gzstate.h base/jerror_.h base/jmemcust.c base/jmemcust.h base/locale_.h base/malloc_.h base/math_.h base/memento.c base/memento.h base/memory_.h base/mkromfs.c base/pack_ps.c base/pipe_.h base/png_.h base/ramfs.c base/ramfs.h base/sa85d.c base/sa85d.h base/sa85x.h base/saes.c base/saes.h base/sarc4.c base/sarc4.h base/sbcp.c base/sbcp.h base/sbtx.h base/scanchar.h base/scantab.c base/scf.h base/scfd.c base/scfdgen.c base/scfdtab.c base/scfe.c base/scfetab.c base/scfparam.c base/scfx.h base/scommon.h base/sdcparam.h base/sdct.h base/sdctc.c base/sdctd.c base/sdcte.c base/sddparam.c base/seexec.c base/setjmp_.h base/sfilter.h base/sfilter1.c base/sfilter2.c base/sfxboth.c base/sfxcommon.c base/sfxfd.c base/sfxstdio.c base/shc.c base/shc.h base/sidscale.c base/sidscale.h base/siinterp.c base/siinterp.h base/simscale.h base/siscale.c base/siscale.h base/sisparam.h base/sjbig2.c base/sjbig2.h base/sjpeg.h base/sjpegc.c base/sjpegd.c base/sjpege.c base/sjpx_none.c base/sjpx_openjpeg.c base/sjpx_openjpeg.h base/slzwc.c base/slzwd.c base/slzwe.c base/slzwx.h base/smd5.c base/smd5.h base/smtf.h base/spdiff.c base/spdiffx.h base/spngp.c base/spngpx.h base/spprint.c base/spprint.h base/spsdf.c base/spsdf.h base/srdline.h base/srld.c base/srle.c base/srlx.h base/ssha2.c base/ssha2.h base/sstring.c base/sstring.h base/stat_.h base/std.h base/stdio_.h base/stdpre.h base/stream.c base/stream.h base/strimpl.h base/string_.h base/strmio.c base/strmio.h base/szlibd.c base/szlibe.c base/szlibx.h base/szlibxx.h base/time_.h base/ttcalc.c base/ttcalc.h base/ttcommon.h base/ttconf.h base/ttconfig.h base/ttfinp.c base/ttfinp.h base/ttfmain.c base/ttfmemd.c base/ttfmemd.h base/ttfoutl.h base/ttfsfnt.h base/ttinterp.c base/ttinterp.h base/ttload.c base/ttload.h base/ttmisc.h base/ttobjs.c base/ttobjs.h base/tttables.h base/tttype.h base/tttypes.h base/unistd_.h base/valgrind.h base/vms_x_fix.h base/vmsmath.h base/windows_.h base/winrtsup.cpp base/winrtsup.h base/wrfont.c base/wrfont.h base/write_t1.h base/write_t2.c base/write_t2.h base/x_.h contrib/gdevadmp.c demos/MATLAB/gs_displaydevice.c demos/c/api_test.c devices/gdev3852.c devices/gdev4081.c devices/gdev8510.c devices/gdev8bcm.c devices/gdev8bcm.h devices/gdevatx.c devices/gdevbj10.c devices/gdevbjc.h devices/gdevbjcl.c devices/gdevbjcl.h devices/gdevbmp.c devices/gdevbmp.h devices/gdevbmpc.c devices/gdevccr.c devices/gdevcdj.c devices/gdevcfax.c devices/gdevchameleon.c devices/gdevcif.c devices/gdevclj.c devices/gdevcljc.c devices/gdevcslw.c devices/gdevdfax.c devices/gdevdjet.c devices/gdevdjtc.c devices/gdevdljm.c devices/gdevdljm.h devices/gdevdm24.c devices/gdevdsp.c devices/gdevdsp.h devices/gdevdsp2.h devices/gdevepsc.c devices/gdevepsn.c devices/gdevfax.c devices/gdevfax.h devices/gdevfpng.c devices/gdevhl7x.c devices/gdevicov.c devices/gdevimgn.c devices/gdevjpeg.c devices/gdevl31s.c devices/gdevlbp8.c devices/gdevlj56.c devices/gdevlp8k.c devices/gdevlxm.c devices/gdevmeds.c devices/gdevmeds.h devices/gdevmgr.c devices/gdevmgr.h devices/gdevmiff.c devices/gdevn533.c devices/gdevo182.c devices/gdevokii.c devices/gdevpbm.c devices/gdevpcl.c devices/gdevpcl.h devices/gdevpcx.c devices/gdevpdfimg.h devices/gdevpe.c devices/gdevphex.c devices/gdevpjet.c devices/gdevplan.c devices/gdevplib.c devices/gdevplib.h devices/gdevpm.h devices/gdevpng.c devices/gdevpsd.h devices/gdevpxut.c devices/gdevpxut.h devices/gdevrinkj.c devices/gdevsj48.c devices/gdevsnfb.c devices/gdevsppr.c devices/gdevstc.c devices/gdevstc.h devices/gdevstc1.c devices/gdevstc2.c devices/gdevstc3.c devices/gdevstc4.c devices/gdevtfax.c devices/gdevtfax.h devices/gdevtfnx.c devices/gdevtifs.c devices/gdevtifs.h devices/gdevtknk.c devices/gdevtrac.c devices/gdevtsep.c devices/gdevx.c devices/gdevxalt.c devices/gdevxcf.c devices/gdevxcmp.c devices/gdevxcmp.h devices/gdevxres.c devices/gxfcopy.c devices/gxfcopy.h devices/minftrsz.c devices/minftrsz.h devices/rinkj/evenbetter-rll.c devices/rinkj/evenbetter-rll.h devices/rinkj/rinkj-byte-stream.c devices/rinkj/rinkj-byte-stream.h devices/rinkj/rinkj-config.c devices/rinkj/rinkj-config.h devices/rinkj/rinkj-device.c devices/rinkj/rinkj-device.h devices/rinkj/rinkj-dither.c devices/rinkj/rinkj-dither.h devices/rinkj/rinkj-epson870.c devices/rinkj/rinkj-epson870.h devices/rinkj/rinkj-screen-eb.c devices/rinkj/rinkj-screen-eb.h devices/vector/gdevdocxw.c devices/vector/gdevpdfc.c devices/vector/gdevpdfc.h devices/vector/gdevpdfe.c devices/vector/gdevpdfg.h devices/vector/gdevpdfk.c devices/vector/gdevpdt.c devices/vector/gdevpdt.h devices/vector/gdevpdtc.c devices/vector/gdevpdts.c devices/vector/gdevpdts.h devices/vector/gdevpdtt.h devices/vector/gdevpdtv.c devices/vector/gdevpdtv.h devices/vector/gdevpsdi.c devices/vector/gdevpsdp.c devices/vector/gdevpsds.c devices/vector/gdevpsdu.c devices/vector/gdevpsf1.c devices/vector/gdevpsf2.c devices/vector/gdevpsfm.c devices/vector/gdevpsft.c devices/vector/gdevpsfu.c devices/vector/gdevpsfx.c devices/vector/gdevpx.c devices/vector/gdevtxtw.c devices/vector/whitelst.c devices/vector/whitelst.h ios/ios_arch-arm.h ios/ios_arch-x86.h jbig2dec/config_win32.h jbig2dec/jbig2.c jbig2dec/jbig2.h jbig2dec/jbig2_arith.c jbig2dec/jbig2_arith.h jbig2dec/jbig2_arith_iaid.c jbig2dec/jbig2_arith_iaid.h jbig2dec/jbig2_arith_int.c jbig2dec/jbig2_arith_int.h jbig2dec/jbig2_generic.c jbig2dec/jbig2_generic.h jbig2dec/jbig2_halftone.c jbig2dec/jbig2_halftone.h jbig2dec/jbig2_huffman.c jbig2dec/jbig2_huffman.h jbig2dec/jbig2_hufftab.c jbig2dec/jbig2_hufftab.h jbig2dec/jbig2_image.c jbig2dec/jbig2_image.h jbig2dec/jbig2_image_pbm.c jbig2dec/jbig2_image_png.c jbig2dec/jbig2_image_rw.h jbig2dec/jbig2_mmr.c jbig2dec/jbig2_mmr.h jbig2dec/jbig2_page.c jbig2dec/jbig2_page.h jbig2dec/jbig2_priv.h jbig2dec/jbig2_refinement.c jbig2dec/jbig2_refinement.h jbig2dec/jbig2_segment.c jbig2dec/jbig2_segment.h jbig2dec/jbig2_symbol_dict.c jbig2dec/jbig2_symbol_dict.h jbig2dec/jbig2_text.c jbig2dec/jbig2_text.h jbig2dec/jbig2dec.c jbig2dec/memcmp.c jbig2dec/memento.c jbig2dec/memento.h jbig2dec/os_types.h jbig2dec/pbm2png.c psi/bfont.h psi/btoken.h psi/dmmain.c psi/dpmain.c psi/dscparse.c psi/dscparse.h psi/dstack.h psi/dwdll.c psi/dwdll.h psi/dwimg.c psi/dwimg.h psi/dwmain.c psi/dwmainc.c psi/dwnodll.c psi/dwreg.c psi/dwreg.h psi/dwres.h psi/dwtext.c psi/dwtext.h psi/dwtrace.c psi/dwtrace.h psi/dxmain.c psi/dxmainc.c psi/estack.h psi/files.h psi/ghost.h psi/gs.c psi/gsdll.c psi/gserver.c psi/ialloc.h psi/iapi.c psi/iapi.h psi/iastate.h psi/iastruct.h psi/ibnum.c psi/ibnum.h psi/ichar.h psi/ichar1.h psi/icharout.h psi/icid.h psi/icie.h psi/icolor.h psi/iconf.c psi/iconf.h psi/icontext.c psi/icontext.h psi/icremap.h psi/icsmap.h psi/icstate.h psi/iddict.h psi/iddstack.h psi/idebug.c psi/idebug.h psi/idict.c psi/idict.h psi/idictdef.h psi/idicttpl.h psi/idisp.c psi/idisp.h psi/idosave.h psi/idparam.c psi/idparam.h psi/idsdata.h psi/idstack.c psi/idstack.h psi/ierrors.h psi/iesdata.h psi/iestack.h psi/ifapi.h psi/ifcid.h psi/ifilter.h psi/ifilter2.h psi/ifont.h psi/ifont1.h psi/ifont2.h psi/ifont42.h psi/ifrpred.h psi/ifunc.h psi/ifwpred.h psi/igc.h psi/igcref.c psi/igcstr.h psi/igstate.h psi/iht.h psi/iimage.h psi/iinit.h psi/ilevel.h psi/ilocate.c psi/imain.c psi/imain.h psi/imainarg.h psi/imemory.h psi/iminst.h psi/iname.c psi/iname.h psi/inamedef.h psi/inameidx.h psi/inames.h psi/inamestr.h psi/inobtokn.c psi/inouparm.c psi/interp.c psi/interp.h psi/iosdata.h psi/iostack.h psi/ipacked.h psi/iparam.c psi/iparam.h psi/iparray.h psi/ipcolor.h psi/iplugin.c psi/iplugin.h psi/ireclaim.c psi/iref.h psi/isave.h psi/iscan.c psi/iscan.h psi/iscanbin.c psi/iscanbin.h psi/iscannum.h psi/isdata.h psi/isstate.h psi/istack.c psi/istack.h psi/istkparm.h psi/istream.h psi/istruct.h psi/itoken.h psi/iutil.h psi/iutil2.c psi/iutil2.h psi/ivmem2.h psi/ivmspace.h psi/main.h psi/oparc.h psi/opcheck.h psi/opdef.h psi/oper.h psi/opextern.h psi/ostack.h psi/psapi.h psi/store.h psi/zalg.c psi/zarith.c psi/zarray.c psi/zbfont.c psi/zbseq.c psi/zcfont.c psi/zchar.c psi/zchar1.c psi/zchar2.c psi/zchar32.c psi/zchar42.c psi/zchar42.h psi/zcharout.c psi/zcid.c psi/zcie.c psi/zcie.h psi/zcolor.h psi/zcolor1.c psi/zcolor2.c psi/zcolor3.c psi/zcontrol.c psi/zcrd.c psi/zcsindex.c psi/zcspixel.c psi/zcssepr.c psi/zdevcal.c psi/zdevice2.c psi/zdfilter.c psi/zdict.c psi/zdouble.c psi/zdps1.c psi/zdscpars.c psi/zfaes.c psi/zfarc4.c psi/zfbcp.c psi/zfcid.c psi/zfcid0.c psi/zfcid1.c psi/zfcmap.c psi/zfdctd.c psi/zfdcte.c psi/zfdecode.c psi/zfile.c psi/zfile.h psi/zfile1.c psi/zfileio.c psi/zfilter.c psi/zfilter2.c psi/zfimscale.c psi/zfjbig2.c psi/zfjpx.c psi/zfmd5.c psi/zfont.c psi/zfont0.c psi/zfont1.c psi/zfont2.c psi/zfont32.c psi/zfont42.c psi/zfontenum.c psi/zfproc.c psi/zfrsd.c psi/zfrsd.h psi/zfsample.c psi/zfsha2.c psi/zfunc.c psi/zfunc.h psi/zfunc0.c psi/zfunc3.c psi/zfzlib.c psi/zgeneric.c psi/zgstate.c psi/zht.c psi/zht2.c psi/zht2.h psi/zicc.h psi/zimage.c psi/zimage3.c psi/ziodev.c psi/ziodev2.c psi/ziodevsc.c psi/zmath.c psi/zmatrix.c psi/zmedia2.c psi/zmisc.c psi/zmisc1.c psi/zmisc2.c psi/zmisc3.c psi/zncdummy.c psi/zpacked.c psi/zpaint.c psi/zpath.c psi/zpath1.c psi/zpcolor.c psi/zpdf_r6.c psi/zrelbit.c psi/zshade.c psi/zstack.c psi/zstring.c psi/zsysvm.c psi/ztoken.c psi/ztrans.c psi/ztrap.c psi/ztype.c psi/zupath.c psi/zusparam.c psi/zutf8.c psi/zvmem.c psi/zvmem2.c psi/zwinutf8.c toolbin/color/icc_creator/ICC_Creator/CIELAB.h toolbin/color/icc_creator/ICC_Creator/ICC_Creator.cpp toolbin/color/icc_creator/ICC_Creator/ICC_Creator.h toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.cpp toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.h toolbin/color/icc_creator/ICC_Creator/icc_create.cpp toolbin/color/icc_creator/ICC_Creator/icc_create.h toolbin/gen_ldf_jb2.py toolbin/gitlog2changelog.py toolbin/halftone/gen_ordered/gen_ordered_main.c toolbin/halftone/gen_stochastic/gen_stochastic.c toolbin/halftone/thresh_remap/thresh_remap.c toolbin/jpxtopdf.c toolbin/memory.py toolbin/ocheck.py toolbin/split_changelog.py toolbin/tests/build_revision.py toolbin/tests/check_all.py toolbin/tests/check_comments.py toolbin/tests/check_dirs.py toolbin/tests/check_docrefs.py toolbin/tests/cmpi.py toolbin/tests/compare_checksumdb.py toolbin/tests/compare_checksums.py toolbin/tests/dump_checksum.py toolbin/tests/dump_checksum_plus.py toolbin/tests/dump_checksum_raw.py toolbin/tests/fuzzy.c toolbin/tests/get_baseline_log.py toolbin/tests/get_baselines.py toolbin/tests/gscheck_all.py toolbin/tests/gscheck_fuzzypdf.py toolbin/tests/gscheck_pdfwrite.py toolbin/tests/gscheck_raster.py toolbin/tests/gscheck_testfiles.py toolbin/tests/gsconf.py toolbin/tests/gsparamsets.py toolbin/tests/gssum.py toolbin/tests/gstestgs.py toolbin/tests/gstestutils.py toolbin/tests/gsutil.py toolbin/tests/make_baselinedb.py toolbin/tests/make_testdb.py toolbin/tests/myoptparse.py toolbin/tests/rasterdb.py toolbin/tests/run_nightly.py toolbin/tests/run_regression.py toolbin/tests/testdiff.py toolbin/tests/update_baseline.py Copyright (C) 2001-2023 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: base/claptrap-init.c base/claptrap-planar.c base/claptrap.c base/claptrap.h Copyright (C) 2015-2023 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: base/ets.c base/ets.h base/ets_tm.h Copyright (C) 2013-2023 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: base/fapi_ft.c base/gdevdevn.c base/gdevdrop.c base/gdevdsha.c base/gdevmem.c base/gdevmpla.c base/gdevp14.c base/gdevp14.h base/gdevprn.c base/gdevsclass.c base/gdevvec.c base/gp_mshdl.c base/gp_stdib.c base/gp_utf8.c base/gpmisc.c base/gpsync.h base/gscdefs.h base/gscdevn.c base/gscedata.c base/gscms.h base/gscsepr.c base/gscspace.c base/gsdparam.c base/gsfont.c base/gsht.c base/gsicc.c base/gsicc_cache.c base/gsicc_create.c base/gsicc_manage.c base/gslibctx.c base/gslibctx.h base/gsmalloc.c base/gsovrc.c base/gsptype1.c base/gsstate.c base/gstext.c base/gxband.h base/gxblend.c base/gxblend.h base/gxblend1.c base/gxcldev.h base/gxclimag.c base/gxclip.c base/gxclip.h base/gxclist.c base/gxclist.h base/gxclmem.c base/gxclpage.c base/gxclpath.c base/gxclread.c base/gxclthrd.c base/gxclutil.c base/gxcmap.c base/gxcpath.c base/gxcspace.h base/gxdcolor.c base/gxdevcli.h base/gxdevsop.h base/gxdownscale.c base/gxfapi.c base/gxfapi.h base/gxfont.h base/gxftype.h base/gxicolor.c base/gxifast.c base/gximag3x.c base/gximag3x.h base/gximono.c base/gxiparam.h base/gxipixel.c base/gxp1fill.c base/gxpath.c base/gxpcmap.c base/gxpcolor.h base/gxshade6.c base/gxstroke.c base/gxsync.c base/gxsync.h base/gxtype1.c base/sdcparam.c base/sdeparam.c base/simscale.c base/stdint_.h base/szlibc.c base/write_t1.c devices/gdevbit.c devices/gdevcmykog.c devices/gdevescp.c devices/gdevijs.c devices/gdevocr.c devices/gdevpdfimg.c devices/gdevpdfocr.c devices/gdevperm.c devices/gdevpsd.c devices/gdevpsim.c devices/gdevupd.c devices/gdevwpr2.c devices/gdevx.h devices/gdevxini.c devices/vector/gdevpdf.c devices/vector/gdevpdfb.c devices/vector/gdevpdfb.h devices/vector/gdevpdfd.c devices/vector/gdevpdfg.c devices/vector/gdevpdfi.c devices/vector/gdevpdfj.c devices/vector/gdevpdfm.c devices/vector/gdevpdfo.c devices/vector/gdevpdfo.h devices/vector/gdevpdfp.c devices/vector/gdevpdfr.c devices/vector/gdevpdft.c devices/vector/gdevpdfu.c devices/vector/gdevpdfv.c devices/vector/gdevpdfx.h devices/vector/gdevpdtb.c devices/vector/gdevpdtb.h devices/vector/gdevpdtd.c devices/vector/gdevpdtd.h devices/vector/gdevpdte.c devices/vector/gdevpdtf.c devices/vector/gdevpdtf.h devices/vector/gdevpdti.c devices/vector/gdevpdti.h devices/vector/gdevpdtt.c devices/vector/gdevpdtw.c devices/vector/gdevpdtw.h devices/vector/gdevpdtx.h devices/vector/gdevpsdf.h devices/vector/gdevpsds.h devices/vector/gdevpsf.h devices/vector/gdevpsu.c devices/vector/gdevpsu.h devices/vector/gdevxps.c psi/ialloc.c psi/igc.c psi/igcstr.c psi/iinit.c psi/imainarg.c psi/isave.c psi/iscannum.c psi/iutil.c psi/psapi.c psi/zcharx.c psi/zcolor.c psi/zdevice.c psi/zfapi.c psi/zform.c psi/zfunc4.c psi/zht1.c psi/zicc.c psi/zpdfops.c Copyright (C) 2001-2024 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: base/gscedata.c devices/vector/gdevpsu.c copyright ## Files: base/gscedata.c N(9,180): copyright ## Files: base/gscedata.c copyrightserif ## Files: base/gscedata.c trademarkserif ## Files: base/gscedata.c copyrightsans ## Files: base/gscedata.c trademarksans ## Files: base/gscedata.c N(13,156): copyrightsans ## Files: base/gscedata.c N(14,182): copyrightserif ## Files: base/gscedata.c N(13,390): trademarksans ## Files: base/gscedata.c N(14,392): trademarkserif ## Files: base/gscedata.c trademark ## Files: base/gscedata.c N(9,450): trademark ## Files: base/gsicc_cache.c The following is used to transform a named color value at a particular tint value to the output device values. This function is provided only as a demonstration and will likely need to be altered and optimized for those wishing to perform full spot color look-up support. The object used to perform the transformation is typically a look-up table that contains the spot color name and a CIELAB value for 100% colorant (it could also contain device values in the table). It can be more complex where-by you have a 1-D lut that provides CIELAB values or direct device values as a function of tint. In such a case, the table would be interpolated to compute all possible tint values. If CIELAB values are provided, they can be pushed through the device profile using the CMM. In this particular demonstration, we simply provide CIELAB for a few color names in the file toolbin/color/named_color/named_color_table.txt . The tint value is used to scale the CIELAB value from 100% colorant to a D50 whitepoint. The resulting CIELAB value is then pushed through the CMM to obtain device values for the current device. The file named_colors.pdf which is in toolbin/color/named_color/ contains these spot colors and will enable the user to see how the code behaves. The named color table is specified to ghostscript by the command line option -sNamedProfile=./toolbin/color/named_color/named_color_table.txt (or with full path name). If it is desired to have ghostscript compiled with the named color table, it can be placed in the iccprofiles directory and then build ghostscript with COMPILE_INITS=1. When specified the file contents are pointed to by the buffer member variable of the device_named profile in profile manager. When the first call occurs in here, the contents of the buffer are parsed and placed into a custom stucture that is pointed to by the profile pointer. Note that this pointer is not visible to the garbage collector and should be allocated in non-gc memory as is demonstrated in this sample. The structure elements are released when the profile is destroyed through the call to gsicc_named_profile_release, which is set as the value of the profile member variable release. Note that there are calls defined in gsicc_littlecms.c that will create link transforms between Named Color ICC profiles and the output device. Such profiles are rarely used (at least I have not run across any yet) so the code is currently not used. Also note that for those serious about named color support, a cache as well as efficient table-look-up methods would likely be important for performance. Finally note that PANTONE is a registered trademark and PANTONE colors are a licensed product of XRITE Inc. See http://www.pantone.com for more information. Licensees of Pantone color libraries or similar libraries should find it straight forward to interface. Pantone names are referred to in named_color_table.txt and contained in the file named_colors.pdf. !!!!IT WILL BE NECESSARY TO PERFORM THE PROPER DEALLOCATION CLEAN-UP OF THE STRUCTURES WHEN rc_free_icc_profile OCCURS FOR THE NAMED COLOR PROFILE!!!!!! See gsicc_named_profile_release below for an example. This is set in the profile release member variable. ## Files: base/gsicc_create.c This is the code that is used to convert the various PDF and PS CIE based color spaces to ICC profiles. This enables the use of an external CMS that is ICC centric to be used for ALL color management. The following spaces are handled: From PDF % Input Spaces CalRGB --> ICC 1-D LUTS and Matrix CalGray --> ICC 1-D LUT LAB --> ICC MLUT with a 2x2 sized table From PS %% Input Spaces CIEBasedABC --> ICC 1-D LUTs and Matrix CIEBasedA --> ICC 1-D LUT CIEBasedDEF --> 3-D MLUT plus 1-D LUTs CIEBasedDEFG --> 4-D MLUT pluse 1-D LUTs %% Output Spaces Type1 CRD --> ICC will have MLUT if render table present. A few notes: Required Tags for ALL profiles include: profileDescriptionTag copyrightTag mediaWhatePointTag chromaticAdaptationTag (V4 - when measurement data is for other than D50) For color input profiles: Required if N-component LUT-based: AToB0Tag (NOTE ONE WAY! BtoA0Tag is optional. Not true for display profiles.) Required if 3 component matrix based: redMatrixColumnTag greenMatrixColumnTag blueMatrixColumnTag redTRCTag greenTRCTag blueTRCTag Notes: 3-component can include AToB0Tag. Only CIEXYZ encoding can be used with matrix/TRC models. If CIELAB encoding is to be used, we must use LUT-based. For Monochrome input: Required: grayTRCTag Optional AToB0Tag For Color Display Profiles: Required if N-Component LUT-Based AtoB0Tag BToA0Tag (Note inverse required here). Required if 3 component matrix based display profiles redMatrixColumnTag greenMatrixColumnTag blueMatrixColumnTag redTRCTag greenTRCTag blueTRCTag Optional AtoB0Tag BToA0Tag (Note inverse required here). For Monochrome Display Profiles Required grayTRCTag Optional AtoB0Tag BtoA0Tag Note: All profile data must be encoded as big-endian ## Files: base/gsicc_create.c profileDescriptionTag copyrightTag ## Files: base/gsicc_create.c profileDescriptionTag copyrightTag ## Files: base/gsicc_create.c Profile description tag, copyright tag white point and grayTRC ## Files: base/gsicc_create.c Profile description tag, copyright tag white point RGB colorants and RGB TRCs ## Files: base/gsmd5.c base/gsmd5.h Copyright (C) 1999-2021 Artifex Software, Inc. All rights reserved. This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. L. Peter Deutsch ghost@aladdin.com ## Files: base/gsmd5.c Independent implementation of MD5 (RFC 1321). This code implements the MD5 Algorithm defined in RFC 1321, whose text is available at http://www.ietf.org/rfc/rfc1321.txt The code is derived from the text of the RFC, including the test suite (section A.5) but excluding the rest of Appendix A. It does not include any code or documentation that is identified in the RFC as being copyrighted. The original and principal author of md5.c is L. Peter Deutsch . Other authors are noted in the change history that follows (in reverse chronological order): 2007-06-08 RG Namespaced the api calls to avoid conflict with other implementations when linking gs as a library. 2002-04-13 lpd Clarified derivation from RFC 1321; now handles byte order either statically or dynamically; added missing #include in library. 2002-03-11 lpd Corrected argument list for main(), and added int return type, in test program and T value program. 2002-02-21 lpd Added missing #include in test program. 2000-07-03 lpd Patched to eliminate warnings about "constant is unsigned in ANSI C, signed in traditional"; made test program self-checking. 1999-11-04 lpd Edited comments slightly for automatic TOC extraction. 1999-10-18 lpd Fixed typo in header comment (ansi2knr rather than md5). 1999-05-03 lpd Original version. ## Files: base/gsmd5.h Independent implementation of MD5 (RFC 1321). This code implements the MD5 Algorithm defined in RFC 1321, whose text is available at http://www.ietf.org/rfc/rfc1321.txt The code is derived from the text of the RFC, including the test suite (section A.5) but excluding the rest of Appendix A. It does not include any code or documentation that is identified in the RFC as being copyrighted. The original and principal author of md5.h is L. Peter Deutsch . Other authors are noted in the change history that follows (in reverse chronological order): 2002-04-13 lpd Removed support for non-ANSI compilers; removed references to Ghostscript; clarified derivation from RFC 1321; now handles byte order either statically or dynamically. 1999-11-04 lpd Edited comments slightly for automatic TOC extraction. 1999-10-18 lpd Fixed typo in header comment (ansi2knr rather than md5); added conditionalization for C++ compilation from Martin Purschke . 1999-05-03 lpd Original version. ## Files: base/gsncdummy.c This module has been created to demonstrate how to support the use of PANTONE colors to the Ghostscript graphics library. PANTONE colors are specified in both PostScript and PDF files via the use of DeviceN or Separation color spaces. PANTONE is a registered trademark and PANTONE colors are a licensed product of Pantone Inc. See http://www.pantone.com for more information. See the comments at the start of src/gsnamecl.c for description of the client color processing routines. Since this is only a 'demo' implementation, the example implementation does not have some features which might be expected in a 'real' implementation. 1. The Pantone color data table does not have actual entries for all of the different Pantone colors. This data is not included since the values are dependent upon specific details of the output device, inks, etc. 2. Colors in PostScript and PDF are specified with by values between 0 and 1. The output colorant values are scaled linearly. 3. DeviceN color spaces can specify multiple colors. However this implementation assumes that if a PANTONE color is specified in a DeviceN color space, then only PANTONE colors or CMYK are present. This was done to keep the code simple. If other colors are present, then this implementation falls back to using the alternate color space specified with the DeviceN color space. (This is the normal PS and PDF operation.) See also src/zsncdummy.c for an example custom color callback. ## Files: base/gssprintf.c base/gsstrtok.c Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: base/gssprintf.c cvt - IEEE floating point formatting routines. Derived from UNIX V7, Copyright(C) Caldera International Inc. ## Files: base/gsstrl.c Copyright (c) 1998 Todd C. Miller Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: base/gstype42.c One way we can arrive here is from gs_copy_font() -> z42_font_info(), in that case we definitely want to copy the copyright informatoin if there is any, but we don't want to throw an error if we find a Type 42 font which has no copyright information. So get the informaton, but ignore the return code. Bug #696174. ## Files: base/gxclmem.c Based on: memfile.c Version: 1.4 3/21/95 14:59:33 by Ray Johnston. Copyright assigned to Aladdin Enterprises. ## Files: base/gximdecode.c base/gximdecode.h Copyright (C) 2014-2023 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: base/pagelist.c base/pagelist.h pdf/pdf_tokens.h Copyright (C) 2022-2023 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: base/sarc4.c This is an independent implementation of the symmetric block cipher commonly known as 'arcfour' based on Bruce Schneier's description of the algorithm in _Applied Cryptography_. Arcfour is believed to be functionally equivalent to the RC4(tm) cipher mentioned in the PDF specification. (RC4 is a registered trademark of RSA Data Security, Inc.) ## Files: base/simscale_foo.c base/simscale_foo.h base/tessocr.h pdf/pdf_cmap.h pdf/pdf_deref.h pdf/pdf_doc.h pdf/pdf_fmap.h pdf/pdf_font9.c pdf/pdf_mark.h pdf/pdf_repair.h pdf/pdf_sec.h pdf/pdf_utf8.c pdf/pdf_utf8.h Copyright (C) 2020-2023 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: base/siscale_cal.c Copyright (C) 2001-2021 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 7 Mt. Lassen Drive - Suite A-134, San Rafael, CA 94903, U.S.A., +1(415)492-9861, for further information. ## Files: base/spwgd.c base/spwgx.h Copyright (C) 2017-2023 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: base/tess_version.h ///////////////////////////////////////////////////////////////////// File: version.h Description: Version information (C) Copyright 2018, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: base/tessocr.cpp pdf/pdf_cmap.c pdf/pdf_deref.c pdf/pdf_doc.c pdf/pdf_fmap.c pdf/pdf_font11.c pdf/pdf_fontps.c pdf/pdf_fontps.h pdf/pdf_mark.c pdf/pdf_obj.c pdf/pdf_obj.h pdf/pdf_repair.c pdf/pdf_sec.c Copyright (C) 2020-2024 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: base/ttcalc.c ttcalc.c Arithmetic Computations (body). Copyright 1996-1998 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: base/ttcalc.h ttcalc.h Arithmetic Computations (specification). Copyright 1996-1998 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: base/ttcommon.h ttcommon.h 1.0 Library internal functions renaming. Copyright 1996-1998 by David Turner, Robert Wilhelm, and Werner Lemberg This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. This file is used to rename automatically all internal engine functions, when the macro 'TT_PREFIX_ALL_NAMES' is defined. This is useful to avoid conflicts at link time between functions from different sources but with the same name. As a convention, all FreeType internal functions names are prefixed with the two letters "FT" by this file. Note that this file doesn't change the names of FreeType's external functions, which all begin with "TT_". These are: - the High-Level API functions (defined in "freetype.h") - the portable components (memory, file and mutex) ## Files: base/ttconfig.h ttconfig.h 1.0 Configuration settings header file (spec only). Copyright 1996-1998 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. Notes: All the configuration #define statements have been gathered in this file to allow easy check and modification. ## Files: base/ttfsfnt.h File 'sfnt.h' Contains 'sfnt' resource structure description Copyright 1991 Apple Computer, Inc. ## Files: base/ttinterp.c ttinterp.c 2.3 TrueType bytecode intepreter. Copyright 1996-1998 by David Turner, Robert Wilhelm, and Werner Lemberg This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. TODO: - Fix the non-square pixel case (or how to manage the CVT to detect horizontal and vertical scaled FUnits ?) Changes between 2.3 and 2.2: - added support for rotation, stretching, instruction control - added support for non-square pixels. However, this doesn't work perfectly yet... Changes between 2.2 and 2.1: - a small bugfix in the Push opcodes Changes between 2.1 and 2.0: - created the TTExec component to take care of all execution context management. The interpreter has now one single function. - made some changes to support re-entrancy. The re-entrant interpreter is smaller! ## Files: base/ttinterp.h ttinterp.h 2.2 TrueType bytecode intepreter. Copyright 1996-1998 by David Turner, Robert Wilhelm, and Werner Lemberg This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. Changes between 2.2 and 2.1: - a small bugfix in the Push opcodes Changes between 2.1 and 2.0: - created the TTExec component to take care of all execution context management. The interpreter has now one single function. - made some changes to support re-entrancy. The re-entrant interpreter is smaller! ## Files: base/ttload.c ttload.c 1.0 TrueType Tables Loader. Copyright 1996-1998 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: base/ttload.h ttload.h 1.1 TrueType Tables Loader. Copyright 1996-1998 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. Changes between 1.1 and 1.0 : - add function Load_TrueType_Any used by TT_Get_Font_Data ## Files: base/ttobjs.c ttobjs.c 1.0 Objects manager. Copyright 1996-1998 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: base/ttobjs.h ttobjs.h 1.0 Objects definition unit. Copyright 1996-1998 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: base/tttables.h tttables.h 1.1 TrueType Tables structures and handling (specification). Copyright 1996-1998 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: base/tttype.h tttype.h High-level interface specification. Copyright 1996-1998 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. Notes: This is the only file that should be included by client application sources for the final release. All other types and functions defined in the "tt*.h" files are library internals, and should not be included (except of course during development, as now). FreeType is still in beta! ## Files: base/tttypes.h tttypes.h Freetype engine's common types specification (this spec has no associated body). Copyright 1996-1998 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. NOTE: All these declarations are library internals, and *not* part of the high-level interface. See also 'freetype.h'. ## Files: contrib/eplaser/gdevescv.c Copyright (C) EPSON SOFTWARE DEVELOPMENT LABORATORY, INC. 1999,2000. Copyright (C) SEIKO EPSON CORPORATION 2000-2006,2009. Ghostscript printer driver for EPSON ESC/Page and ESC/Page-Color. This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. Everyone is granted permission to copy, modify and redistribute this software, but only under the conditions described in the GNU General Public License. A copy of this license is supposed to have been given to you along with this software so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. SPECIAL THANKS: �ܥɥ饤�Фκ����ˤ����ꡢ�翹���ͤ���� gdevlips, gdevl4v.c �򻲹ͤ� ������ĺ���ޤ����� NOTES: - About Ghostscript 5.10/5.50 BUGS Ghostscript 5.10/5.50 �� Vector driver �� setlinewidth �ؿ��ˤ� �Х�������ޤ������襹�����뤬�ѹ������ˤ������ä������������ѹ����� �ʤ���Фʤ�ޤ��󤬡�Ghostscript 5.10/5.50 �Ǥϥ���������θ����Τ� ˺��Ƥ��ޤ��� ���Υɥ饤�ФϤ��ΥХ�����򤹤뤿��˥��������ʬ�ǽ������Ƥ��ޤ��� ## Files: contrib/eplaser/gdevescv.h Copyright (C) EPSON SOFTWARE DEVELOPMENT LABORATORY, INC. 1999,2000. Copyright (C) SEIKO EPSON CORPORATION 2000-2006,2009. Ghostscript printer driver for EPSON ESC/Page and ESC/Page-Color. This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. Everyone is granted permission to copy, modify and redistribute this software, but only under the conditions described in the GNU General Public License. A copy of this license is supposed to have been given to you along with this software so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/gdevbjc_.c contrib/gdevbjc_.h contrib/gdevbjca.c Copyright (C) 1989, 2000 Aladdin Enterprises. All rights reserved. This program may also be distributed as part of AFPL Ghostscript, under the terms of the Aladdin Free Public License (the "License"). AFPL Ghostscript is distributed with NO WARRANTY OF ANY KIND. No author or distributor accepts any responsibility for the consequences of using it, or for whether it serves any particular purpose or works at all, unless he or she says so in writing. Refer to the License for full details. Every copy of AFPL Ghostscript must include a copy of the License, normally in a plain ASCII text file named PUBLIC. The License grants you the right to copy, modify and redistribute AFPL Ghostscript, but only under certain conditions described in the License. Among other things, the License requires that the copyright notice and this notice be preserved on all copies. ## Files: contrib/gdevbjc_.c BJC-210/240/250/265/1000 Bubble Jet Printer driver for GhostScript main subroutines for GS Copyright 2000, 2001, 2002 Gergely Sz�sz (Gergely Sza'sz) mailto://szaszg@hu.inter.net http://bjc250gs.sourceforge.net This program may be distributed and/or modified under the terms of the GNU General Public License as published by the Free Software Foundation (the "GPL"); either version 2 of the GPL, or (at your option) any later version. When distributed under the terms of the GPL, this program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GPL for more details. If this program is being distributed under the terms of the GPL, you should have received a copy of the GPL along with this program, normally in a plain ASCII text file named COPYING; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 U.S.A. ## Files: contrib/gdevbjc_.h BJC-210/240/250/265/1000 Bubble Jet Printer driver for GhostScript header file Copyright 2000, 2001, 2002 Gergely Sz�sz (Gergely Sza'sz) mailto://szaszg@hu.inter.net http://bjc250gs.sourceforge.net This program may be distributed and/or modified under the terms of the GNU General Public License as published by the Free Software Foundation (the "GPL"); either version 2 of the GPL, or (at your option) any later version. When distributed under the terms of the GPL, this program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GPL for more details. If this program is being distributed under the terms of the GPL, you should have received a copy of the GPL along with this program, normally in a plain ASCII text file named COPYING; if not, write to the: Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301 USA ## Files: contrib/gdevbjca.c BJC-210/240/250/265/1000 Bubble Jet Printer driver for GhostScript utility subroutines and dithering code Copyright 2000, 2001, 2002 Gergely Sz�sz (Gergely Sza'sz) mailto://szaszg@hu.inter.net http://bjc250gs.sourceforge.net This program may be distributed and/or modified under the terms of the GNU General Public License as published by the Free Software Foundation (the "GPL"); either version 2 of the GPL, or (at your option) any later version. When distributed under the terms of the GPL, this program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GPL for more details. If this program is being distributed under the terms of the GPL, you should have received a copy of the GPL along with this program, normally in a plain ASCII text file named COPYING; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 U.S.A. ## Files: contrib/gdevcd8.c Copyright (C) 2000 Hewlett-Packard Company Portions Copyright (C) 1996-1998 . Portions Copyright (C) 1999 Aladdin Enterprises. All rights reserved. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to: Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301 USA This program may also be distributed as part of Aladdin Ghostscript, under the terms of the Aladdin Free Public License (the "License"). Every copy of Aladdin Ghostscript must include a copy of the License, normally in a plain ASCII text file named PUBLIC. The License grants you the right to copy, modify and redistribute Aladdin Ghostscript, but only under certain conditions described in the License. Among other things, the License requires that the copyright notice and this notice be preserved on all copies. ## Files: contrib/gdevdj9.c Copyright (C) 2000 written by modification by Mark Burton Portions Copyright (C) 1999 Aladdin Enterprises. All rights reserved. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to: Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301 USA This program may also be distributed as part of Aladdin Ghostscript, under the terms of the Aladdin Free Public License (the "License"). Every copy of Aladdin Ghostscript must include a copy of the License, normally in a plain ASCII text file named PUBLIC. The License grants you the right to copy, modify and redistribute Aladdin Ghostscript, but only under certain conditions described in the License. Among other things, the License requires that the copyright notice and this notice be preserved on all copies. ## Files: contrib/gdevgdi.c This file is part of GNU Ghostscript. GNU Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. Everyone is granted permission to copy, modify and redistribute GNU Ghostscript, but only under the conditions described in the GNU General Public License. A copy of this license is supposed to have been given to you along with GNU Ghostscript so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. Aladdin Enterprises is not affiliated with the Free Software Foundation or the GNU Project. GNU Ghostscript, as distributed by Aladdin Enterprises, does not depend on any other GNU software. ## Files: contrib/gdevhl12.c Contributors: Created by Marek Michalkiewicz THIS SOFTWARE IS NOT COPYRIGHTED This source code is offered for use in the public domain. You may use, modify or distribute it freely. This code is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY DISCLAIMED. This includes but is not limited to warranties of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. (Legalese borrowed from the Mingw32 runtime libraries.) ## Files: contrib/gdevhl12.c This driver handles the 1200x600 dpi mode, and some settings like paper source and toner save mode. 600x600 dpi and below is handled by gdevdljm.c (basically as in the ljet4 device, with minor changes in initialization and margins, and PCL wrapped in PJL). There are two device names made available by this driver, which differ only in the default (maximum) resolution: -sDEVICE=hl1240 600x600 dpi, for HL-1030/1240 (uses standard PCL modes 2 and 3) -sDEVICE=hl1250 1200x600 dpi, for HL-1050/1070/1250/1270N (uses special compression mode 1027 for 1200x600 dpi, otherwise modes 2 and 3 as above) Tested with a HL-1250, both 1200x600 and 600x600 dpi. Please test with other models and report results (both problems and success). Some notes on the other models: HL-1070 and HL-1270N can also print Postscript directly, at maximum 600x600 dpi (this driver can print 1200x600 dpi using mode 1027). HL-1240 should no longer be limited to 300 dpi - this driver sends the recommended "@PJL SET RESOLUTION=..." command. PLEASE TEST. There have been some vague problem reports (wrong margins? not clear for what paper size, quite possibly Letter, not A4?) with this printer, if you have it and some Ghostscript hacking skills, _please_ try to help, fix it and send me a patch - thanks! HL-1030 should no longer be "Paperweight" despite the "for Windows only" warning :-) - it knows enough PCL to print raster graphics, but *requires* "@PJL ENTER LANGUAGE=PCL", so it does not work with the ljet4 driver sending raw PCL. The windows driver uses an undocumented compression mode 1030, but modes 2 and 3 work too. PLEASE TEST. New models, still need to be tested: HL-1230 (GDI printer) HL-1440 (GDI printer) HL-1450 (PCL6 and PS2 emulation) HL-1470N (PCL6 and PS2 emulation) Additional settings (gs command line options) for this driver: -dEconoMode=0...2 toner save mode: 0 = disabled (default), 1 = 25%, 2 = 50% -dPaperType=0...4 paper type: 0 = plain (default), 1 = thin, 2 = thick, 3 = thicker, 4 = transparency -dSourceTray=0...4 paper source: 0 = auto (default), 1 = dual, 2 = upper, 3 = lower, 4 = manual (not all models support the optional lower tray) The 1200x600 dpi mode may require a lot of printer memory - the manual recommends at least 10 MB; for me it seems to work well with 8 MB: 4 MB standard + 4 MB "finally found some good use for that old PS/2 SIMM" :-). Even at just 600x600 dpi (normal PCL 5 control codes) print quality is very good, at 1200x600 dpi it is difficult to see the difference (more visible on grayscale images). So 600x600 dpi is best for general use. The HL-1250 also supports PCL 6 (PCL XL) but - I don't have the documentation for that - the pxlmono driver works, but the output looks a bit different from that generated by the ljet4 or (this) 1200x600 dpi driver (lines appear very thin - not yet sure if this is a driver bug or differences in PCL 6 implementation, someone should check on a HP printer, does tiger.ps printed using the ljet4 and pxlmono drivers, both at 600x600 dpi, look the same?) so let's use the good old ljet4 (PCL 5) driver for now. (PCL 6 seems to offer better compression though.) To do: the undocumented mode 1030 may offer better compression (may help print complex graphics at 600 dpi - the HL-1030/1240 have only 2 MB of non-expandable RAM, which may not be enough for data that doesn't compress well). The windows driver uses this mode for all models, not just HL-1030. Documentation may be available later. Many thanks to Richard Thomas for help (sending me a HL-1250, documentation, answering my questions). Thanks to L. Peter Deutsch for making gdevdjet.c and gdevdljm.[ch] available under a dual AFPL/GPL license. ## Files: contrib/gdevln03.c Copyright (C) 1991, 1992, 1993, 1994 Free Software Foundation, Inc. All rights reserved. This file is part of Ghostscript. Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. Everyone is granted permission to copy, modify and redistribute Ghostscript, but only under the conditions described in the GNU General Public License. A copy of this license is supposed to have been given to you along with Ghostscript so you can know your rights and responsibilities. It should be in a file named COPYING or COPYLEFT. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/gdevln03.c gdevln03.c Ghostscript driver for DEC LN03 printer Ulrich Mueller, Div. PPE, CERN, CH-1211 Geneva 23 This code is subject to the GNU General Public License ulm 91-02-13 created as driver for gs 2.1.1 ulm 91-07-23 adapted to gs 2.2 ulm 91-08-21 changed memory allocation to gs_malloc, ported to VMS (contributed by Martin Stiftinger, TU Vienna) lpd 91-11-24 sped up by removing multiplies from inner loop ijmp 92-04-14 add support for la75/la50 (macphed@dvinci.usask.ca) ulm 92-09-25 support letter size paper (8.5" x 11") bbl 93-06-10 added la70 mode (bruce@csugrad.cs.vt.edu) lpd/ab 94-02-04 added la75plus mode (Andre_Beck@IRS.Inf.TU-Dresden.de) pbk 94-02-28 keep lines less than 80 chars for systems where files typed to terminal don't work otherwise; define separate eject string for each device for flexibility; add support for CRT sixels (keegstra@tonga.gsfc.nasa.gov) nb 1999-05-03 added dl2100 code (nick.brown@coe.int) ## Files: contrib/gdevlx32.c Lexmark 3200 Color Jetprinter driver version 0.4.1 Copyright 2000 by Daniel Gordini (dgordin@tin.it) -------------------------------------------------------------------- This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to: Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301 USA -------------------------------------------------------------------- This driver is almost 100% original code but it is based on protocol information partly discovered by Andrew Onifer III (http://www.mindspring.com/~aonifer) and Peter B. West (http://www.powerup.com.au/~pbwest) that were used as a starting base for the reverse-engineering of the protocol. Please mail me bug reports, comments and suggestions. Don't forget to read the release notes before installing !! ## Files: contrib/gdevlx7.c Copyright (C) 1989-1994, 1998, 1999 Aladdin Enterprises. All rights reserved. This file is part of GNU Ghostscript. GNU Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. Everyone is granted permission to copy, modify and redistribute GNU Ghostscript, but only under the conditions described in the GNU General Public License. A copy of this license is supposed to have been given to you along with GNU Ghostscript so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. Aladdin Enterprises is not affiliated with the Free Software Foundation or the GNU Project. GNU Ghostscript, as distributed by Aladdin Enterprises, does not depend on any other GNU software. ## Files: contrib/gdevmd2k.c Copyright (C) 1991, 1995-1999 Aladdin Enterprises. All rights reserved. This file is part of Aladdin Ghostscript. Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND. No author or distributor accepts any responsibility for the consequences of using it, or for whether it serves any particular purpose or works at all, unless he or she says so in writing. Refer to the Aladdin Ghostscript Free Public License (the "License") for full details. Every copy of Aladdin Ghostscript must include a copy of the License, normally in a plain ASCII text file named PUBLIC. The License grants you the right to copy, modify and redistribute Aladdin Ghostscript, but only under certain conditions described in the License. Among other things, the License requires that the copyright notice and this notice be preserved on all copies. ## Files: contrib/gdevop4w.c Copyright (C)1998 Ivan Schreter This file is part of GNU Ghostscript. GNU Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. This source is partially based on deskjet device driver for Ghostscript. ## Files: contrib/gdevxes.c Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc. All rights reserved. This file is part of Ghostscript. Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. Everyone is granted permission to copy, modify and redistribute Ghostscript, but only under the conditions described in the GNU General Public License. A copy of this license is supposed to have been given to you along with Ghostscript so you can know your rights and responsibilities. It should be in a file named COPYING or COPYLEFT. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/gdevxes.c gdevxes.c Ghostscript driver for Xerox XES printer (2700, 3700, 4045, etc.) Peter Flass - NYS LBDC New York State Legislative Bill Drafting Commission 1450 Western Avenue, 3rd floor Albany, NY 12203 This code is subject to the GNU General Public License Operation: The page bitmap is scanned to determined the actual margins. A "graphics rectangle" is defined to contain the included data and positioned on the page. The bitmap is then re-read and "sixellized" by converting each three bytes to four six-bit chunks (zero padding on the right if necessary) and adding x'3F' to generate a printable code. Runs of up to 32767 identical characters are compressed to an ascii count and a single character. ## Files: contrib/japanese/dviprlib.h COPYRIGHT (C) 1990, 1992 Aladdin Enterprises. All rights reserved. Distributed by Free Software Foundation, Inc. This file is part of Ghostscript. Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the Ghostscript General Public License for full details. Everyone is granted permission to copy, modify and redistribute Ghostscript, but only under the conditions described in the Ghostscript General Public License. A copy of this license is supposed to have been given to you along with Ghostscript so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/japanese/gdev10v.c Copyright (C) 1990, 1992, 1993 Aladdin Enterprises. All rights reserved. Distributed by Free Software Foundation, Inc. This file is part of Ghostscript. Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the Ghostscript General Public License for full details. Everyone is granted permission to copy, modify and redistribute Ghostscript, but only under the conditions described in the Ghostscript General Public License. A copy of this license is supposed to have been given to you along with Ghostscript so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/japanese/gdevalps.c Copyright (C) 1990, 1995, 1997 Aladdin Enterprises. All rights reserved. This file is part of Aladdin Ghostscript. Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND. No author or distributor accepts any responsibility for the consequences of using it, or for whether it serves any particular purpose or works at all, unless he or she says so in writing. Refer to the Aladdin Ghostscript Free Public License (the "License") for full details. Every copy of Aladdin Ghostscript must include a copy of the License, normally in a plain ASCII text file named PUBLIC. The License grants you the right to copy, modify and redistribute Aladdin Ghostscript, but only under certain conditions described in the License. Among other things, the License requires that the copyright notice and this notice be preserved on all copies. ## Files: contrib/japanese/gdevespg.c Copyright (C) 1999 Norihito Ohmori. Ghostscript driver for EPSON ESC/Page printer. This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. Everyone is granted permission to copy, modify and redistribute this software, but only under the conditions described in the GNU General Public License. A copy of this license is supposed to have been given to you along with this software so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/japanese/gdevfmlbp.c contrib/japanese/gdevml6.c Copyright (C) 1991 Aladdin Enterprises. All rights reserved. Distributed by Free Software Foundation, Inc. This file is part of Ghostscript. Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the Ghostscript General Public License for full details. Everyone is granted permission to copy, modify and redistribute Ghostscript, but only under the conditions described in the Ghostscript General Public License. A copy of this license is supposed to have been given to you along with Ghostscript so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/japanese/gdevfmpr.c contrib/japanese/gdevj100.c contrib/japanese/gdevp201.c Copyright (C) 1990, 1992 Aladdin Enterprises. All rights reserved. Distributed by Free Software Foundation, Inc. This file is part of Ghostscript. Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the Ghostscript General Public License for full details. Everyone is granted permission to copy, modify and redistribute Ghostscript, but only under the conditions described in the Ghostscript General Public License. A copy of this license is supposed to have been given to you along with Ghostscript so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/japanese/gdevmjc.c Copyright (C) 1991, 1992, 1993 Aladdin Enterprises. All rights reserved. This file is part of Ghostscript. Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the Ghostscript General Public License for full details. Everyone is granted permission to copy, modify and redistribute Ghostscript, but only under the conditions described in the Ghostscript General Public License. A copy of this license is supposed to have been given to you along with Ghostscript so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/japanese/gdevnpdl.c Copyright (C) 1989, 1992, 1993 Aladdin Enterprises. All rights reserved. This file is part of Ghostscript. Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the Ghostscript General Public License for full details. Everyone is granted permission to copy, modify and redistribute Ghostscript, but only under the conditions described in the Ghostscript General Public License. A copy of this license is supposed to have been given to you along with Ghostscript so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/japanese/gdevrpdl.c Copyright (C) 1999, 2000 Norihito Ohmori. Ghostscript driver for Ricoh RPDL printer. This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. Everyone is granted permission to copy, modify and redistribute this software, but only under the conditions described in the GNU General Public License. A copy of this license is supposed to have been given to you along with this software so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/lips4/gdevl4r.c contrib/lips4/gdevlips.h Copyright (C) 1998, 1999 Norihito Ohmori. Ghostscript printer driver for Canon LBP, BJC-680J and BJC-880J printers (LIPS II+/III/IVc/IV) This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. Everyone is granted permission to copy, modify and redistribute this software, but only under the conditions described in the GNU General Public License. A copy of this license is supposed to have been given to you along with this software so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/lips4/gdevl4v.c Copyright (C) 1998, 1999 Norihito Ohmori. Ghostscript printer driver for Canon LBP (LIPS IV) This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. Everyone is granted permission to copy, modify and redistribute this software, but only under the conditions described in the GNU General Public License. A copy of this license is supposed to have been given to you along with this software so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/lips4/gdevlips.c Copyright (C) 1998, 1999 Norihito Ohmori. Ghostscript printer driver for Canon LBP and BJ printers (LIPS II+/III/IVc/IV) This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. Everyone is granted permission to copy, modify and redistribute this software, but only under the conditions described in the GNU General Public License. A copy of this license is supposed to have been given to you along with this software so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/lips4/gdevlprn.c Copyright (C) 1999 Norihito Ohmori. Ghostscript laser printer driver supporting Library. This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. Everyone is granted permission to copy, modify and redistribute this software, but only under the conditions described in the GNU General Public License. A copy of this license is supposed to have been given to you along with this software so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/lips4/gdevlprn.h Copyright (C) 1999 Norihito Ohmori. Ghostscript laser printer driver supprting Library. This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. Everyone is granted permission to copy, modify and redistribute this software, but only under the conditions described in the GNU General Public License. A copy of this license is supposed to have been given to you along with this software so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. ## Files: contrib/opvp/gdevopvp.c Copyright (c) 2003-2004, AXE, Inc. All rights reserved. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to: Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301 USA ## Files: contrib/opvp/opvp.h OpenPrinting Vector Printer Driver API Definitions [opvp.h] Copyright (c) 2006 Free Standards Group Copyright (c) 2006 Fuji Xerox Printing Systems Co., Ltd. Copyright (c) 2006 Canon Inc. Copyright (c) 2003-2006 AXE Inc. All Rights Reserverd. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## Files: contrib/pcl3/eprn/eprnfs.c File: $Id: eprnfs.c,v 1.6 2001/05/01 07:02:01 Martin Rel $ Contents: Floyd-Steinberg error diffusion for eprn Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany; e-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 2001 by Martin Lottermoser * * All rights reserved * * * ******************************************************************************* Information about Floyd-Steinberg error diffusion should be available in a number of places. I've used: James D. Foley, Andries van Dam, Steven K. Feiner, John F. Hughes "Computer Graphics" Second edition in C Reading/Massachusetts, etc.: Addison-Wesley, 1996 ISBN 0-201-84840-6 ## Files: contrib/pcl3/eprn/eprnparm.c File: $Id: eprnparm.c,v 1.24 2001/08/18 17:42:34 Martin Rel $ Contents: Device parameter handling for the ghostscript device 'eprn' Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 2000, 2001 by Martin Lottermoser * * All rights reserved * * * ******************************************************************************* Preprocessor symbols: EPRN_GS_HAS_MEDIAPOSITION Define this if ghostscript should in the future implement the standard PostScript page device parameter "MediaPosition" as a device parameter. Otherwise it will be stored in the eprn device. Note that ghostscript's input media selection algorithm *does* react to the parameter, and you could also specify it from PostScript. This implementation is only needed to make the parameter available as a command line option. EPRN_NO_PAGECOUNTFILE Define this if you do not want to use eprn's pagecount-file feature. You very likely must define this on Microsoft Windows. This is automatically defined under Visual Studio builds. EPRN_TRACE Define this to enable tracing. Only useful for development. ## Files: contrib/pcl3/eprn/eprnrend.c File: $Id: eprnrend.c,v 1.15 2001/08/01 05:12:56 Martin Rel $ Contents: Colour rendering functionality for the ghostscript device 'eprn' Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 2000, 2001 by Martin Lottermoser * * All rights reserved * * * ******************************************************************************* Preprocessor variables: EPRN_TRACE Define this to enable tracing. Only useful for development. EPRN_TRAILING_BIT_BUG_FIXED Define this to deactivate compensation for a bug in ghostscript which leads to the last pixel in an RGB line being black instead of white. This occurs at least in gs 6.01 and 6.50. The correction covers only the one-bit-per-colorant case and is equivalent to clipping the pixel. ******************************************************************************* The eprn device uses 'gx_color_index' values with varying interpretations, depending on the colour model and the rendering method, and stores them at different pixmaps depths, normally using the smallest depth which can accommodate all colorants at the same number of bits per colorant. To simplify matters, a field for the black component is always included, even for RGB and CMY, i.e., there are either 1 or 4 bit fields in a 'gx_color_index' value. If there are 4, the interpretation is either YMCK or BGRK, looking from left to right (most to least significant). The width of the fields can be found in the 'bits_per_colorant' variable in the eprn part of the device instance. Within each colorant field, not all bits need be used. Except when using the *_max() colour mapping functions, the values returned by eprn_bits_for_levels() for the parameters 'black_levels' and 'non_black_levels' determine the number of bits which are actually meaningful. Only the last (least significant) bits are used. ## Files: contrib/pcl3/eprn/gdeveprn.c File: $Id: gdeveprn.c,v 1.25 2001/04/30 05:15:51 Martin Rel $ Contents: Implementation of the abstract ghostscript device 'eprn': general functions and page layout Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 2000, 2001 by Martin Lottermoser * * All rights reserved * * * ******************************************************************************* Preprocessor variables: EPRN_NO_PAGECOUNTFILE Define this if you do not want to use eprn's pagecount-file feature. You very likely must define this on Microsoft Windows. EPRN_TRACE Define this to enable tracing. Only useful for development. EPRN_USE_GSTATE (integer) Define this to be non-zero if the graphics state should be accessed directly instead of via the interpreter context state. Newer ghostscript versions require the latter path. The default is zero unless GS_REVISION is defined and less than 600. GS_REVISION (integer) If defined, this must be the ghostscript version number, e.g., 601 for ghostscript 6.01. ## Files: contrib/pcl3/eprn/gdeveprn.h File: $Id: gdeveprn.h,v 1.23 2001/04/30 05:15:51 Martin Rel $ Contents: Header file for the abstract ghostscript device 'eprn' Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany; e-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 2000, 2001 by Martin Lottermoser * * All rights reserved * * * ******************************************************************************* The 'eprn' device ***************** In developing my hpdj/pcl3 driver for PCL 3+ I had to implement a lot of functionality which was logically independent of PCL. This indicated that the functionality offered by ghostscript's 'prn' device was insufficient and should be extended, leading to this "extended prn device". Functionality ============= The "eprn" device offers the following services to derived devices: - A simple but still flexible rendering model. A derived device defines printer capability descriptions listing the supported rendering parameters, lets the eprn device handle the user's rendering requests, and then just fetches the pixels. - A PostScript-conforming initialization of default user space with respect to landscape orientation and support for the standard page device parameter "LeadingEdge". - Recognition of media sizes from the document and checking of supported sizes based on printer descriptions - Flexible handling of size-specific hardware margins - Counting of pages printed across gs invocations by means of page count files Rendering Model =============== The "eprn" device parameterizes the printer's rendering capabilities as follows: - process colour model (Gray, RGB, CMY, CMY+K, CMYK) - resolution in horizontal and vertical directions - number of intensity levels per colorant, chosen independently for black and non-black (RGB or CMY) colorants. In addition, the rendering process as implemented in this driver is parameterized by: - method for rendering intensities (printer, halftones or error diffusion) These parameters are specified by the user. The device checks whether the printer supports the requested combination and, if it does, sets ghostscript's internal data structures accordingly. The derived device can obtain the resulting pixels by successively calling eprn_get_planes() from the page printing procedure. Device Coordinates ================== "Pixmap device space" is the coordinate system used by the "prn" device for generating a pixmap and implicit in the API for accessing it (e.g., gdev_prn_copy_scan_lines()). In identifying the directions "left", "bottom", "right" and "top" I'm assuming that the x axis is pointing to the right and the y axis downwards. This is not concerned with the orientation of device space on a sheet printed but is merely a definition of what, e.g., "down" means for the eprn device: it is defined as "towards increasing prn y values". This makes the code more readable for the case where the real device coordinate system (on the sheet) has just this orientation. Too bad for the others :-). Terms like "width" and "height" are also defined with respect to this interpretation, i.e., "width" is an extension in x direction. Note that names and interpretations of some of ghostscript's standard device structure fields (like 'width', 'height') are also based on this convention although this is not explicitly stated. This does however not apply to all parameters: for example, HWMargins[] and MediaSize[] are to be interpreted in default user space (see gx_default_clip_box()). One key assumption of the eprn device is that the top edge of pixmap device space is the edge closest to and parallel with the medium's leading edge. It is the responsibility of the derived device to ensure this. Usually it means that raster lines have to be printed in the order of ascending y. (The eprn device will work if the derived device violates this condition, but the meaning of user-visible properties of the device would change.) The device sets up the device coordinate system such that the device space origin is the top left corner of the imageable area where "top" and "left" refer to you holding the sheet with the printed side towards you and the leading edge at the top. Units and directions are identical with pixmap device space. Page Descriptions ================= When a PostScript document requests a particular page size by specifying its width and height in default user space the eprn device combines this information with certain conditions imposed by the derived device and looks for a matching page description entry in the printer's capability description. The following information from such an entry is needed for correctly setting up the relation between default user space and device space: - default orientation of the sheet in pixmap device space (MS_TRANSVERSE_FLAG; set iff the sheet has width > height in pixmap device space) - hardware margins This part is interpreted by the eprn device. In addition, a page description entry may contain a number of flags indicating special conditions under which this entry is to be selected or carrying information on how to configure the printer. The flags are those defined by mediasize.h (except that MS_TRANSVERSE_FLAG and MS_ROTATED_FLAG may not be used for this purpose), their interpretation is up to the derived device which must request them or to which they will become visible when the entry is selected. The eprn device takes the following items as the request to be matched with a page description entry in the printer's capability description: - the media size of the document and, if set, the "LeadingEdge" page device parameter - a pattern of desired (not necessarily *required*) flags - an ordered list of optional flags Media size and LeadingEdge are set via PostScript or the command line, the flags can be set by the derived device through its device structure instance or by calling eprn_set_media_flags(). The optional flags when combined with the bitwise OR effectively define a mask of bits which may be ignored when checking whether an entry matches the desired flags. The order of optional flags is from most to least desirable to ignore. The complete request is compared to the list of page descriptions as follows: 1. If the media size, irrespective of flags, cannot be matched at 5 bp tolerance, the request fails with an error message to standard error. 2. Otherwise a shortened list containing all entries having a matching size is compiled, at least conceptually. If the device supports custom page sizes, they are listed at the end. This is the "base list". 3. If LeadingEdge is not null, the MS_TRANSVERSE_FLAG is set or cleared accordingly in the pattern of desired flags. This flag is also always added to the front of the list of optional flags. 4. A mask of flags to be ignored is set to zero. 5. The base list is searched for an entry agreeing with the desired flags except possibly for those in the ignore mask. 6. If no such entry is found, the next flag in the list of optional flags is added to the ignore mask and execution continues with step 5. If there is no such flag, the request fails and the flag mismatch reporting function is called (see below). 7. If a matching entry is found the list of optional flags is processed backwards starting with the flag before the last one added to the ignore mask. For each such flag an attempt is made to remove it from the mask. If there still is at least one matching entry in the base list the flag remains cleared, otherwise it is put back into the mask. 8. Finally, the first entry matching the request mask and the current ignore mask will be selected: - its media code will be made available to the derived device in the eprn device's 'code' field, - the hardware margins will be set from the page description (unless the user has explicitly specified a value for the ".HWMargins" page device parameter), - default user space will be configured based on sheet orientation (transverse or not in device space) and page orientation (portrait or landscape in default user space). Because the error message in step 6 has to report a mismatch on the flags and because the interpretation of the flags is fixed by the derived device, an error message issued by the eprn device may not be particularly illuminating to the user (the user will usually think in terms of the interpretation the derived device associates with these flags). Therefore issuing this error message can be delegated to a function ("flag mismatch reporting function") specified by the derived device in its device structure instance. ## Files: contrib/pcl3/eprn/mediasize.c File: $Id: mediasize.c,v 1.11 2001/04/12 18:35:26 Martin Rel $ Contents: Operations and data for handling media sizes Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 1999, 2000 by Martin Lottermoser * * All rights reserved * * * ## Files: contrib/pcl3/eprn/mediasize.h File: $Id: mediasize.h,v 1.11 2001/04/12 18:35:26 Martin Rel $ Contents: Header file for working with various media sizes Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 1999, 2000 by Martin Lottermoser * * All rights reserved * * * ## Files: contrib/pcl3/eprn/pagecount.c File: $Id: pagecount.c,v 1.6 2000/10/07 17:48:49 Martin Rel $ Contents: Simple (page) count file facility on UNIX Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 1997, 1998, 2000 by Martin Lottermoser * * All rights reserved * * * ## Files: contrib/pcl3/eprn/pagecount.h File: $Id: pagecount.h,v 1.3 2000/11/19 07:05:17 Martin Rel $ Contents: Header for pagecount file functions Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany; e-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 2000 by Martin Lottermoser * * All rights reserved * * * ## Files: contrib/pcl3/src/gdevpcl3.c File: $Id: gdevpcl3.c,v 1.32 2001/08/14 15:22:35 Martin Rel $ Contents: Ghostscript device 'pcl3' for PCL-3+ printers Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 2000, 2001 by Martin Lottermoser * * All rights reserved * * * ******************************************************************************* Preprocessor symbols: GS_REVISION (integer) If defined, this must be the ghostscript version number, e.g., 601 for ghostscript 6.01. PCL3_MEDIA_FILE (const char *) Define this to set a media configuration file for the "unspec" device unless the user overrides it. ## Files: contrib/pcl3/src/pcl3opts.c File: $Id: pcl3opts.c,v 1.17 2001/05/31 15:19:16 Martin Rel $ Contents: Program to convert information in PCL-3+ files into options to be used for the ghostscript device "pcl3" in order to produce a file using a similar configuration Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany; e-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 1999, 2000, 2001 by Martin Lottermoser * * All rights reserved * * * ## Files: contrib/pcl3/src/pclcap.c File: $Id: pclcap.c,v 1.17 2001/03/08 09:17:51 Martin Rel $ Contents: Description of PCL printer capabilities and supporting functionality Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 2000, 2001 by Martin Lottermoser * * All rights reserved * * * ## Files: contrib/pcl3/src/pclcap.h File: $Id: pclcap.h,v 1.10 2000/11/19 07:05:17 Martin Rel $ Contents: Header for describing capabilities of PCL printers Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 2000 by Martin Lottermoser * * All rights reserved * * * ## Files: contrib/pcl3/src/pclcomp.c File: $Id: pclcomp.c,v 1.11 2000/10/07 17:51:57 Martin Rel $ Contents: Implementation of PCL compression routines Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 1996, 1997, 1998, 2000 by Martin Lottermoser * * All rights reserved * * * ******************************************************************************* If you compile with NDEBUG defined, some runtime checks for programming errors (mine and the interface's user's) are omitted. ## Files: contrib/pcl3/src/pclgen.c File: $Id: pclgen.c,v 1.21 2001/04/29 10:37:08 Martin Rel $ Contents: PCL-generating routines Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 1999, 2000, 2001 by Martin Lottermoser * * All rights reserved * * * ******************************************************************************* In the implementation of these and other functions I have mainly used the following documents: - Hewlett-Packard "Technical Reference Guide for the HP DeskJet 500 Series Printers" First edition, October 1994 Manual Part Number: C2170-90099 (Quoted as "TRG500") - Hewlett-Packard "Hewlett-Packard 300 and 400 Series DeskJet Printers - Software Developer's Guide" January 1996 (Quoted as "DJ3/4") - Hewlett-Packard "HP DeskJet 600/800 Series Printers - Software Developer's PCL Guide" Fifth edition, October 1997 (Quoted as "DJ6/8") - Hewlett-Packard "DeskJet 1120C Printer - Software Developer's PCL Guide" First printing, December 1997. Version 1.0. (Quoted as "DJ1120C") - Hewlett-Packard "Printer Job Language Technical Reference Manual" Edition 10, October 1997. HP Part No. 5021-0380. (Quoted as "PJLTRM") - Lexmark "Printer Technical Reference, Version 1.1" First edition, February 1999 (Quoted as "Lexmark-PTR". It deals with PCL 5 and PCL 6.) In addition, some other documents are quoted in a form like "BPD02926". These were obtained from http://www.hp.com, usually from the directory cposupport/printers/support_doc. BPD02926, for example, (a short description of PCL commands for series-800 DeskJets) could be found as the file bpd02926.html in that directory. ## Files: contrib/pcl3/src/pclgen.h File: $Id: pclgen.h,v 1.25 2001/08/18 17:41:29 Martin Rel $ Contents: Header for PCL-generating routines Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 1999, 2000, 2001 by Martin Lottermoser * * All rights reserved * * * ******************************************************************************* The functions declared in this header file generate code for Hewlett-Packard's Printer Command Language level 3+ ("PCL 3+", also called "PCL 3 Plus"). The routines support only raster graphics data. ## Files: contrib/pcl3/src/pclscan.c File: $Id: pclscan.c,v 1.8 2000-10-22 11:05:34+02 Martin Rel $ Contents: PCL scanner Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany, e-mail: Martin.Lottermoser@t-online.de ******************************************************************************* * * * Copyright (C) 1999, 2000 by Martin Lottermoser * * All rights reserved * * * ## Files: contrib/pcl3/src/pclscan.h File: $Id: pclscan.h,v 1.6 2000-10-22 11:05:34+02 Martin Rel $ Contents: Header for PCL scanner Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany, e-mail: Martin.Lottermoser@t-online.de ******************************************************************************* * * * Copyright (C) 1999, 2000 by Martin Lottermoser * * All rights reserved * * * ## Files: contrib/pcl3/src/pclsize.c File: $Id: pclsize.c,v 1.10 2001/08/18 17:41:49 Martin Rel $ Contents: Maps between PCL Page Size codes und size information Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 1999, 2000 by Martin Lottermoser * * All rights reserved * * * ## Files: contrib/pcl3/src/pclsize.h File: $Id: pclsize.h,v 1.7 2000/11/19 07:05:17 Martin Rel $ Contents: Header file for maps between PCL Page Size codes and size information Author: Martin Lottermoser, Greifswaldstrasse 28, 38124 Braunschweig, Germany. E-mail: Martin.Lottermoser@t-online.de. ******************************************************************************* * * * Copyright (C) 1999, 2000 by Martin Lottermoser * * All rights reserved * * * ## Files: cups/gdevcups.c GNU Ghostscript raster output driver for the Common UNIX Printing System (CUPS). Copyright 1993-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Easy Software Products and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is missing or damaged please contact Easy Software Products at: Attn: CUPS Licensing Information Easy Software Products 44141 Airport View Drive, Suite 204 Hollywood, Maryland 20636 USA Voice: (301) 373-9600 EMail: cups-info@cups.org WWW: http://www.cups.org/ This code and any derivative of it may be used and distributed freely under the terms of the GNU General Public License when used with GNU Ghostscript or its derivatives. Use of the code (or any derivative of it) with software other than GNU GhostScript (or its derivatives) is governed by the CUPS license agreement. Contents: cups_close() - Close the output file. cups_decode_color() - Decode a color value. cups_encode_color() - Encode a color value. cups_get_color_comp_index() - Color component to index cups_get_color_mapping_procs() - Get the list of color mapping procedures. cups_get_matrix() - Generate the default page matrix. cups_get_params() - Get pagedevice parameters. cups_get_space_params() - Get space parameters from the RIP_CACHE env var. cups_map_cielab() - Map CIE Lab transformation... cups_map_cmyk() - Map a CMYK color value to device colors. cups_map_gray() - Map a grayscale value to device colors. cups_map_rgb() - Map a RGB color value to device colors. cups_map_cmyk_color() - Map a CMYK color to a color index. cups_map_color_rgb() - Map a color index to an RGB color. cups_map_rgb_color() - Map an RGB color to a color index. We map the RGB color to the output colorspace & bits (we figure out the format when we output a page). cups_open() - Open the output file and initialize things. cups_print_pages() - Send one or more pages to the output file. cups_put_params() - Set pagedevice parameters. cups_set_color_info() - Set the color information structure based on the required output. cups_sync_output() - Keep the user informed of our status... cups_print_chunked() - Print a page of chunked pixels. cups_print_banded() - Print a page of banded pixels. cups_print_planar() - Print a page of planar pixels. ## Files: cups/libs/configlinux.h cups/libs/configwin.h "$Id: config.h.in 11642 2014-02-27 15:57:59Z msweet $" Configuration file for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". ## Files: cups/libs/cups/adminutil.c "$Id: adminutil.c 10996 2013-05-29 11:51:34Z msweet $" Administration utility API definitions for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 2001-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsAdminCreateWindowsPPD() - Create the Windows PPD file for a printer. cupsAdminExportSamba() - Export a printer to Samba. cupsAdminGetServerSettings() - Get settings from the server. cupsAdminSetServerSettings() - Set settings on the server. do_samba_command() - Do a SAMBA command. get_cupsd_conf() - Get the current cupsd.conf file. invalidate_cupsd_cache() - Invalidate the cached cupsd.conf settings. write_option() - Write a CUPS option to a PPD file. ## Files: cups/libs/cups/adminutil.h "$Id: adminutil.h 10996 2013-05-29 11:51:34Z msweet $" Administration utility API definitions for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 2001-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/array-private.h "$Id: array-private.h 3933 2012-10-01 03:01:10Z msweet $" Private array definitions for CUPS. Copyright 2011-2012 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/array.c "$Id: array.c 10996 2013-05-29 11:51:34Z msweet $" Sorted array routines for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsArrayAdd() - Add an element to the array. _cupsArrayAddStrings() - Add zero or more comma-delimited strings to an array. cupsArrayClear() - Clear the array. cupsArrayCount() - Get the number of elements in the array. cupsArrayCurrent() - Return the current element in the array. cupsArrayDelete() - Free all memory used by the array. cupsArrayDup() - Duplicate the array. cupsArrayFind() - Find an element in the array. cupsArrayFirst() - Get the first element in the array. cupsArrayGetIndex() - Get the index of the current element. cupsArrayGetInsert() - Get the index of the last inserted element. cupsArrayIndex() - Get the N-th element in the array. cupsArrayInsert() - Insert an element in the array. cupsArrayLast() - Get the last element in the array. cupsArrayNew() - Create a new array. cupsArrayNew2() - Create a new array with hash. cupsArrayNew3() - Create a new array with hash and/or free function. _cupsArrayNewStrings() - Create a new array of comma-delimited strings. cupsArrayNext() - Get the next element in the array. cupsArrayPrev() - Get the previous element in the array. cupsArrayRemove() - Remove an element from the array. cupsArrayRestore() - Reset the current element to the last @link cupsArraySave@. cupsArraySave() - Mark the current element for a later @link cupsArrayRestore@. cupsArrayUserData() - Return the user data for an array. cups_array_add() - Insert or append an element to the array. cups_array_find() - Find an element in the array. ## Files: cups/libs/cups/array.h "$Id: array.h 10996 2013-05-29 11:51:34Z msweet $" Sorted array definitions for CUPS. Copyright 2007-2010 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/attr.c "$Id: attr.c 10996 2013-05-29 11:51:34Z msweet $" PPD model-specific attribute routines for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". Contents: ppdFindAttr() - Find the first matching attribute. ppdFindNextAttr() - Find the next matching attribute. _ppdNormalizeMakeAndModel() - Normalize a product/make-and-model string. ## Files: cups/libs/cups/auth.c "$Id: auth.c 10996 2013-05-29 11:51:34Z msweet $" Authentication functions for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products. This file contains Kerberos support code, copyright 2006 by Jelmer Vernooij. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsDoAuthentication() - Authenticate a request. _cupsSetNegotiateAuthString() - Set the Kerberos authentication string. cups_gss_acquire() - Kerberos credentials callback. cups_gss_getname() - Get CUPS service credentials for authentication. cups_gss_printf() - Show debug error messages from GSSAPI. cups_local_auth() - Get the local authorization certificate if available/applicable. ## Files: cups/libs/cups/backchannel.c "$Id: backchannel.c 10996 2013-05-29 11:51:34Z msweet $" Backchannel functions for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsBackChannelRead() - Read data from the backchannel. cupsBackChannelWrite() - Write data to the backchannel. cups_setup() - Setup select() ## Files: cups/libs/cups/backend.c "$Id: backend.c 10996 2013-05-29 11:51:34Z msweet $" Backend functions for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsBackendDeviceURI() - Get the device URI for a backend. cupsBackendReport() - Write a device line from a backend. quote_string() - Write a quoted string to stdout, escaping \ and ". ## Files: cups/libs/cups/backend.h "$Id: backend.h 10996 2013-05-29 11:51:34Z msweet $" Backend definitions for CUPS. Copyright 2007-2011 by Apple Inc. Copyright 1997-2005 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/conflicts.c "$Id: conflicts.c 3933 2012-10-01 03:01:10Z msweet $" Option marking routines for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". PostScript is a trademark of Adobe Systems, Inc. This file is subject to the Apple OS-Developed Software exception. Contents: cupsGetConflicts() - Get a list of conflicting options in a marked PPD. cupsResolveConflicts() - Resolve conflicts in a marked PPD. ppdConflicts() - Check to see if there are any conflicts among the marked option choices. ppdInstallableConflict() - Test whether an option choice conflicts with an installable option. ppd_is_installable() - Determine whether an option is in the InstallableOptions group. ppd_load_constraints() - Load constraints from a PPD file. ppd_test_constraints() - See if any constraints are active. ## Files: cups/libs/cups/cups-private.h "$Id: cups-private.h 10996 2013-05-29 11:51:34Z msweet $" Private definitions for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/cups.h "$Id: cups.h 11812 2014-04-10 15:47:53Z msweet $" API definitions for CUPS. Copyright 2007-2014 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/custom.c "$Id: custom.c 10996 2013-05-29 11:51:34Z msweet $" PPD custom option routines for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2006 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". PostScript is a trademark of Adobe Systems, Inc. This code and any derivative of it may be used and distributed freely under the terms of the GNU General Public License when used with GNU Ghostscript or its derivatives. Use of the code (or any derivative of it) with software other than GNU GhostScript (or its derivatives) is governed by the CUPS license agreement. This file is subject to the Apple OS-Developed Software exception. Contents: ppdFindCustomOption() - Find a custom option. ppdFindCustomParam() - Find a parameter for a custom option. ppdFirstCustomParam() - Return the first parameter for a custom option. ppdNextCustomParam() - Return the next parameter for a custom option. ## Files: cups/libs/cups/debug-private.h "$Id: debug-private.h 10996 2013-05-29 11:51:34Z msweet $" Private debugging macros for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2005 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/debug.c "$Id: debug.c 4027 2012-11-16 01:00:05Z msweet $" Debugging functions for CUPS. Copyright 2008-2012 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: debug_vsnprintf() - Format a string into a fixed size buffer. _cups_debug_printf() - Write a formatted line to the log. _cups_debug_puts() - Write a single line to the log. _cups_debug_set() - Enable or disable debug logging. ## Files: cups/libs/cups/dest-job.c "$Id: dest-job.c 4274 2013-04-09 20:10:23Z msweet $" Destination job support for CUPS. Copyright 2012-2013 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsCancelDestJob() - Cancel a job on a destination. cupsCloseDestJob() - Close a job and start printing. cupsCreateDestJob() - Create a job on a destination. cupsFinishDestDocument() - Finish the current document. cupsStartDestDocument() - Start a new document. ## Files: cups/libs/cups/dest-localization.c "$Id: dest-localization.c 4216 2013-03-11 13:57:36Z msweet $" Destination localization support for CUPS. Copyright 2012-2013 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsLocalizeDestOption() - Get the localized string for a destination option. cupsLocalizeDestValue() - Get the localized string for a destination option+value pair. cups_create_localizations() - Create the localizations array for a destination. cups_read_strings() - Read a pair of strings from a .strings file. cups_scan_strings() - Scan a quoted string. ## Files: cups/libs/cups/dest-options.c "$Id: dest-options.c 11883 2014-05-16 21:04:07Z msweet $" Destination option/media support for CUPS. Copyright 2012-2013 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsCheckDestSupported() - Check that the option and value are supported by the destination. cupsCopyDestConflicts() - Get conflicts and resolutions for a new option/value pair. cupsCopyDestInfo() - Get the supported values/capabilities for the destination. cupsFindDestDefault() - Find the default value(s) for the given option. cupsFindDestReady() - Find the default value(s) for the given option. cupsFindDestSupported() - Find the default value(s) for the given option. cupsFreeDestInfo() - Free destination information obtained using @link cupsCopyDestInfo@. cupsGetDestMediaByIndex() - Get a media name, dimension, and margins for a specific size. cupsGetDestMediaByName() - Get media names, dimensions, and margins. cupsGetDestMediaBySize() - Get media names, dimensions, and margins. cupsGetDestMediaCount() - Get the number of sizes supported by a destination. cupsGetDestMediaDefault() - Get the default size for a destination. cups_add_dconstres() - Add a constraint or resolver to an array. cups_compare_dconstres() - Compare to resolver entries. cups_compare_media_db() - Compare two media entries. cups_copy_media_db() - Copy a media entry. cups_create_cached() - Create the media selection cache. cups_create_constraints() - Create the constraints and resolvers arrays. cups_create_defaults() - Create the -default option array. cups_create_media_db() - Create the media database. cups_free_media_cb() - Free a media entry. cups_get_media_db() - Lookup the media entry for a given size. cups_is_close_media_db() - Compare two media entries to see if they are close to the same size. cups_test_constraints() - Test constraints. cups_update_ready() - Update xxx-ready attributes for the printer. ## Files: cups/libs/cups/dest.c "$Id: dest.c 11688 2014-03-05 21:11:32Z msweet $" User-defined destination (and option) support for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsAddDest() - Add a destination to the list of destinations. _cupsAppleCopyDefaultPaperID() - Get the default paper ID. _cupsAppleCopyDefaultPrinter() - Get the default printer at this location. _cupsAppleGetUseLastPrinter() - Get whether to use the last used printer. _cupsAppleSetDefaultPaperID() - Set the default paper id. _cupsAppleSetDefaultPrinter() - Set the default printer for this location. _cupsAppleSetUseLastPrinter() - Set whether to use the last used printer. cupsConnectDest() - Connect to the server for a destination. cupsConnectDestBlock() - Connect to the server for a destination. cupsCopyDest() - Copy a destination. cupsEnumDests() - Enumerate available destinations with a callback function. cupsEnumDestsBlock() - Enumerate available destinations with a block. cupsFreeDests() - Free the memory used by the list of destinations. cupsGetDest() - Get the named destination from the list. _cupsGetDestResource() - Get the resource path and URI for a destination. _cupsGetDests() - Get destinations from a server. cupsGetDests() - Get the list of destinations from the default server. cupsGetDests2() - Get the list of destinations from the specified server. cupsGetNamedDest() - Get options for the named destination. cupsRemoveDest() - Remove a destination from the destination list. cupsSetDefaultDest() - Set the default destination. cupsSetDests() - Save the list of destinations for the default server. cupsSetDests2() - Save the list of destinations for the specified server. _cupsUserDefault() - Get the user default printer from environment variables and location information. appleCopyLocations() - Copy the location history array. appleCopyNetwork() - Get the network ID for the current location. appleGetPaperSize() - Get the default paper size. appleGetPrinter() - Get a printer from the history array. cups_add_dest() - Add a destination to the array. cups_block_cb() - Enumeration callback for block API. cups_compare_dests() - Compare two destinations. cups_dnssd_browse_cb() - Browse for printers. cups_dnssd_browse_cb() - Browse for printers. cups_dnssd_client_cb() - Avahi client callback function. cups_dnssd_compare_device() - Compare two devices. cups_dnssd_free_device() - Free the memory used by a device. cups_dnssd_get_device() - Lookup a device and create it as needed. cups_dnssd_local_cb() - Browse for local printers. cups_dnssd_poll_cb() - Wait for input on the specified file descriptors. cups_dnssd_query_cb() - Process query data. cups_dnssd_resolve() - Resolve a Bonjour printer URI. cups_dnssd_resolve_cb() - See if we should continue resolving. cups_dnssd_unquote() - Unquote a name string. cups_find_dest() - Find a destination using a binary search. cups_get_default() - Get the default destination from an lpoptions file. cups_get_dests() - Get destinations from a file. cups_make_string() - Make a comma-separated string of values from an IPP attribute. ## Files: cups/libs/cups/dir.c "$Id: dir.c 10996 2013-05-29 11:51:34Z msweet $" Directory routines for CUPS. This set of APIs abstracts enumeration of directory entries. Copyright 2007-2012 by Apple Inc. Copyright 1997-2005 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". Contents: _cups_dir_time() - Convert a FILETIME value to a UNIX time value. cupsDirClose() - Close a directory. cupsDirOpen() - Open a directory. cupsDirRead() - Read the next directory entry. cupsDirRewind() - Rewind to the start of the directory. cupsDirClose() - Close a directory. cupsDirOpen() - Open a directory. cupsDirRead() - Read the next directory entry. cupsDirRewind() - Rewind to the start of the directory. ## Files: cups/libs/cups/dir.h "$Id: dir.h 10996 2013-05-29 11:51:34Z msweet $" Public directory definitions for CUPS. This set of APIs abstracts enumeration of directory entries. Copyright 2007-2011 by Apple Inc. Copyright 1997-2006 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". ## Files: cups/libs/cups/emit.c "$Id: emit.c 10996 2013-05-29 11:51:34Z msweet $" PPD code emission routines for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". PostScript is a trademark of Adobe Systems, Inc. This file is subject to the Apple OS-Developed Software exception. Contents: ppdCollect() - Collect all marked options that reside in the specified section. ppdCollect2() - Collect all marked options that reside in the specified section and minimum order. ppdEmit() - Emit code for marked options to a file. ppdEmitAfterOrder() - Emit a subset of the code for marked options to a file. ppdEmitFd() - Emit code for marked options to a file. ppdEmitJCL() - Emit code for JCL options to a file. ppdEmitJCLEnd() - Emit JCLEnd code to a file. ppdEmitString() - Get a string containing the code for marked options. ppd_compare_cparams() - Compare the order of two custom parameters. ppd_handle_media() - Handle media selection... ## Files: cups/libs/cups/encode.c "$Id: encode.c 11867 2014-05-09 20:33:08Z msweet $" Option encoding routines for CUPS. Copyright 2007-2014 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/file-private.h "$Id: file-private.h 11642 2014-02-27 15:57:59Z msweet $" Private file definitions for CUPS. Since stdio files max out at 256 files on many systems, we have to write similar functions without this limit. At the same time, using our own file functions allows us to provide transparent support of gzip'd print files, PPD files, etc. Copyright 2007-2011 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/file.c "$Id: file.c 11642 2014-02-27 15:57:59Z msweet $" File functions for CUPS. Since stdio files max out at 256 files on many systems, we have to write similar functions without this limit. At the same time, using our own file functions allows us to provide transparent support of gzip'd print files, PPD files, etc. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/file.h "$Id: file.h 11642 2014-02-27 15:57:59Z msweet $" Public file definitions for CUPS. Since stdio files max out at 256 files on many systems, we have to write similar functions without this limit. At the same time, using our own file functions allows us to provide transparent support of gzip'd print files, PPD files, etc. Copyright 2007-2011 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/getdevices.c "$Id: getdevices.c 4216 2013-03-11 13:57:36Z msweet $" cupsGetDevices implementation for CUPS. Copyright 2008-2013 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsGetDevices() - Get available printer devices. ## Files: cups/libs/cups/getifaddrs.c "$Id: getifaddrs.c 10996 2013-05-29 11:51:34Z msweet $" Network interface functions for CUPS. Copyright 2007-2010 by Apple Inc. Copyright 1997-2006 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" "LICENSE" which should have been included with this file. If this file is missing or damaged, see the license at "http://www.cups.org/". Contents: _cups_getifaddrs() - Get a list of network interfaces on the system. _cups_freeifaddrs() - Free an interface list... ## Files: cups/libs/cups/getputfile.c "$Id: getputfile.c 11153 2013-07-17 14:10:21Z msweet $" Get/put file functions for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsGetFd() - Get a file from the server. cupsGetFile() - Get a file from the server. cupsPutFd() - Put a file on the server. cupsPutFile() - Put a file on the server. ## Files: cups/libs/cups/globals.c "$Id: globals.c 11113 2013-07-10 14:08:39Z msweet $" Global variable access routines for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: _cupsGlobalLock() - Lock the global mutex. _cupsGlobals() - Return a pointer to thread local storage _cupsGlobalUnlock() - Unlock the global mutex. DllMain() - Main entry for library. cups_fix_path() - Fix a file path to use forward slashes consistently. cups_globals_alloc() - Allocate and initialize global data. cups_globals_free() - Free global data. cups_globals_init() - Initialize environment variables. ## Files: cups/libs/cups/http-addr.c "$Id: http-addr.c 11642 2014-02-27 15:57:59Z msweet $" HTTP address routines for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2006 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/http-addrlist.c "$Id: http-addrlist.c 11642 2014-02-27 15:57:59Z msweet $" HTTP address list routines for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/http-private.h "$Id: http-private.h 11392 2013-11-06 01:29:56Z msweet $" Private HTTP definitions for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/http-support.c "$Id: http-support.c 11445 2013-12-05 19:57:43Z msweet $" HTTP support routines for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: httpAssembleURI() - Assemble a uniform resource identifier from its components. httpAssembleURIf() - Assemble a uniform resource identifier from its components with a formatted resource. httpAssembleUUID() - Assemble a name-based UUID URN conforming to RFC 4122. httpDecode64() - Base64-decode a string. httpDecode64_2() - Base64-decode a string. httpEncode64() - Base64-encode a string. httpEncode64_2() - Base64-encode a string. httpGetDateString() - Get a formatted date/time string from a time value. httpGetDateString2() - Get a formatted date/time string from a time value. httpGetDateTime() - Get a time value from a formatted date/time string. httpSeparate() - Separate a Universal Resource Identifier into its components. httpSeparate2() - Separate a Universal Resource Identifier into its components. httpSeparateURI() - Separate a Universal Resource Identifier into its components. httpStatus() - Return a short string describing a HTTP status code. _cups_hstrerror() - hstrerror() emulation function for Solaris and others. _httpDecodeURI() - Percent-decode a HTTP request URI. _httpEncodeURI() - Percent-encode a HTTP request URI. _httpResolveURI() - Resolve a DNS-SD URI. http_client_cb() - Client callback for resolving URI. http_copy_decode() - Copy and decode a URI. http_copy_encode() - Copy and encode a URI. http_poll_cb() - Wait for input on the specified file descriptors. http_resolve_cb() - Build a device URI for the given service name. http_resolve_cb() - Build a device URI for the given service name. ## Files: cups/libs/cups/http.c "$Id: http.c 11761 2014-03-28 13:04:33Z msweet $" HTTP routines for CUPS. Copyright 2007-2014 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. This file contains Kerberos support code, copyright 2006 by Jelmer Vernooij. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/http.h "$Id: http.h 11085 2013-07-03 13:53:05Z msweet $" Hyper-Text Transport Protocol definitions for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/ipp-private.h "$Id: ipp-private.h 10996 2013-05-29 11:51:34Z msweet $" Private IPP definitions for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/ipp-support.c "$Id: ipp-support.c 11734 2014-03-25 18:01:47Z msweet $" Internet Printing Protocol support functions for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: ippAttributeString() - Convert the attribute's value to a string. ippCreateRequestedArray() - Create a CUPS array of attribute names from the given requested-attributes attribute. ippEnumString() - Return a string corresponding to the enum value. ippEnumValue() - Return the value associated with a given enum string. ippErrorString() - Return a name for the given status code. ippErrorValue() - Return a status code for the given name. ippOpString() - Return a name for the given operation id. ippOpValue() - Return an operation id for the given name. ippPort() - Return the default IPP port number. ippSetPort() - Set the default port number. ippTagString() - Return the tag name corresponding to a tag value. ippTagValue() - Return the tag value corresponding to a tag name. ipp_col_string() - Convert a collection to a string. ## Files: cups/libs/cups/ipp.c "$Id: ipp.c 11864 2014-05-08 23:10:47Z msweet $" Internet Printing Protocol functions for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: _cupsBufferGet() - Get a read/write buffer. _cupsBufferRelease() - Release a read/write buffer. ippAddBoolean() - Add a boolean attribute to an IPP message. ippAddBooleans() - Add an array of boolean values. ippAddCollection() - Add a collection value. ippAddCollections() - Add an array of collection values. ippAddDate() - Add a date attribute to an IPP message. ippAddInteger() - Add a integer attribute to an IPP message. ippAddIntegers() - Add an array of integer values. ippAddOctetString() - Add an octetString value to an IPP message. ippAddOutOfBand() - Add an out-of-band value to an IPP message. ippAddRange() - Add a range of values to an IPP message. ippAddRanges() - Add ranges of values to an IPP message. ippAddResolution() - Add a resolution value to an IPP message. ippAddResolutions() - Add resolution values to an IPP message. ippAddSeparator() - Add a group separator to an IPP message. ippAddString() - Add a language-encoded string to an IPP message. ippAddStringf() - Add a formatted string to an IPP message. ippAddStringfv() - Add a formatted string to an IPP message. ippAddStrings() - Add language-encoded strings to an IPP message. ippContainsInteger() - Determine whether an attribute contains the specified value or is within the list of ranges. ippContainsString() - Determine whether an attribute contains the specified string value. ippCopyAttribute() - Copy an attribute. ippCopyAttributes() - Copy attributes from one IPP message to another. ippDateToTime() - Convert from RFC 1903 Date/Time format to UNIX time in seconds. ippDelete() - Delete an IPP message. ippDeleteAttribute() - Delete a single attribute in an IPP message. ippDeleteValues() - Delete values in an attribute. ippFindAttribute() - Find a named attribute in a request. ippFindNextAttribute() - Find the next named attribute in a request. ippFirstAttribute() - Return the first attribute in the message. ippGetBoolean() - Get a boolean value for an attribute. ippGetCollection() - Get a collection value for an attribute. ippGetCount() - Get the number of values in an attribute. ippGetDate() - Get a date value for an attribute. ippGetGroupTag() - Get the group associated with an attribute. ippGetInteger() - Get the integer/enum value for an attribute. ippGetName() - Get the attribute name. ippGetOctetString() - Get an octetString value from an IPP attribute. ippGetOperation() - Get the operation ID in an IPP message. ippGetRange() - Get a rangeOfInteger value from an attribute. ippGetRequestId() - Get the request ID from an IPP message. ippGetResolution() - Get a resolution value for an attribute. ippGetState() - Get the IPP message state. ippGetStatusCode() - Get the status code from an IPP response or event message. ippGetString() - Get the string and optionally the language code for an attribute. ippGetValueTag() - Get the value tag for an attribute. ippGetVersion() - Get the major and minor version number from an IPP message. ippLength() - Compute the length of an IPP message. ippNextAttribute() - Return the next attribute in the message. ippNew() - Allocate a new IPP message. ippNewRequest() - Allocate a new IPP request message. ippNewResponse() - Allocate a new IPP response message. ippRead() - Read data for an IPP message from a HTTP connection. ippReadFile() - Read data for an IPP message from a file. ippReadIO() - Read data for an IPP message. ippSetBoolean() - Set a boolean value in an attribute. ippSetCollection() - Set a collection value in an attribute. ippSetDate() - Set a date value in an attribute. ippSetGroupTag() - Set the group tag of an attribute. ippSetInteger() - Set an integer or enum value in an attribute. ippSetName() - Set the name of an attribute. ippSetOctetString() - Set an octetString value in an IPP attribute. ippSetOperation() - Set the operation ID in an IPP request message. ippSetRange() - Set a rangeOfInteger value in an attribute. ippSetRequestId() - Set the request ID in an IPP message. ippSetResolution() - Set a resolution value in an attribute. ippSetState() - Set the current state of the IPP message. ippSetStatusCode() - Set the status code in an IPP response or event message. ippSetString() - Set a string value in an attribute. ippSetStringf() - Set a formatted string value of an attribute. ippSetStringf() - Set a formatted string value of an attribute. ippSetValueTag() - Set the value tag of an attribute. ippSetVersion() - Set the version number in an IPP message. ippTimeToDate() - Convert from UNIX time to RFC 1903 format. ippValidateAttribute() - Validate the contents of an attribute. ippValidateAttributes() - Validate all attributes in an IPP message. ippWrite() - Write data for an IPP message to a HTTP connection. ippWriteFile() - Write data for an IPP message to a file. ippWriteIO() - Write data for an IPP message. ipp_add_attr() - Add a new attribute to the message. ipp_free_values() - Free attribute values. ipp_get_code() - Convert a C locale/charset name into an IPP language/charset code. ipp_lang_code() - Convert a C locale name into an IPP language code. ipp_length() - Compute the length of an IPP message or collection value. ipp_read_http() - Semi-blocking read on a HTTP connection... ipp_read_file() - Read IPP data from a file. ipp_set_error() - Set a formatted, localized error string. ipp_set_value() - Get the value element from an attribute, expanding it as needed. ipp_write_file() - Write IPP data to a file. ## Files: cups/libs/cups/ipp.h "$Id: ipp.h 11734 2014-03-25 18:01:47Z msweet $" Internet Printing Protocol definitions for CUPS. Copyright 2007-2014 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/langprintf.c "$Id: langprintf.c 10996 2013-05-29 11:51:34Z msweet $" Localized printf/puts functions for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 2002-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: _cupsLangPrintError() - Print a message followed by a standard error. _cupsLangPrintFilter() - Print a formatted filter message string to a file. _cupsLangPrintf() - Print a formatted message string to a file. _cupsLangPuts() - Print a static message string to a file. _cupsSetLocale() - Set the current locale and transcode the command-line. ## Files: cups/libs/cups/language-private.h "$Id: language-private.h 10996 2013-05-29 11:51:34Z msweet $" Private localization support for CUPS. Copyright 2007-2010 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/language.c "$Id: language.c 11424 2013-11-08 19:51:01Z msweet $" I18N/language support for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: _cupsAppleLanguage() - Get the Apple language identifier associated with a locale ID. _cupsEncodingName() - Return the character encoding name string for the given encoding enumeration. cupsLangDefault() - Return the default language. cupsLangEncoding() - Return the character encoding (us-ascii, etc.) for the given language. cupsLangFlush() - Flush all language data out of the cache. cupsLangFree() - Free language data. cupsLangGet() - Get a language. _cupsLangString() - Get a message string. _cupsMessageFree() - Free a messages array. _cupsMessageLoad() - Load a .po file into a messages array. _cupsMessageLookup() - Lookup a message string. _cupsMessageNew() - Make a new message catalog array. appleLangDefault() - Get the default locale string. appleMessageLoad() - Load a message catalog from a localizable bundle. cups_cache_lookup() - Lookup a language in the cache... cups_message_compare() - Compare two messages. cups_message_free() - Free a message. cups_message_load() - Load the message catalog for a language. cups_unquote() - Unquote characters in strings... ## Files: cups/libs/cups/language.h "$Id: language.h 10996 2013-05-29 11:51:34Z msweet $" Multi-language support for CUPS. Copyright 2007-2011 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/localize.c "$Id: localize.c 10996 2013-05-29 11:51:34Z msweet $" PPD localization routines for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". PostScript is a trademark of Adobe Systems, Inc. This code and any derivative of it may be used and distributed freely under the terms of the GNU General Public License when used with GNU Ghostscript or its derivatives. Use of the code (or any derivative of it) with software other than GNU GhostScript (or its derivatives) is governed by the CUPS license agreement. This file is subject to the Apple OS-Developed Software exception. Contents: ppdLocalize() - Localize the PPD file to the current locale. ppdLocalizeAttr() - Localize an attribute. ppdLocalizeIPPReason() - Get the localized version of a cupsIPPReason attribute. ppdLocalizeMarkerName() - Get the localized version of a marker-names attribute value. _ppdFreeLanguages() - Free an array of languages from _ppdGetLanguages. _ppdGetLanguages() - Get an array of languages from a PPD file. _ppdHashName() - Generate a hash value for a device or profile name. _ppdLocalizedAttr() - Find a localized attribute. ppd_ll_CC() - Get the current locale names. ## Files: cups/libs/cups/mark.c "$Id: mark.c 10996 2013-05-29 11:51:34Z msweet $" Option marking routines for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". PostScript is a trademark of Adobe Systems, Inc. This file is subject to the Apple OS-Developed Software exception. Contents: cupsMarkOptions() - Mark command-line options in a PPD file. ppdFindChoice() - Return a pointer to an option choice. ppdFindMarkedChoice() - Return the marked choice for the specified option. ppdFindOption() - Return a pointer to the specified option. ppdIsMarked() - Check to see if an option is marked. ppdMarkDefaults() - Mark all default options in the PPD file. ppdMarkOption() - Mark an option in a PPD file and return the number of conflicts. ppdFirstOption() - Return the first option in the PPD file. ppdNextOption() - Return the next option in the PPD file. _ppdParseOptions() - Parse options from a PPD file. ppd_debug_marked() - Output the marked array to stdout... ppd_defaults() - Set the defaults for this group and all sub-groups. ppd_mark_choices() - Mark one or more option choices from a string. ppd_mark_option() - Quickly mark an option without checking for conflicts. ## Files: cups/libs/cups/md5-private.h "$Id: md5-private.h 10996 2013-05-29 11:51:34Z msweet $" Private MD5 definitions for CUPS. Copyright 2007-2010 by Apple Inc. Copyright 2005 by Easy Software Products Copyright (C) 1999 Aladdin Enterprises. All rights reserved. This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. L. Peter Deutsch ghost@aladdin.com ## Files: cups/libs/cups/md5.c "$Id: md5.c 11374 2013-11-04 23:49:10Z msweet $" Private MD5 implementation for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 2005 by Easy Software Products Copyright (C) 1999 Aladdin Enterprises. All rights reserved. This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. L. Peter Deutsch ghost@aladdin.com ## Files: cups/libs/cups/md5passwd.c "$Id: md5passwd.c 10996 2013-05-29 11:51:34Z msweet $" MD5 password support for CUPS. Copyright 2007-2010 by Apple Inc. Copyright 1997-2005 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: httpMD5() - Compute the MD5 sum of the username:group:password. httpMD5Nonce() - Combine the MD5 sum of the username, group, and password with the server-supplied nonce value. httpMD5String() - Convert an MD5 sum to a character string. ## Files: cups/libs/cups/notify.c "$Id: notify.c 10996 2013-05-29 11:51:34Z msweet $" Notification routines for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 2005-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsNotifySubject() - Return the subject for the given notification message. cupsNotifyText() - Return the text for the given notification message. ## Files: cups/libs/cups/options.c "$Id: options.c 10996 2013-05-29 11:51:34Z msweet $" Option routines for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsAddOption() - Add an option to an option array. cupsFreeOptions() - Free all memory used by options. cupsGetOption() - Get an option value. cupsParseOptions() - Parse options from a command-line argument. cupsRemoveOption() - Remove an option from an option array. _cupsGet1284Values() - Get 1284 device ID keys and values. cups_compare_options() - Compare two options. cups_find_option() - Find an option using a binary search. ## Files: cups/libs/cups/page.c "$Id: page.c 10996 2013-05-29 11:51:34Z msweet $" Page size functions for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". PostScript is a trademark of Adobe Systems, Inc. This file is subject to the Apple OS-Developed Software exception. Contents: ppdPageSize() - Get the page size record for the given size. ppdPageSizeLimits() - Return the custom page size limits. ppdPageWidth() - Get the page width for the given size. ppdPageLength() - Get the page length for the given size. ## Files: cups/libs/cups/ppd-cache.c "$Id: ppd-cache.c 11833 2014-04-24 15:04:15Z msweet $" PPD cache implementation for CUPS. Copyright 2010-2013 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: _ppdCacheCreateWithFile() - Create PPD cache and mapping data from a written file. _ppdCacheCreateWithPPD() - Create PWG mapping data from a PPD file. _ppdCacheDestroy() - Free all memory used for PWG mapping data. _ppdCacheGetBin() - Get the PWG output-bin keyword associated with a PPD OutputBin. _ppdCacheGetInputSlot() - Get the PPD InputSlot associated with the job attributes or a keyword string. _ppdCacheGetMediaType() - Get the PPD MediaType associated with the job attributes or a keyword string. _ppdCacheGetOutputBin() - Get the PPD OutputBin associated with the keyword string. _ppdCacheGetPageSize() - Get the PPD PageSize associated with the job attributes or a keyword string. _ppdCacheGetSize() - Get the PWG size associated with a PPD PageSize. _ppdCacheGetSource() - Get the PWG media-source associated with a PPD InputSlot. _ppdCacheGetType() - Get the PWG media-type associated with a PPD MediaType. _ppdCacheWriteFile() - Write PWG mapping data to a file. _pwgInputSlotForSource() - Get the InputSlot name for the given PWG media-source. _pwgMediaTypeForType() - Get the MediaType name for the given PWG media-type. _pwgPageSizeForMedia() - Get the PageSize name for the given media. pwg_ppdize_name() - Convert an IPP keyword to a PPD keyword. pwg_unppdize_name() - Convert a PPD keyword to a lowercase IPP keyword. ## Files: cups/libs/cups/ppd-private.h "$Id: ppd-private.h 4274 2013-04-09 20:10:23Z msweet $" Private PPD definitions for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". PostScript is a trademark of Adobe Systems, Inc. This code and any derivative of it may be used and distributed freely under the terms of the GNU General Public License when used with GNU Ghostscript or its derivatives. Use of the code (or any derivative of it) with software other than GNU GhostScript (or its derivatives) is governed by the CUPS license agreement. This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/ppd.c "$Id: ppd.c 10996 2013-05-29 11:51:34Z msweet $" PPD file routines for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". PostScript is a trademark of Adobe Systems, Inc. This code and any derivative of it may be used and distributed freely under the terms of the GNU General Public License when used with GNU Ghostscript or its derivatives. Use of the code (or any derivative of it) with software other than GNU GhostScript (or its derivatives) is governed by the CUPS license agreement. This file is subject to the Apple OS-Developed Software exception. Contents: ppdClose() - Free all memory used by the PPD file. ppdErrorString() - Returns the text assocated with a status. _ppdGetEncoding() - Get the CUPS encoding value for the given LanguageEncoding. ppdLastError() - Return the status from the last ppdOpen*(). ppdOpen() - Read a PPD file into memory. _ppdOpen() - Read a PPD file into memory. ppdOpen2() - Read a PPD file into memory. ppdOpenFd() - Read a PPD file into memory. _ppdOpenFile() - Read a PPD file into memory. ppdOpenFile() - Read a PPD file into memory. ppdSetConformance() - Set the conformance level for PPD files. ppd_add_attr() - Add an attribute to the PPD data. ppd_add_choice() - Add a choice to an option. ppd_add_size() - Add a page size. ppd_compare_attrs() - Compare two attributes. ppd_compare_choices() - Compare two choices... ppd_compare_coptions() - Compare two custom options. ppd_compare_options() - Compare two options. ppd_decode() - Decode a string value... ppd_free_filters() - Free the filters array. ppd_free_group() - Free a single UI group. ppd_free_option() - Free a single option. ppd_get_coption() - Get a custom option record. ppd_get_cparam() - Get a custom parameter record. ppd_get_group() - Find or create the named group as needed. ppd_get_option() - Find or create the named option as needed. ppd_hash_option() - Generate a hash of the option name... ppd_read() - Read a line from a PPD file, skipping comment lines as necessary. ppd_update_filters() - Update the filters array as needed. ## Files: cups/libs/cups/ppd.h "$Id: ppd.h 11056 2013-06-25 14:27:30Z msweet $" PostScript Printer Description definitions for CUPS. THESE APIS ARE DEPRECATED. TO COMPILE WITHOUT WARNINGS ADD -D_PPD_DEPRECATED="" TO YOUR COMPILE OPTIONS. THIS HEADER AND THESE FUNCTIONS WILL BE REMOVED IN A FUTURE RELEASE OF CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". PostScript is a trademark of Adobe Systems, Inc. This code and any derivative of it may be used and distributed freely under the terms of the GNU General Public License when used with GNU Ghostscript or its derivatives. Use of the code (or any derivative of it) with software other than GNU GhostScript (or its derivatives) is governed by the CUPS license agreement. This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/pwg-media.c "$Id: pwg-media.c 11240 2013-08-14 20:33:55Z msweet $" PWG media name API implementation for CUPS. Copyright 2009-2013 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: pwgFormatSizeName() - Generate a PWG self-describing media size name. pwgInitSize() - Initialize a pwg_size_t structure using IPP Job Template attributes. pwgMediaForLegacy() - Find a PWG media size by ISO/IPP legacy name. pwgMediaForPPD() - Find a PWG media size by Adobe PPD name. pwgMediaForPWG() - Find a PWG media size by 5101.1 self-describing name. pwgMediaForSize() - Get the PWG media size for the given dimensions. _pwgMediaTable() - Return the internal media size table. pwg_compare_legacy() - Compare two sizes using the legacy names. pwg_compare_ppd() - Compare two sizes using the PPD names. pwg_compare_pwg() - Compare two sizes using the PWG names. pwg_format_inches() - Convert and format PWG units as inches. pwg_format_millimeters() - Convert and format PWG units as millimeters. pwg_scan_measurement() - Scan a measurement in inches or millimeters. ## Files: cups/libs/cups/pwg-private.h "$Id: pwg-private.h 11240 2013-08-14 20:33:55Z msweet $" Private PWG media API definitions for CUPS. Copyright 2009-2013 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/pwg.h "$Id: pwg.h 4274 2013-04-09 20:10:23Z msweet $" PWG media API definitions for CUPS. Copyright 2009-2013 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/raster-private.h "$Id: raster-private.h 3794 2012-04-23 22:44:16Z msweet $" Private image library definitions for CUPS. Copyright 2007-2011 by Apple Inc. Copyright 1993-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/raster.h "$Id: raster.h 4027 2012-11-16 01:00:05Z msweet $" Raster file definitions for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2006 by Easy Software Products. This file is part of the CUPS Imaging library. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/request.c "$Id: request.c 11867 2014-05-09 20:33:08Z msweet $" IPP utilities for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsDoFileRequest() - Do an IPP request with a file. cupsDoIORequest() - Do an IPP request with file descriptors. cupsDoRequest() - Do an IPP request. cupsGetResponse() - Get a response to an IPP request. cupsLastError() - Return the last IPP status code. cupsLastErrorString() - Return the last IPP status-message. _cupsNextDelay() - Return the next retry delay value. cupsReadResponseData() - Read additional data after the IPP response. cupsSendRequest() - Send an IPP request. cupsWriteRequestData() - Write additional data after an IPP request. _cupsConnect() - Get the default server connection... _cupsSetError() - Set the last IPP status code and status-message. _cupsSetHTTPError() - Set the last error using the HTTP status. ## Files: cups/libs/cups/sidechannel.c "$Id: sidechannel.c 10996 2013-05-29 11:51:34Z msweet $" Side-channel API code for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsSideChannelDoRequest() - Send a side-channel command to a backend and wait for a response. cupsSideChannelRead() - Read a side-channel message. cupsSideChannelSNMPGet() - Query a SNMP OID's value. cupsSideChannelSNMPWalk() - Query multiple SNMP OID values. cupsSideChannelWrite() - Write a side-channel message. ## Files: cups/libs/cups/sidechannel.h "$Id: sidechannel.h 10996 2013-05-29 11:51:34Z msweet $" Side-channel API definitions for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/snmp-private.h "$Id: snmp-private.h 3794 2012-04-23 22:44:16Z msweet $" Private SNMP definitions for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 2006-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" "LICENSE" which should have been included with this file. If this file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/snmp.c "$Id: snmp.c 4167 2013-02-04 19:27:13Z msweet $" SNMP functions for CUPS. Copyright 2007-2011 by Apple Inc. Copyright 2006-2007 by Easy Software Products, all rights reserved. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" "LICENSE" which should have been included with this file. If this file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: _cupsSNMPClose() - Close a SNMP socket. _cupsSNMPCopyOID() - Copy an OID. _cupsSNMPDefaultCommunity() - Get the default SNMP community name. _cupsSNMPIsOID() - Test whether a SNMP response contains the specified OID. _cupsSNMPIsOIDPrefixed() - Test whether a SNMP response uses the specified OID prefix. _cupsSNMPOIDToString() - Convert an OID to a string. _cupsSNMPOpen() - Open a SNMP socket. _cupsSNMPRead() - Read and parse a SNMP response. _cupsSNMPSetDebug() - Enable/disable debug logging to stderr. _cupsSNMPStringToOID() - Convert a numeric OID string to an OID array. _cupsSNMPWalk() - Enumerate a group of OIDs. _cupsSNMPWrite() - Send an SNMP query packet. asn1_debug() - Decode an ASN1-encoded message. asn1_decode_snmp() - Decode a SNMP packet. asn1_encode_snmp() - Encode a SNMP packet. asn1_get_integer() - Get an integer value. asn1_get_length() - Get a value length. asn1_get_oid() - Get an OID value. asn1_get_packed() - Get a packed integer value. asn1_get_string() - Get a string value. asn1_get_type() - Get a value type. asn1_set_integer() - Set an integer value. asn1_set_length() - Set a value length. asn1_set_oid() - Set an OID value. asn1_set_packed() - Set a packed integer value. asn1_size_integer() - Figure out the number of bytes needed for an integer value. asn1_size_length() - Figure out the number of bytes needed for a length value. asn1_size_oid() - Figure out the numebr of bytes needed for an OID value. asn1_size_packed() - Figure out the number of bytes needed for a packed integer value. snmp_set_error() - Set the localized error for a packet. ## Files: cups/libs/cups/snprintf.c "$Id: snprintf.c 10996 2013-05-29 11:51:34Z msweet $" snprintf functions for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: _cups_vsnprintf() - Format a string into a fixed size buffer. _cups_snprintf() - Format a string into a fixed size buffer. ## Files: cups/libs/cups/sspi-private.h Private SSPI definitions for CUPS. Copyright 2010 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". ## Files: cups/libs/cups/sspi.c "$Id: sspi.c 11760 2014-03-28 12:58:24Z msweet $" Windows SSPI SSL implementation for CUPS. Copyright 2010-2014 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". ## Files: cups/libs/cups/string-private.h "$Id: string-private.h 11890 2014-05-22 13:59:21Z msweet $" Private string definitions for CUPS. Copyright 2007-2014 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/string.c "$Id: string.c 11890 2014-05-22 13:59:21Z msweet $" String functions for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: _cupsStrAlloc() - Allocate/reference a string. _cupsStrFlush() - Flush the string pool. _cupsStrFormatd() - Format a floating-point number. _cupsStrFree() - Free/dereference a string. _cupsStrRetain() - Increment the reference count of a string. _cupsStrScand() - Scan a string for a floating-point number. _cupsStrStatistics() - Return allocation statistics for string pool. _cups_strcpy() - Copy a string allowing for overlapping strings. _cups_strdup() - Duplicate a string. _cups_strcasecmp() - Do a case-insensitive comparison. _cups_strncasecmp() - Do a case-insensitive comparison on up to N chars. _cups_strlcat() - Safely concatenate two strings. _cups_strlcpy() - Safely copy two strings. compare_sp_items() - Compare two string pool items... ## Files: cups/libs/cups/tempfile.c "$Id: tempfile.c 10996 2013-05-29 11:51:34Z msweet $" Temp file utilities for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsTempFd() - Creates a temporary file. cupsTempFile() - Generates a temporary filename. cupsTempFile2() - Creates a temporary CUPS file. ## Files: cups/libs/cups/testadmin.c "$Id: testadmin.c 10996 2013-05-29 11:51:34Z msweet $" Admin function test program for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Main entry. show_settings() - Show settings in the array... ## Files: cups/libs/cups/testarray.c "$Id: testarray.c 10996 2013-05-29 11:51:34Z msweet $" Array test program for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Main entry. get_seconds() - Get the current time in seconds... load_words() - Load words from a file. ## Files: cups/libs/cups/testconflicts.c "$Id: testconflicts.c 3755 2012-03-30 05:59:14Z msweet $" PPD constraint test program for CUPS. Copyright 2008-2012 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Main entry. ## Files: cups/libs/cups/testcups.c "$Id: testcups.c 11205 2013-07-31 18:06:15Z msweet $" CUPS API test program for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Main entry. dests_equal() - Determine whether two destinations are equal. ## Files: cups/libs/cups/testfile.c "$Id: testfile.c 10996 2013-05-29 11:51:34Z msweet $" File test program for CUPS. Copyright 2007-2011 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Main entry. count_lines() - Count the number of lines in a file. random_tests() - Do random access tests. read_write_tests() - Perform read/write tests. ## Files: cups/libs/cups/testhttp.c "$Id: testhttp.c 11445 2013-12-05 19:57:43Z msweet $" HTTP test program for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/testi18n.c "$Id: testi18n.c 10996 2013-05-29 11:51:34Z msweet $" Internationalization test for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Main entry for internationalization test module. print_utf8() - Print UTF-8 string with (optional) message. ## Files: cups/libs/cups/testipp.c "$Id: testipp.c 11890 2014-05-22 13:59:21Z msweet $" IPP test program for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2005 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Main entry. hex_dump() - Produce a hex dump of a buffer. print_attributes() - Print the attributes in a request... read_cb() - Read data from a buffer. write_cb() - Write data into a buffer. ## Files: cups/libs/cups/testlang.c "$Id: testlang.c 10996 2013-05-29 11:51:34Z msweet $" Localization test program for CUPS. Copyright 2007-2010 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Load the specified language and show the strings for yes and no. ## Files: cups/libs/cups/testoptions.c "$Id: testoptions.c 1992 2010-03-24 14:32:08Z msweet $" Option test program for CUPS. Copyright 2008-2010 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Test option processing functions. ## Files: cups/libs/cups/testppd.c "$Id: testppd.c 11060 2013-06-25 15:02:18Z msweet $" PPD test program for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Main entry. ## Files: cups/libs/cups/testpwg.c "$Id: testpwg.c 11240 2013-08-14 20:33:55Z msweet $" PWG test program for CUPS. Copyright 2009-2013 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Main entry. test_pagesize() - Test the PWG mapping functions. test_ppd_cache() - Test the PPD cache functions. ## Files: cups/libs/cups/testsnmp.c "$Id: testsnmp.c 3411 2011-09-07 22:31:27Z msweet $" SNMP test program for CUPS. Copyright 2008-2010 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Main entry. scan_oid() - Scan an OID value. show_oid() - Show the specified OID. usage() - Show program usage and exit. ## Files: cups/libs/cups/thread-private.h "$Id: thread-private.h 11642 2014-02-27 15:57:59Z msweet $" Private threading definitions for CUPS. Copyright 2009-2012 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/thread.c "$Id: thread.c 11642 2014-02-27 15:57:59Z msweet $" Threading primitives for CUPS. Copyright 2009-2012 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: _cupsMutexInit() - Initialize a mutex. _cupsMutexLock() - Lock a mutex. _cupsMutexUnlock() - Unlock a mutex. _cupsRWInit() - Initialize a reader/writer lock. _cupsRWLockRead() - Acquire a reader/writer lock for reading. _cupsRWLockWrite() - Acquire a reader/writer lock for writing. _cupsRWUnlock() - Release a reader/writer lock. _cupsThreadCreate() - Create a thread. ## Files: cups/libs/cups/transcode.c "$Id: transcode.c 10996 2013-05-29 11:51:34Z msweet $" Transcoding support for CUPS. Copyright 2007-2010 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: _cupsCharmapFlush() - Flush all character set maps out of cache. cupsCharsetToUTF8() - Convert legacy character set to UTF-8. cupsUTF8ToCharset() - Convert UTF-8 to legacy character set. cupsUTF8ToUTF32() - Convert UTF-8 to UTF-32. cupsUTF32ToUTF8() - Convert UTF-32 to UTF-8. ## Files: cups/libs/cups/transcode.h "$Id: transcode.h 10996 2013-05-29 11:51:34Z msweet $" Transcoding definitions for CUPS. Copyright 2007-2011 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/usersys.c "$Id: usersys.c 11689 2014-03-05 21:22:12Z msweet $" User, system, and password routines for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/cups/util.c "$Id: util.c 10996 2013-05-29 11:51:34Z msweet $" Printing utilities for CUPS. Copyright 2007-2013 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsCancelJob() - Cancel a print job on the default server. cupsCancelJob2() - Cancel or purge a print job. cupsCreateJob() - Create an empty job for streaming. cupsFinishDocument() - Finish sending a document. cupsFreeJobs() - Free memory used by job data. cupsGetClasses() - Get a list of printer classes from the default server. cupsGetDefault() - Get the default printer or class for the default server. cupsGetDefault2() - Get the default printer or class for the specified server. cupsGetJobs() - Get the jobs from the default server. cupsGetJobs2() - Get the jobs from the specified server. cupsGetPPD() - Get the PPD file for a printer on the default server. cupsGetPPD2() - Get the PPD file for a printer from the specified server. cupsGetPPD3() - Get the PPD file for a printer on the specified server if it has changed. cupsGetPrinters() - Get a list of printers from the default server. cupsGetServerPPD() - Get an available PPD file from the server. cupsPrintFile() - Print a file to a printer or class on the default server. cupsPrintFile2() - Print a file to a printer or class on the specified server. cupsPrintFiles() - Print one or more files to a printer or class on the default server. cupsPrintFiles2() - Print one or more files to a printer or class on the specified server. cupsStartDocument() - Add a document to a job created with cupsCreateJob(). cups_get_printer_uri() - Get the printer-uri-supported attribute for the first printer in a class. ## Files: cups/libs/cups/versioning.h "$Id: versioning.h 11056 2013-06-25 14:27:30Z msweet $" API versioning definitions for CUPS. Copyright 2007-2013 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/filter/commandtops.c "$Id: commandtops.c 3794 2012-04-23 22:44:16Z msweet $" PostScript command filter for CUPS. Copyright 2008-2012 by Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". Contents: main() - Process a CUPS command file. auto_configure() - Automatically configure the printer using PostScript query commands and/or SNMP lookups. begin_ps() - Send the standard PostScript prolog. end_ps() - Send the standard PostScript trailer. print_self_test_page() - Print a self-test page. report_levels() - Report supply levels. ## Files: cups/libs/filter/common.c "$Id: common.c 10996 2013-05-29 11:51:34Z msweet $" Common filter routines for CUPS. Copyright 2007-2011 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: SetCommonOptions() - Set common filter options for media size, etc. UpdatePageVars() - Update the page variables for the orientation. WriteComment() - Write a DSC comment. WriteCommon() - Write common procedures... WriteLabelProlog() - Write the prolog with the classification and page label. WriteLabels() - Write the actual page labels. ## Files: cups/libs/filter/common.h "$Id: common.h 10996 2013-05-29 11:51:34Z msweet $" Common filter definitions for CUPS. Copyright 2007-2010 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. ## Files: cups/libs/filter/cupsraster.c "$Id: raster.c 10996 2013-05-29 11:51:34Z msweet $" Raster file routines for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1997-2006 by Easy Software Products. This file is part of the CUPS Imaging library. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsRasterClose() - Close a raster stream. cupsRasterOpen() - Open a raster stream using a file descriptor. cupsRasterOpenIO() - Open a raster stream using a callback function. cupsRasterReadHeader() - Read a raster page header and store it in a version 1 page header structure. cupsRasterReadHeader2() - Read a raster page header and store it in a version 2 page header structure. cupsRasterReadPixels() - Read raster pixels. cupsRasterWriteHeader() - Write a raster page header from a version 1 page header structure. cupsRasterWriteHeader2() - Write a raster page header from a version 2 page header structure. cupsRasterWritePixels() - Write raster pixels. cups_raster_read_header() - Read a raster page header. cups_raster_read() - Read through the raster buffer. cups_raster_update() - Update the raster header and row count for the current page. cups_raster_write() - Write a row of compressed raster data... cups_read_fd() - Read bytes from a file. cups_swap() - Swap bytes in raster data... cups_write_fd() - Write bytes to a file. ## Files: cups/libs/filter/error.c "$Id: error.c 10996 2013-05-29 11:51:34Z msweet $" Raster error handling for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: _cupsRasterAddError() - Add an error message to the error buffer. _cupsRasterClearError() - Clear the error buffer. cupsRasterErrorString() - Return the last error from a raster function. get_error_buffer() - Return a pointer to thread local storage. raster_init() - Initialize error buffer once. raster_destructor() - Free memory allocated by get_error_buffer(). ## Files: cups/libs/filter/gziptoany.c "$Id: gziptoany.c 10996 2013-05-29 11:51:34Z msweet $" GZIP/raw pre-filter for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1993-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Copy (and uncompress) files to stdout. ## Files: cups/libs/filter/interpret.c "$Id: interpret.c 11551 2014-01-29 16:31:35Z msweet $" PPD command interpreter for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1993-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: cupsRasterInterpretPPD() - Interpret PPD commands to create a page header. _cupsRasterExecPS() - Execute PostScript code to initialize a page header. cleartomark_stack() - Clear to the last mark ([) on the stack. copy_stack() - Copy the top N stack objects. delete_stack() - Free memory used by a stack. error_object() - Add an object's value to the current error message. error_stack() - Add a stack to the current error message. index_stack() - Copy the Nth value on the stack. new_stack() - Create a new stack. pop_stock() - Pop the top object off the stack. push_stack() - Push an object on the stack. roll_stack() - Rotate stack objects. scan_ps() - Scan a string for the next PS object. setpagedevice() - Simulate the PostScript setpagedevice operator. DEBUG_object() - Print an object value. DEBUG_stack() - Print a stack. ## Files: cups/libs/filter/pstops.c "$Id: pstops.c 10996 2013-05-29 11:51:34Z msweet $" PostScript filter for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1993-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Main entry. add_page() - Add a page to the pages array. cancel_job() - Flag the job as canceled. check_range() - Check to see if the current page is selected for printing. copy_bytes() - Copy bytes from the input file to stdout. copy_comments() - Copy all of the comments section. copy_dsc() - Copy a DSC-conforming document. copy_non_dsc() - Copy a document that does not conform to the DSC. copy_page() - Copy a page description. copy_prolog() - Copy the document prolog section. copy_setup() - Copy the document setup section. copy_trailer() - Copy the document trailer. do_prolog() - Send the necessary document prolog commands. do_setup() - Send the necessary document setup commands. doc_printf() - Send a formatted string to stdout and/or the temp file. doc_puts() - Send a nul-terminated string to stdout and/or the temp file. doc_write() - Send data to stdout and/or the temp file. end_nup() - End processing for N-up printing. include_feature() - Include a printer option/feature command. parse_text() - Parse a text value in a comment. set_pstops_options() - Set pstops options. skip_page() - Skip past a page that won't be printed. start_nup() - Start processing for N-up printing. write_label_prolog() - Write the prolog with the classification and page label. write_labels() - Write the actual page labels. write_options() - Write options provided via %%IncludeFeature. ## Files: cups/libs/filter/rasterbench.c "$Id: rasterbench.c 10996 2013-05-29 11:51:34Z msweet $" Raster benchmark program for CUPS. Copyright 2007-2011 by Apple Inc. Copyright 1997-2006 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Benchmark the raster read/write functions. compute_median() - Compute the median time for a test. read_test() - Benchmark the raster read functions. write_test() - Benchmark the raster write functions. ## Files: cups/libs/filter/rastertoepson.c "$Id: rastertoepson.c 10996 2013-05-29 11:51:34Z msweet $" EPSON ESC/P and ESC/P2 filter for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1993-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: Setup() - Prepare the printer for printing. StartPage() - Start a page of graphics. EndPage() - Finish a page of graphics. Shutdown() - Shutdown the printer. CompressData() - Compress a line of graphics. OutputLine() - Output a line of graphics. main() - Main entry and processing of driver. ## Files: cups/libs/filter/rastertohp.c "$Id: rastertohp.c 10996 2013-05-29 11:51:34Z msweet $" Hewlett-Packard Page Control Language filter for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 1993-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: Setup() - Prepare the printer for printing. StartPage() - Start a page of graphics. EndPage() - Finish a page of graphics. Shutdown() - Shutdown the printer. CancelJob() - Cancel the current job... CompressData() - Compress a line of graphics. OutputLine() - Output a line of graphics. main() - Main entry and processing of driver. ## Files: cups/libs/filter/rastertolabel.c "$Id: rastertolabel.c 11756 2014-03-27 17:06:25Z msweet $" Label printer filter for CUPS. Copyright 2007-2012 by Apple Inc. Copyright 2001-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: Setup() - Prepare the printer for printing. StartPage() - Start a page of graphics. EndPage() - Finish a page of graphics. CancelJob() - Cancel the current job... OutputLine() - Output a line of graphics. PCLCompress() - Output a PCL (mode 3) compressed line. ZPLCompress() - Output a run-length compression sequence. main() - Main entry and processing of driver. ## Files: cups/libs/filter/rastertopwg.c "$Id: rastertopwg.c 3427 2011-09-20 18:40:57Z msweet $" CUPS raster to PWG raster format filter for CUPS. Copyright 2011 Apple Inc. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Main entry for filter. ## Files: cups/libs/filter/testraster.c "$Id: testraster.c 10996 2013-05-29 11:51:34Z msweet $" Raster test program routines for CUPS. Copyright 2007-2011 by Apple Inc. Copyright 1997-2007 by Easy Software Products. These coded instructions, statements, and computer programs are the property of Apple Inc. and are protected by Federal copyright law. Distribution and use rights are outlined in the file "LICENSE.txt" which should have been included with this file. If this file is file is missing or damaged, see the license at "http://www.cups.org/". This file is subject to the Apple OS-Developed Software exception. Contents: main() - Test the raster functions. do_ppd_tests() - Test the default option commands in a PPD file. do_ps_tests() - Test standard PostScript commands. do_ras_file() - Test reading of a raster file. do_raster_tests() - Test reading and writing of raster data. print_changes() - Print differences in the page header. ## Files: demos/c/multi_test.c devices/vector/doc_common.c devices/vector/doc_common.h pdf/pdf_array.c pdf/pdf_array.h pdf/pdf_colour.h pdf/pdf_file.h pdf/pdf_func.h pdf/pdf_image.h pdf/pdf_int.h pdf/pdf_loop_detect.c pdf/pdf_loop_detect.h pdf/pdf_path.c pdf/pdf_path.h pdf/pdf_shading.h pdf/pdf_stack.c pdf/pdf_stack.h pdf/pdf_text.h pdf/pdf_xref.h pdf/pdftop.c Copyright (C) 2018-2023 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: demos/java/gsjava/src/com/artifex/gsjava/GSAPI.java Returns the copyright information as a String. @return The copyright information. ## Files: demos/java/gsviewer/src/com/artifex/gsviewer/gui/SettingsDialog.java To change this license header, choose License Headers in Project Properties. To change this template file, choose Tools | Templates and open the template in the editor. ## Files: demos/python/gsapi.py Python version of the C API in psi/iapi.h. Copyright (C) 2001-2023 Artifex Software, Inc. Overview: Implemented using Python's ctypes module. All functions have the same name as the C function that they wrap. Functions raise a GSError exception if the underlying function returned a negative error code. Functions that don't have out-params return None. Out-params are returned directly (using tuples if there are more than one). See examples.py for sample usage. Example usage: On Linux/OpenBSD/MacOS: Build the ghostscript shared library: make sodebug Run gsapi.py as a test script: GSAPI_LIBDIR=sodebugbin ./demos/python/gsapi.py On Windows: Build ghostscript dll, for example: devenv.com windows/GhostPDL.sln /Build Debug /Project ghostscript Run gsapi.py as a test script in a cmd.exe window: set GSAPI_LIBDIR=debugbin&& python ./demos/python/gsapi.py Run gsapi.py as a test script in a PowerShell window: cmd /C "set GSAPI_LIBDIR=debugbin&& python ./demos/python/gsapi.py" Specifying the Ghostscript shared library: Two environmental variables can be used to specify where to find the Ghostscript shared library. GSAPI_LIB sets the exact path of the ghostscript shared library, else GSAPI_LIBDIR sets the directory containing the ghostscript shared library. If neither is defined we will use the OS's default location(s) for shared libraries. If GSAPI_LIB is not defined, the leafname of the shared library is inferred from the OS type - libgs.so on Unix, libgs.dylib on MacOS, gsdll64.dll on Windows 64. Requirements: Should work on python-2.5+ and python-3.0+, but this might change in future. Limitations as of 2020-07-21: Only very limited testing on has been done. Tested on Linux, OpenBSD and Windows. Only tested with python-3.7 and 2.7. We don't provide gsapi_add_fs() or gsapi_remove_fs(). We only provide display_callback V2, without V3's display_adjust_band_height and display_rectangle_request. ## Files: devices/gdev4693.c Copyright 1992 Washington State University. All rights reserved. Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted. This software is provided "as is" without express or implied warranty. ## Files: devices/gdevbjc.h Definitions for Canon BJC printers and the associated drivers. Copyright (C) Yves Arrouye , 1995, 1996. ## Files: devices/gdevicov.c inkcov: compute ink coverage of the document being rendered. originally copyright 2011 Sebastian Kapfer but assigned to Artifex Software, Inc. (see http://bugs.ghostscript.com/show_bug.cgi?id=692665) output is plain text; one line per page. columns 1 through 4 give the fraction of pixels containing c, m, y and black ink. column 5 is the string 'CMYK'. column 6 is 'OK' if everything went fine, 'ERROR' if there was a problem. the resolution defaults to 75 dpi (which gives good-enough estimates) but can be changed via the -r flag to Ghostscript. ## Files: devices/gdevifno.c Copyright (c) 1998 by Lucent Technologies. Permission to use, copy, modify, and distribute this software for any purpose without fee is hereby granted, provided that this entire notice is included in all copies of any software which is or includes a copy or modification of this software. THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTY. IN PARTICULAR, NEITHER THE AUTHORS NOR LUCENT TECHNOLOGIES MAKE ANY REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. ## Files: devices/gdevijs.c IJS device for Ghostscript. Intended to work with any IJS compliant inkjet driver, including hpijs 1.0 and later, an IJS-enhanced gimp-print driver, and the IJS Windows GDI server (ijsmswin.exe). DRAFT WARNING: The ijs server can be selected on the gs command line which is a security risk, since any program can be run. You should use -dSAFER which sets .LockSafetyParams to true before opening this device. 11/26/03 David Suffield (gdevijs-krgb-1.0.patch) (c) 2003-2004 Copyright Hewlett-Packard Development Company, LP 1. Removed hpijs 1.0-1.0.2 workarounds, use hpijs 1.0.3 or higher. 2. Added krgb support. 02/21/05 David Suffield (gdevijs-krgb-1.1.patch) 1. Fixed segfault issue with 1-bit color space. 2. Fixed z-order issue with colored text on black rectangle. 02/22/06 David Suffield (gdevijs-krgb-1.2.patch) 1. Fixed krgb buffer overflow issue with out-of-band data in fill_rectangle and copy_mono. This buffer overflow condition occurred with fullbleed print jobs that had k-band images. 2. Added Dan Coby (artifex) fix for gsijs_read_string_malloc gs_free *str memory leak. 06/02/06 David Suffield (gdevijs-krgb-1.3.patch) 1. Revisited the krgb buffer overflow issue with out-of-band data in fill_rectangle and copy_mono. Changed the fill_rectangle and copy_mono to an inner loop buffer check instead of a outer loop x/y extent check. 2. As requested by Ralph Giles, added K 1-bit and 8-bit support for krgb, but only 1-bit is implemented for now. KRGB definition: 1. K=1-bit or 8-bit black plane, RGB=24 bit color raster. 2. K-plane will only contain objects that are black text and black line drawings. 3. RGB raster will not contain K-plane objects. 4. K resolution and RGB resolution will be equal. 5. K-plane will be byte aligned. 6. K-plane 1-bit definition; 1=black, 0=nothing (KRGB). 7. K-plane 8-bit definition; 255=black, 0=nothing (KxRGB). 1/15/08 David Suffield (gdevijs-krgb-1.5.patch) 1. Added checks for null forward device in the graphic procedures. 2. Corrected the "force banding" code in gsijs_open. Needed for small images (IE: hagaki in landscape). ## Files: devices/gdevphex.c HISTORY ~~~~~~~ 8 June 1999 Zolt�n K�csi (aka Kocsonya) zoltan@bendor.com.au Initial revision. No shingling, depletion. Colour only. Dither matrix is blatantly copied from gslib.c. 17 April 2000 Zolt�n K�csi After much play worked out a reasonably simple colour mapping that gives fairly good results. It has some very hairy things in it but ot seems to work reasonably well on a variety of natural as well as artificial images. LEGALISE ~~~~~~~~ The usual disclaimer applies, neither me (Zolt�n K�csi) nor Bendor Research Pty. Ltd. assume any liability whatsoever in relation to events arising out of or related to the use of the software or the included documentation in any form, way or purpose. This software is not guaranteed to work, you get it "as is" and use it for your own risk. This code has been donated to Aladdin Enterprises, see their license for details. CREDIT ~~~~~~ This driver was written from scratch, however, I have used the HP/BJ driver very heavily as a reference (GhostScript's documentation needs some working :-). In addition, I got some help in understanding the more arcane features of the printer by digging into the colour Epson driver and its documentation (documentation for the Photo EX did not exist). I thank to the authors of these drivers and the related docs. I do also hereby express my despising Epson, Inc. who try to enlarge Microsoft's monopoly by witholding programming information about such a commodity item as a printer. KNOWN BUGS/LIMITATIONS ~~~~~~~~~~~~~~~~~~~~~~ - Monochrome driver is not finished yet - The driver is not optimised for speed - The driver does not support TIFF compression - Shingling and depletion is not implemented - The colour correction and ink transfer curve are hardcoded - The dither matrix is straight stolen from Ghostscript - The alternative error diffusion included but does not work (yet) I plan to attend these issues later, however, I don't promise any timeframe for I have a lot else to do for bread & butter too. PREFACE ~~~~~~~ The Epson Stylus Photo EX is a colour ink-jet printer. It can handle papers up to A3. It uses 6 inks, black in one cartridge and cyan, magenta, yellow, light cyan and light magenta in an other cartridge. The head has 32 nozzles, with 1/90" spacing. The maximal resolution is 1440 dpi horizontal 720 dpi vertical. In 720x720 and 360x360 dpi it supports microweave. To achieve 1440x720 you must use software weaving. It has only one built-in font, namely 12pt Courier; the printer in general havily relies on the driver software. It comes with (what else ?) Windows 9x and Mac drivers. The printer uses the ESC/P Raster protocol. This protocol is somewhat similar to the ESC/P2 one. Initially Epson refused to give any info about it. Later (unfortunately after I had already spent lot of time to reverse engineer it) they released its definition. It could be found on their website (http://www.ercipd.com/isv/level1/6clr_98b.pdf). Alas, they removed it, so at the moment I do not know about any existing docs of the printer. There are still a few commands which are not covered by the docs and for example the Windows driver uses them. There are others which are in the docs, saying that you can find them in other docs but you can't. Fortunately, these commands apparently have no effect on the printing process so this driver simply ignores them. Tricky business. By the way, my personal experience is that Epson tech support is a joke, or in Usenet lingvo it sucks big time - they know absolutely nothing about the product they supposed to support. Epson's webpage contains false info as well (they state that the Photo EX uses ESC/P2, which is simply not true). This driver should in theory support the Stylus 700 and the Stylus Photo as well but I have not tested it on them. If you think that you can get some useful info from me above of what you can find below, feel free to email me at zoltan@bendor.com.au. If you enhance the driver or find a bug *please* send me info about it. DRIVER ~~~~~~ The driver was written under Ghostscript 5.10. This file should contain two drivers, one for colour mode and one for B&W. The devices are "photoex" and "photoexm". The mono device driver is catered for (that is, the rendering part knows how to render for B&W) but it is not finished yet (no device structure and gray colour mapping procedures) mainly because all my B&W needs are fairly well satisfied by our laser printer. The driver features the following: Supported resolutions 360x360 Y weaving (not that micro :-) by the printer 720x720 Y microweave by the driver (quicker than the printer) 1440x720 Y and X microweave by the driver Resolutions other than these will result in a rangecheck error. Papersize: Whatever Ghostscript supports. The printer docs say that if you load multiple sheets of transparencies into the tray you should at least have 30mm or 1.2" top margin. The driver always sets the smallest possible top margin (3mm or 0.12"), it's up to you to comply. In addition, the printer says that the bottom margin is at least 14mm or 0.54". I violate it by setting it to 0.5" or 12.7mm. 0.5" seems to be a common margin value for documents and you would hate it when the last line of your page gets printed on the top of the next sheet ... Options: -dDotSize=n n = 0 Let the driver choose a dotsize n = 1 small dots n = 2 more ink n = 3 ink flood n = 4 'super microdots' (whatever they are, they are *big*) The default is 0 which is n=1 for 1440x720, 2 for 720x720 and 3 for 360x360. Do not use large dots if you don't have to, you will soak the paper. If you print 720x720 on normal paper, try using n=1. -dRender=n n = 0 Floyd-Steinbeck error diffusion n = 1 Clustered dither n = 2 Bendor's error diffusion (experimental, do not use) Default is Floyd-Steinbeck error diffusion -dLeakage=nn nn is between 0 and 25. It only effects Bendor's error diffusion. It sets the percentage of the error which is left to 'leak', that is it is the coefficient of an exponential decay of the error. Experiments show that it can be beneficial on image quality. Default is 0 (no leakage). -dSplash=nn nn is between 0 and 100. It only affects Bendor's error diffusion. The ED routine tries to take the increase of dot diameter on certain paper types into account. It sets the percentage of the ink dot size increase as it splashes onto the paper and spreads. 0 means no splashing, 100 means that the dot is twice as large as it should be. Default is 0. -dBinhibit=n If n is 1, then if black ink is deposited to a pixel, it will inhibit the deposition of any other ink to the same pixel. If 0, black ink may be deposited together with other inks. Default is on (1). ESC/P RASTER DOCS ~~~~~~~~~~~~~~~~~ The parts of the ESC/P Raster protocol which I've managed to decipher, and which are actually used in this driver can be found below. nn, mm, xx, etc. represent a single byte with a binary value in it. nnnn, xxxx etc. represent a 16-bit binary number, sent in two bytes, in little endian order (low byte first). 2-digit numbers are a single byte in hex. Other chars are themselves. Quite a few commands are identical to the ESC/P2 commands, these are marked with (P2). ESC @ (P2) Resets the printer. ESC ( U 01 00 nn (P2) Sets the unit to 3600/nn dpi. Note that 1440 can not be set ! ESC ( C 02 00 nnnn (P2) Sets the page (paper) length to nnnn units ESC ( c 04 00 bbbb tttt (P2) Sets the top margin to tttt units, the bottom margin to bbbb units. The bottom margin is measured from the top of the page not from the bottom of the page ! ESC U nn (P2) Unidirectional printing nn 00 off 01 on 30 off (this is ASCII 0) 31 on (this is ASCII 1) ESC ( i 01 00 nn (P2) Microweave nn 00 off 01 on 30 off (this is ASCII 0) 31 on (this is ASCII 1) Turns microweave on for 720x720 dpi printing. ESC r nn (P2) Select colour nn 01 Cyan 02 Magenta 04 Yellow 08 Black ESC ( G 01 00 nn (P2) Selects graphics mode: nn 00 Off 01 On 30 Off 31 On ESC ( v 02 00 dddd (P2) Advance the paper by dddd units defined by ESC ( U ESC . cc vv hh nn mmmm (P2) Sends graphics data to the printer. cc Encoding mode 00 Raw data 01 Run-length encoded data vv Vertical resolution 28 90 dpi *interleave* 14 180 dpi *interleave* 0a 360 dpi 05 720 dpi hh Horizontal resolution 0a 360 dpi 05 720 dpi nn Number of nozzles It should be set to 32 (normal printing) or 1 (microweave) mmmm Number of collumns of data (not number of data bytes !) The data should contain as many bytes as needed to fill the mmmm * nn pixels. Data is presented horizontally, that is, the bits of a byte will be represented by eight pixels in a row. If the number of collumns is not an integer multiple of eight, then some bits from the last byte belonging to the row will be discarded and the next row starts on a byte boundary. If a bit in a byte is '1' ink is deposited, if '0' not. The leftmost pixel is represented by the MSB, rightmost by LSB. In case of raw data that's about it. In case of run-length encoded data, the following is done: The first byte is a counter. If the counter is <= 127 then the following counter+1 bytes are uncompressed data. If the counter is >= 128 then the following single byte should be repeated 257-counter times. There are resolution restrictions: 360x360 nozzle= 1 microweave on 360x360 nozzle=32 microweave off 720x 90 nozzle=32 microweave off 720x720 nozzle= 1 microweave on Other combinations are not supported. ESC ( e 02 00 00 nn Sets the amount of ink spat onto the paper. nn 01 microdots (faint printing) 02 normal dots (not so faint printing) 03 double dots (full inking) 04 super microdots (ink is continuously dripping :-) Values other than that have apparently no effect. ESC ( K 02 00 xxxx This command is sent by the Windows driver but it is not used in the Epson test images. I have not found it having any effect whatsoever. The driver does not use it. The Epson docs don't mention it. ESC ( r 02 00 nn mm Selects the ink according to this: nn mm 00 00 black 00 01 magenta 00 02 cyan 00 04 yellow 01 01 light magenta 01 02 light yellow ESC ( \ 04 00 xxxx llll Horizontal positioning of the head. Moves the head to the position llll times 1/xxxx inches from the left margin. On the example images xxxx was always set to 1440. I tried other values in which case the command was ignored, so stick to 1440. ESC ( R ll 00 00 xxxx nn .. nn ESC 00 00 00 This is supposedly sets the printer into 'remote' mode. ll is the length of the + 1 which consists of ASCII characters (e.g. REMOTE1). is a two-character code, for example "SN" or "LD". xxxx is the number of bytes (nn -s) which will follow. After that there's either a new xxxx nn .. nn sequence or the ESC 00 00 00. I have absolutely no idea about this command and the Epson document says that it's in an other document. It's not in that other one. The driver does not use it. The printer does not miss it. The Epson test images use it and the Windows driver uses it too. They send different -s and different values for identical -s. Go figure. DRIVER INTERNALS ~~~~~~~~~~~~~~~~ First, some comments. Anything I know about the printer can be found above. Anything I know about Ghostscript internals (not much) can be found in the comments in the code. I do not believe in the 'it was hard to write, it should be hard to read' principle since I once had to understand my own code. Therefore, the code has lots of comments in it, sometimes apparently superfluous but I find it easier to understand the program 6 months later that way. I did not follow the Ghostscript or GNU style guide, I write code the way I like it - I'm a lazy dog :-) I use hard tabs at every 4th position, I use a *lot* of whitespace (as recommended by K&R in their original C book) and I have a formatting style similar to the K&R with the notable exception that I do not indent variable declarations that follow the curly. Anyway, you can run your favourite C formatter through the source. In addition to the above, the driver is not hand-optimised, it assumes that it is compiled with a good optimising compiler which will handle common subexpression ellimination, move loop independent code out of the loop, transform repeated array accesses to cached pointer arithmetics and so on. The code is much more readable this way and gcc is fairly good at doing optimisation. Feel free to hand-optimise it. So, the driver works the following way: When it has to render a page, first it sets up the basics such as margins and papersize and alike. Line scheduling --------------- Then it calls the line scheduler. To see why do we have a scheduler, you have to understand weaving. The printer head has 32 nozzles which are spaced at 8 line intervals. Therefore, it prints 32 lines at a time but they are distributed over a 256 line high area. Obviously, if you want to print all the lines under the head, you should pass over the paper 8 times. You can do it the obvious way: Print, move down by one line, print ... repeat 8 times then move down by 256 - 8 lines and start again. Unfortunately, this would result in stripy images due to the differences between individual nozzles. Lines 0-7 would be printed by nozzle 0, 8-15 by nozzle 1 and so on. An 8 line band has a visible height, so difference between nozzles will cause 8-line high bands to appear on the image. The solution is 'microweave', a funny way of doing interlaced printing. Instead of moving down 1, 1, 1, 1, .. 1, 248, 1, 1 .. you move down a constant, larger amount (called a band). This amount must be chosen in such a way that each line will be printed and preferably it will be printed only once. Let for example the move down amount (the band) be 31. Let's say, in band N nozzle 31 is over line 300, in which case nozzle 30 is over line 292. We move the head down by 31 lines, then line 299 will be under nozzle 27 and line 307 under nozzle 28. Next move, nozzle 23 will print line 298 and nozzle 24 line 306, then 19/297 20/305, 15/296 16/304, 11/295 12/303, 7/294 8/302, 3/293 4/302, 0/292 3/301 which covers the entire area between 292 and 307. The same will apply to any other area on the page. Also note that adjacent lines are always printed by different nozzles. You probably have realised that line 292 was printed in the first pass and in the last one. In this case, of course, the line must not be printed twice, one or the other pass should not deliver data to the nozzle which passes over this line. Now there's a twist. When the horizontal resolution is 1440 dpi you have to print each line twice, first depositing all even pixels then offset the head by 1/1440" and deposit all odd pixels (the printer can only print with 720 dpi but you can initially position the head with 1440 dpi resolution). You could do it the easy way, passing over the same area twice but you can do better. You can find a band size which will result each line being printed twice. Instead of suppressing the double print, you use this mechanism to print the odd and the even pixels. Now if you print one line's odd pixels, obviously, all lines belonging to the 31 other nozzles of the head will have their odd pixels printed too. Therefore, you have to keep track which lines have been printed in which phase and try to find an odd-even phase assignment to bands so that each line has both groups printed (and each group only once). The added bonus is that even the same line will be printed by two different nozzles thus effects of nozzle differences can be decreased further. The whole issue is further complicated with the beginning of the page and the end of the page. When you print the first 8 lines you *must* use the print, down by 1, print ... method but then you have to switch over to the banding method. To do it well, you should minimise the number of lines which are printed out of band. This optimisation is not complex but not trivial either. Our solution is to employ precalculated tables for the first 8 lines. (Epson's solution is not to print the 'problematic' lines at all - they warn you in the manual that at the top and bottom you may have "slight distortions". Analyzing their output reveals the reason ... ). The bottom is different. It is easier, because you are already banding, so you can't screw up the rest of the image. On the other hand, you can't use tables because these tables would depend on the page height which you don't know a priori. Our solution is to switch to single line mode when we can not do the banding any more and try to finish the page with the minimal amount of passes. So, first the driver calls the scheduler which returns a list of lines which it dispatched to print in the current band. Then the driver checks if it has all these lines halftoned. Since the head covers an area of 256 lines, we have to buffer that many lines (actually, 256-7). As the head moves down, we can flush lines which it has left and halftone the new ones. Colour transformations ---------------------- The next important issue is the colour transformation. The reason for doing this is that the ink is not perfect. Ideally, you have 3 inks, namely cyan magenta and yellow. Mixing these you can have all colours. Now the inks are not pure, that is the cyan ink contains some particles that have a colour other than the ideal cyan and so on. In addition, the inks are not exactly cyan, magenta and yellow. Therefore, you have to do some transformations that will map the ideal C, M, Y values to amounts of ink of the real kind. You also have a black ink. Although in theory mixing C, M, Y in equal amount will give you black, it doesn't exactly work that way. In addition, black ink is cheap compared to the colour so if you can use black, you rather use that. On top of all that, because of other effects (ink splashing on the paper and things like that) you have to apply some non-linear functions to get reasonable colours. Halftoning ---------- The driver has different halftoning methods. There is the classic Floyd-Stenberg error diffusion. There is an other ED, of which I'm hammering the matrix. The matrix is larger than the FS one and IMHO results in somewhat lower halftoning noise. However, it completely screws up some flat colours so don't use it. There is also dithering, which is quick but noisy. For any halftoning method, it is assumed that the haltoning can be done on the 4 colours (CMYK) separately and all interdependencies are already handled. It is an optimistic assumption, however, close enough. You can add any halftoning method you like by writing a halftoner module. A halftoner module consists of 4 functions: - Init, which is called before halftoning starts. - Threshold, which should return a number which tells the driver how many empty lines needed before halftoning can be stopped (i.e. for how many lines will a line affect halftoning of subsequent lines). - Halftone, which halftones one colour of one line - EndOfLine which is called when all colours of a scanline are halftoned, you can do your housekeeping functions here. For example, in the case of ED init() clears the error buffers, threshold() returns ~5 (5 empty lines are enough for the accumulated error to go to almost zero), endofline() shuffles the error buffers and halftone() itself does the error diffusion. In case of dithering, threshold is 0 (dithering has no memory), init and endofline do nothing and halftone simply dithers a line. A few options are available for all halftoners: - the black is rendered first. Now this black line is presented to all further passes. If a pixel is painted black, there's no point to deposit any other colour on it, even if the halftoning itself would do. Therefore, an already set black pixel can block the halftoning of colours for that pixel. Whether this thing is activated or not is a command line switch (default is on). Your halftoner may choose to ignore this flag. - the intensity value of the light-cyan and light-magenta ink can be set from the command line. My experience is that the default 127 is good enough, but you can override it if you want to. Apart from these features, each halftoner can have all sorts of other switches. Currently there are switches for the Bendor ED, see the comments in front of the BendorLine() function to see what they are. Postprocessing -------------- After lines are halftoned, they are packed into bitstreams. If you use 1440x720 then the 2 passes for the horizontal interleave are separated. Postprocessing should also do the shingling/depletion, but it is not yet done. Compression ----------- The driver, before it sends the data to the printer, compresses it using RLE (run-length encoding) compression. It is not very effective but still more than nothing. I have not yet ventured into using TIFF as output format, it may come later. ## Files: devices/gdevpppm.c Copyright (C) 2024 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: devices/gdevurf.c Copyright (C) 2001-2024 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 1305 Grant Avenue - Suite 200, Novato, CA 94945, U.S.A., +1(415)492-9861, for further information. ## Files: devices/vector/gdevpdtf.c See the OpenType specification, "The 'OS/2' and Windows Metrics Table" for details of the fstype parameter. This is a bitfield, currently we forbid embedding of fonts with these bits set: bit 1 0x0002 Fonts that have only this bit set must not be modified, embedded or exchanged in any manner. bit 9 0x0200 Bitmap embedding only. Note for Restricted License embedding (bit 1), this must be the only level of embedding selected (see the OpenType spec). ## Files: devices/vector/gdevpsft.c We should also preserve the licensed embedding rights, to prevent 'laundering' a TrueType font. These can be non-zero even when embedding is permitted. ## Files: doc/src/conf.py If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. ## Files: extract/src/memento.c Copyright (C) 2009-2020 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file COPYING in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: extract/src/memento.h Copyright (C) 2009-2018 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file COPYING in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: freetype/autogen.sh Copyright (C) 2005-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/builds/amiga/include/config/ftconfig.h freetype/builds/amiga/include/config/ftmodule.h freetype/builds/amiga/src/base/ftsystem.c freetype/builds/mac/ftmac.c freetype/builds/vms/ftsystem.c license, LICENSE.TXT. By continuing to use, modify, or distribute ## Files: freetype/builds/amiga/include/config/ftconfig.h freetype/builds/amiga/include/config/ftmodule.h Copyright (C) 2005-2023 by ## Files: freetype/builds/amiga/src/base/ftdebug.c ftdebug.c Debugging and logging component for amiga (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, Werner Lemberg, and Detlef Wuerkner. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/builds/amiga/src/base/ftsystem.c freetype/builds/mac/ftmac.c freetype/builds/vms/ftsystem.c Copyright (C) 1996-2023 by ## Files: freetype/builds/cmake/testbuild.sh Copyright (C) 2015-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/builds/meson/extract_freetype_version.py freetype/builds/meson/extract_libtool_version.py freetype/builds/meson/generate_reference_docs.py freetype/builds/meson/parse_modules_cfg.py freetype/builds/meson/process_ftoption_h.py Copyright (C) 2020-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/builds/unix/ftsystem.c ftsystem.c Unix-specific FreeType low-level system interface (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/builds/unix/ltmain.sh ijs/ltmain.sh jpeg/ltmain.sh lcms2mt/ltmain.sh libpng/ltmain.sh tiff/config/ltmain.sh GNU Libtool is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. As a special exception to the GNU General Public License, if you distribute this file as part of a program or library that is built using GNU Libtool, you may include this file under the same distribution terms that you use for the rest of that program. GNU Libtool is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . ## Files: freetype/builds/unix/ltmain.sh libpng/ltmain.sh Copyright (C) 1996-2019, 2021-2022 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ## Files: freetype/builds/unix/ltmain.sh libpng/ltmain.sh This is free software. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Copyright (C) 2004-2019, 2021 Bootstrap Authors This file is dual licensed under the terms of the MIT license , and GPL version 2 or later . You must apply one of these licenses when using or redistributing this software or any of the files within it. See the URLs above, or the file `LICENSE` included in the Bootstrap distribution for the full license texts. ## Files: freetype/builds/unix/ltmain.sh libpng/ltmain.sh This is free software. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Copyright (C) 2010-2019, 2021 Bootstrap Authors This file is dual licensed under the terms of the MIT license , and GPL version 2 or later . You must apply one of these licenses when using or redistributing this software or any of the files within it. See the URLs above, or the file `LICENSE` included in the Bootstrap distribution for the full license texts. ## Files: freetype/builds/unix/ltmain.sh libpng/ltmain.sh This file is a library for parsing options in your shell scripts along with assorted other useful supporting features that you can make use of too. For the simplest scripts you might need only: #!/bin/sh . relative/path/to/funclib.sh . relative/path/to/options-parser scriptversion=1.0 func_options ${1+"$@"} eval set dummy "$func_options_result"; shift ...rest of your script... In order for the '--version' option to work, you will need to have a suitably formatted comment like the one at the top of this file starting with '# Written by ' and ending with '# Copyright'. For '-h' and '--help' to work, you will also need a one line description of your script's purpose in a comment directly above the '# Written by ' line, like the one at the top of this file. The default options also support '--debug', which will turn on shell execution tracing (see the comment above debug_cmd below for another use), and '--verbose' and the func_verbose function to allow your script to display verbose messages only when your user has specified '--verbose'. After sourcing this file, you can plug in processing for additional options by amending the variables from the 'Configuration' section below, and following the instructions in the 'Option parsing' section further down. ## Files: freetype/builds/unix/ltmain.sh libpng/ltmain.sh func_version ------------ Echo version message to standard output and exit. The version message is extracted from the calling file's header comments, with leading '# ' stripped: 1. First display the progname and version 2. Followed by the header comment line matching /^# Written by / 3. Then a blank line followed by the first following line matching /^# Copyright / 4. Immediately followed by any lines between the previous matches, except lines preceding the intervening completely blank line. For example, see the header comments of this file. ## Files: freetype/builds/vms/ftconfig.h ftconfig.h VMS-specific configuration file (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/builds/wince/ftdebug.c ftdebug.c Debugging and logging component for WinCE (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/builds/windows/ftdebug.c ftdebug.c Debugging and logging component for Win32 (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/builds/windows/ftsystem.c ftsystem.c Windows-specific FreeType low-level system interface (body). Copyright (C) 2021-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/devel/ft2build.h ft2build.h FreeType 2 build and setup macros (development version). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/devel/ftoption.h ftoption.h (for development) User-selectable configuration macros (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/devel/ftoption.h freetype/include/freetype/config/ftoption.h Define `TT_CONFIG_OPTION_SFNT_NAMES` if your applications need to access the internal name table in a SFNT-based format like TrueType or OpenType. The name table contains various strings used to describe the font, like family name, copyright, version, etc. It does not contain any glyph name though. Accessing SFNT names is done through the functions declared in `ftsnames.h`. ## Files: freetype/docs/reference/assets/javascripts/bundle.82b56eb2.min.js ! ***************************************************************************** Copyright (c) Microsoft Corporation. Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted. THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: freetype/docs/reference/assets/javascripts/bundle.82b56eb2.min.js ! clipboard.js v2.0.8 https://clipboardjs.com/ Licensed MIT © Zeno Rocha ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.da.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.de.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.du.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.es.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.fi.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.fr.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.hu.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.it.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.nl.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.no.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.pt.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.ro.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.ru.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.sv.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.tr.min.js ! based on Snowball JavaScript Library v0.3 http://code.google.com/p/urim/ http://snowball.tartarus.org/ Copyright 2010, Oleg Mazko http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.da.min.js ! Lunr languages, `Danish` language https://github.com/MihaiValentin/lunr-languages Copyright 2014, Mihai Valentin http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.de.min.js ! Lunr languages, `German` language https://github.com/MihaiValentin/lunr-languages Copyright 2014, Mihai Valentin http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.du.min.js freetype/docs/reference/assets/javascripts/lunr/min/lunr.nl.min.js ! Lunr languages, `Dutch` language https://github.com/MihaiValentin/lunr-languages Copyright 2014, Mihai Valentin http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.es.min.js ! Lunr languages, `Spanish` language https://github.com/MihaiValentin/lunr-languages Copyright 2014, Mihai Valentin http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.fi.min.js ! Lunr languages, `Finnish` language https://github.com/MihaiValentin/lunr-languages Copyright 2014, Mihai Valentin http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.fr.min.js ! Lunr languages, `French` language https://github.com/MihaiValentin/lunr-languages Copyright 2014, Mihai Valentin http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.hu.min.js ! Lunr languages, `Hungarian` language https://github.com/MihaiValentin/lunr-languages Copyright 2014, Mihai Valentin http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.it.min.js ! Lunr languages, `Italian` language https://github.com/MihaiValentin/lunr-languages Copyright 2014, Mihai Valentin http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.no.min.js ! Lunr languages, `Norwegian` language https://github.com/MihaiValentin/lunr-languages Copyright 2014, Mihai Valentin http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.pt.min.js ! Lunr languages, `Portuguese` language https://github.com/MihaiValentin/lunr-languages Copyright 2014, Mihai Valentin http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.ro.min.js ! Lunr languages, `Romanian` language https://github.com/MihaiValentin/lunr-languages Copyright 2014, Mihai Valentin http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.ru.min.js ! Lunr languages, `Russian` language https://github.com/MihaiValentin/lunr-languages Copyright 2014, Mihai Valentin http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.sv.min.js ! Lunr languages, `Swedish` language https://github.com/MihaiValentin/lunr-languages Copyright 2014, Mihai Valentin http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/lunr/min/lunr.tr.min.js ! Lunr languages, `Turkish` language https://github.com/MihaiValentin/lunr-languages Copyright 2014, Mihai Valentin http://www.mozilla.org/MPL/ ## Files: freetype/docs/reference/assets/javascripts/workers/search.477d984a.min.js lunr - http://lunrjs.com - A bit like Solr, but much smaller and not as bright - 2.3.9 Copyright (C) 2020 Oliver Nightingale @license MIT ## Files: freetype/docs/reference/assets/javascripts/workers/search.477d984a.min.js ! lunr.utils Copyright (C) 2020 Oliver Nightingale ## Files: freetype/docs/reference/assets/javascripts/workers/search.477d984a.min.js ! lunr.Set Copyright (C) 2020 Oliver Nightingale ## Files: freetype/docs/reference/assets/javascripts/workers/search.477d984a.min.js ! lunr.tokenizer Copyright (C) 2020 Oliver Nightingale ## Files: freetype/docs/reference/assets/javascripts/workers/search.477d984a.min.js ! lunr.Pipeline Copyright (C) 2020 Oliver Nightingale ## Files: freetype/docs/reference/assets/javascripts/workers/search.477d984a.min.js ! lunr.Vector Copyright (C) 2020 Oliver Nightingale ## Files: freetype/docs/reference/assets/javascripts/workers/search.477d984a.min.js ! lunr.stemmer Copyright (C) 2020 Oliver Nightingale Includes code from - http://tartarus.org/~martin/PorterStemmer/js.txt ## Files: freetype/docs/reference/assets/javascripts/workers/search.477d984a.min.js ! lunr.stopWordFilter Copyright (C) 2020 Oliver Nightingale ## Files: freetype/docs/reference/assets/javascripts/workers/search.477d984a.min.js ! lunr.trimmer Copyright (C) 2020 Oliver Nightingale ## Files: freetype/docs/reference/assets/javascripts/workers/search.477d984a.min.js ! lunr.TokenSet Copyright (C) 2020 Oliver Nightingale ## Files: freetype/docs/reference/assets/javascripts/workers/search.477d984a.min.js ! lunr.Index Copyright (C) 2020 Oliver Nightingale ## Files: freetype/docs/reference/assets/javascripts/workers/search.477d984a.min.js ! lunr.Builder Copyright (C) 2020 Oliver Nightingale ## Files: freetype/docs/reference/assets/javascripts/workers/search.477d984a.min.js ! escape-html Copyright(c) 2012-2013 TJ Holowaychuk Copyright(c) 2015 Andreas Lubbe Copyright(c) 2015 Tiancheng "Timothy" Gu MIT Licensed ## Files: freetype/include/dlg/dlg.h freetype/include/dlg/output.h freetype/src/dlg/dlg.c Copyright (c) 2019 nyorain Distributed under the Boost Software License, Version 1.0. See accompanying file LICENSE or copy at http://www.boost.org/LICENSE_1_0.txt ## Files: freetype/include/freetype/config/ftconfig.h ftconfig.h ANSI-specific configuration file (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/config/ftheader.h ftheader.h Build macros of the FreeType 2 library. Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/config/ftoption.h ftoption.h User-selectable configuration macros (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/config/ftstdlib.h ftstdlib.h ANSI-specific library and header configuration file (specification only). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/config/integer-types.h config/integer-types.h FreeType integer types definitions. Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/config/mac-support.h config/mac-support.h Mac/OS X support configuration header. Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/config/public-macros.h config/public-macros.h Define a set of compiler macros used in public FreeType headers. Copyright (C) 2020-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/freetype.h freetype.h FreeType high-level API and common types (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/freetype.h @enum: FT_FSTYPE_XXX @description: A list of bit flags used in the `fsType` field of the OS/2 table in a TrueType or OpenType font and the `FSType` entry in a PostScript font. These bit flags are returned by @FT_Get_FSType_Flags; they inform client applications of embedding and subsetting restrictions associated with a font. See https://www.adobe.com/content/dam/Adobe/en/devnet/acrobat/pdfs/FontPolicies.pdf for more details. @values: FT_FSTYPE_INSTALLABLE_EMBEDDING :: Fonts with no fsType bit set may be embedded and permanently installed on the remote system by an application. FT_FSTYPE_RESTRICTED_LICENSE_EMBEDDING :: Fonts that have only this bit set must not be modified, embedded or exchanged in any manner without first obtaining permission of the font software copyright owner. FT_FSTYPE_PREVIEW_AND_PRINT_EMBEDDING :: The font may be embedded and temporarily loaded on the remote system. Documents containing Preview & Print fonts must be opened 'read-only'; no edits can be applied to the document. FT_FSTYPE_EDITABLE_EMBEDDING :: The font may be embedded but must only be installed temporarily on other systems. In contrast to Preview & Print fonts, documents containing editable fonts may be opened for reading, editing is permitted, and changes may be saved. FT_FSTYPE_NO_SUBSETTING :: The font may not be subsetted prior to embedding. FT_FSTYPE_BITMAP_EMBEDDING_ONLY :: Only bitmaps contained in the font may be embedded; no outline data may be embedded. If there are no bitmaps available in the font, then the font is unembeddable. @note: The flags are ORed together, thus more than a single value can be returned. While the `fsType` flags can indicate that a font may be embedded, a license with the font vendor may be separately required to use the font in this way. ## Files: freetype/include/freetype/ftadvanc.h ftadvanc.h Quick computation of advance widths (specification only). Copyright (C) 2008-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftbbox.h ftbbox.h FreeType exact bbox computation (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftbdf.h ftbdf.h FreeType API for accessing BDF-specific strings (specification). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftbitmap.h ftbitmap.h FreeType utility functions for bitmaps (specification). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftbzip2.h ftbzip2.h Bzip2-compressed stream support. Copyright (C) 2010-2023 by Joel Klinghed. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftcache.h ftcache.h FreeType Cache subsystem (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftcid.h ftcid.h FreeType API for accessing CID font information (specification). Copyright (C) 2007-2023 by Dereg Clegg and Michael Toftdal. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftcolor.h ftcolor.h FreeType's glyph color management (specification). Copyright (C) 2018-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftdriver.h ftdriver.h FreeType API for controlling driver modules (specification only). Copyright (C) 2017-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/fterrdef.h fterrdef.h FreeType error codes (specification). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/fterrors.h fterrors.h FreeType error code handling (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftfntfmt.h ftfntfmt.h Support functions for font formats. Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftgasp.h ftgasp.h Access of TrueType's 'gasp' table (specification). Copyright (C) 2007-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftglyph.h ftglyph.h FreeType convenience functions to handle glyphs (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftgxval.h ftgxval.h FreeType API for validating TrueTypeGX/AAT tables (specification). Copyright (C) 2004-2023 by Masatake YAMATO, Redhat K.K, David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftgzip.h ftgzip.h Gzip-compressed stream support. Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftimage.h ftimage.h FreeType glyph image formats and default raster interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftincrem.h ftincrem.h FreeType incremental loading (specification). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftlcdfil.h ftlcdfil.h FreeType API for color filtering of subpixel bitmap glyphs (specification). Copyright (C) 2006-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftlist.h ftlist.h Generic list support for FreeType (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftlogging.h ftlogging.h Additional debugging APIs. Copyright (C) 2020-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftlzw.h ftlzw.h LZW-compressed stream support. Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftmac.h ftmac.h Additional Mac-specific API. Copyright (C) 1996-2023 by Just van Rossum, David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftmm.h ftmm.h FreeType Multiple Master font interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftmodapi.h ftmodapi.h FreeType modules public interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftmoderr.h ftmoderr.h FreeType module error offsets (specification). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftotval.h ftotval.h FreeType API for validating OpenType tables (specification). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftoutln.h ftoutln.h Support for the FT_Outline type used to store glyph shapes of most scalable font formats (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftparams.h ftparams.h FreeType API for possible FT_Parameter tags (specification only). Copyright (C) 2017-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftpfr.h ftpfr.h FreeType API for accessing PFR-specific data (specification only). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftrender.h ftrender.h FreeType renderer modules public interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftsizes.h ftsizes.h FreeType size objects management (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftsnames.h ftsnames.h Simple interface to access SFNT 'name' tables (which are used to hold font names, copyright info, notices, etc.) (specification). This is _not_ used to retrieve glyph names! Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftsnames.h @section: sfnt_names @title: SFNT Names @abstract: Access the names embedded in TrueType and OpenType files. @description: The TrueType and OpenType specifications allow the inclusion of a special names table ('name') in font files. This table contains textual (and internationalized) information regarding the font, like family name, copyright, version, etc. The definitions below are used to access them if available. Note that this has nothing to do with glyph names! ## Files: freetype/include/freetype/ftstroke.h ftstroke.h FreeType path stroker (specification). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftsynth.h ftsynth.h FreeType synthesizing code for emboldening and slanting (specification). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftsystem.h ftsystem.h FreeType low-level system interface definition (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/fttrigon.h fttrigon.h FreeType trigonometric functions (specification). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/fttypes.h fttypes.h FreeType simple types definitions (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ftwinfnt.h ftwinfnt.h FreeType API for accessing Windows fnt-specific data. Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/autohint.h autohint.h High-level 'autohint' module-specific interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/cffotypes.h cffotypes.h Basic OpenType/CFF object type definitions (specification). Copyright (C) 2017-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/cfftypes.h cfftypes.h Basic OpenType/CFF type definitions and interface (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/compiler-macros.h internal/compiler-macros.h Compiler-specific macro definitions used internally by FreeType. Copyright (C) 2020-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/ftcalc.h ftcalc.h Arithmetic computations (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/ftdebug.h ftdebug.h Debugging and logging component (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. IMPORTANT: A description of FreeType's debugging support can be found in 'docs/DEBUG.TXT'. Read it if you need to use or understand this code. ## Files: freetype/include/freetype/internal/ftdrv.h ftdrv.h FreeType internal font driver interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/ftgloadr.h ftgloadr.h The FreeType glyph loader (specification). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/ftmemory.h ftmemory.h The FreeType memory management macros (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/ftmmtypes.h ftmmtypes.h OpenType Variations type definitions for internal use with the multi-masters service (specification). Copyright (C) 2022-2023 by David Turner, Robert Wilhelm, Werner Lemberg, George Williams, and Dominik Röttsches. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/ftobjs.h ftobjs.h The FreeType private base classes (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/ftpsprop.h ftpsprop.h Get and set properties of PostScript drivers (specification). Copyright (C) 2017-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/ftrfork.h ftrfork.h Embedded resource forks accessor (specification). Copyright (C) 2004-2023 by Masatake YAMATO and Redhat K.K. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/ftserv.h ftserv.h The FreeType services (specification only). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/ftstream.h ftstream.h Stream handling (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/fttrace.h fttrace.h Tracing handling (specification only). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/ftvalid.h ftvalid.h FreeType validation support (specification). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/psaux.h psaux.h Auxiliary functions and data structures related to PostScript fonts (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/pshints.h pshints.h Interface to Postscript-specific (Type 1 and Type 2) hints recorders (specification only). These are used to support native T1/T2 hints in the 'type1', 'cid', and 'cff' font drivers. Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svbdf.h svbdf.h The FreeType BDF services (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svcfftl.h svcfftl.h The FreeType CFF tables loader service (specification). Copyright (C) 2017-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svcid.h svcid.h The FreeType CID font services (specification). Copyright (C) 2007-2023 by Derek Clegg and Michael Toftdal. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svfntfmt.h svfntfmt.h The FreeType font format service (specification only). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svgldict.h svgldict.h The FreeType glyph dictionary services (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svgxval.h svgxval.h FreeType API for validating TrueTypeGX/AAT tables (specification). Copyright (C) 2004-2023 by Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svkern.h svkern.h The FreeType Kerning service (specification). Copyright (C) 2006-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svmetric.h svmetric.h The FreeType services for metrics variations (specification). Copyright (C) 2016-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svmm.h svmm.h The FreeType Multiple Masters and GX var services (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, Werner Lemberg, and Dominik Röttsches. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svotval.h svotval.h The FreeType OpenType validation service (specification). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svpfr.h svpfr.h Internal PFR service functions (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svpostnm.h svpostnm.h The FreeType PostScript name services (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svprop.h svprop.h The FreeType property service (specification). Copyright (C) 2012-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svpscmap.h svpscmap.h The FreeType PostScript charmap service (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svpsinfo.h svpsinfo.h The FreeType PostScript info service (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svsfnt.h svsfnt.h The FreeType SFNT table loading service (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svttcmap.h svttcmap.h The FreeType TrueType/sfnt cmap extra information service. Copyright (C) 2003-2023 by Masatake YAMATO, Redhat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svtteng.h svtteng.h The FreeType TrueType engine query service (specification). Copyright (C) 2006-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svttglyf.h svttglyf.h The FreeType TrueType glyph service. Copyright (C) 2007-2023 by David Turner. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/services/svwinfnt.h svwinfnt.h The FreeType Windows FNT/FONT service (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/sfnt.h sfnt.h High-level 'sfnt' driver interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/svginterface.h svginterface.h Interface of ot-svg module (specification only). Copyright (C) 2022-2023 by David Turner, Robert Wilhelm, Werner Lemberg, and Moazin Khatti. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/t1types.h t1types.h Basic Type1/Type2 type definitions and interface (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/tttypes.h tttypes.h Basic SFNT/TrueType type definitions and interface (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/internal/tttypes.h @struct: TT_NameRec @description: A structure modeling TrueType name records. Name records are used to store important strings like family name, style name, copyright, etc. in _localized_ versions (i.e., language, encoding, etc). @fields: platformID :: The ID of the name's encoding platform. encodingID :: The platform-specific ID for the name's encoding. languageID :: The platform-specific ID for the name's language. nameID :: The ID specifying what kind of name this is. stringLength :: The length of the string in bytes. stringOffset :: The offset to the string in the 'name' table. string :: A pointer to the string's bytes. Note that these are usually UTF-16 encoded characters. ## Files: freetype/include/freetype/internal/wofftypes.h wofftypes.h Basic WOFF/WOFF2 type definitions and interface (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/otsvg.h otsvg.h Interface for OT-SVG support related things (specification). Copyright (C) 2022-2023 by David Turner, Robert Wilhelm, Werner Lemberg, and Moazin Khatti. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/t1tables.h t1tables.h Basic Type 1/Type 2 tables definitions and interface (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/ttnameid.h ttnameid.h TrueType name ID definitions (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/tttables.h tttables.h Basic SFNT/TrueType tables definitions and interface (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/freetype/tttags.h tttags.h Tags for TrueType and OpenType tables (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/include/ft2build.h ft2build.h FreeType 2 build and setup macros. Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afblue.c afblue.c Auto-fitter data for blue strings (body). Copyright (C) 2013-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afblue.h afblue.h Auto-fitter data for blue strings (specification). Copyright (C) 2013-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afcjk.c afcjk.c Auto-fitter hinting routines for CJK writing system (body). Copyright (C) 2006-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afcjk.h afcjk.h Auto-fitter hinting routines for CJK writing system (specification). Copyright (C) 2006-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afcover.h afcover.h Auto-fitter coverages (specification only). Copyright (C) 2013-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afdummy.c afdummy.c Auto-fitter dummy routines to be used if no hinting should be performed (body). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afdummy.h afdummy.h Auto-fitter dummy routines to be used if no hinting should be performed (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/aferrors.h aferrors.h Autofitter error codes (specification only). Copyright (C) 2005-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afglobal.c afglobal.c Auto-fitter routines to compute global hinting values (body). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afglobal.h afglobal.h Auto-fitter routines to compute global hinting values (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afhints.c afhints.c Auto-fitter hinting routines (body). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afhints.h afhints.h Auto-fitter hinting routines (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afindic.c afindic.c Auto-fitter hinting routines for Indic writing system (body). Copyright (C) 2007-2023 by Rahul Bhalerao , . This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afindic.h afindic.h Auto-fitter hinting routines for Indic writing system (specification). Copyright (C) 2007-2023 by Rahul Bhalerao , . This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/aflatin.c aflatin.c Auto-fitter hinting routines for latin writing system (body). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/aflatin.h aflatin.h Auto-fitter hinting routines for latin writing system (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afloader.c afloader.c Auto-fitter glyph loading routines (body). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afloader.h afloader.h Auto-fitter glyph loading routines (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afmodule.c afmodule.c Auto-fitter module implementation (body). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afmodule.h afmodule.h Auto-fitter module implementation (specification). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afranges.c afranges.c Auto-fitter Unicode script ranges (body). Copyright (C) 2013-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afranges.h afranges.h Auto-fitter Unicode script ranges (specification). Copyright (C) 2013-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afscript.h afscript.h Auto-fitter scripts (specification only). Copyright (C) 2013-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afshaper.c afshaper.c HarfBuzz interface for accessing OpenType features (body). Copyright (C) 2013-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afshaper.h afshaper.h HarfBuzz interface for accessing OpenType features (specification). Copyright (C) 2013-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afstyles.h afstyles.h Auto-fitter styles (specification only). Copyright (C) 2013-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/aftypes.h aftypes.h Auto-fitter types (specification only). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afws-decl.h afws-decl.h Auto-fitter writing system declarations (specification only). Copyright (C) 2013-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/afws-iter.h afws-iter.h Auto-fitter writing systems iterator (specification only). Copyright (C) 2013-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/autofit.c autofit.c Auto-fitter module (body). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/autofit/ft-hb.c freetype/src/autofit/ft-hb.h Copyright © 2009, 2023 Red Hat, Inc. Copyright © 2015 Google, Inc. Permission is hereby granted, without written agreement and without license or royalty fees, to use, copy, modify, and distribute this software and its documentation for any purpose, provided that the above copyright notice and the following two paragraphs appear in all copies of this software. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. Red Hat Author(s): Behdad Esfahbod, Matthias Clasen Google Author(s): Behdad Esfahbod ## Files: freetype/src/base/ftadvanc.c ftadvanc.c Quick computation of advance widths (body). Copyright (C) 2008-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftbase.c ftbase.c Single object library component (body only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftbase.h ftbase.h Private functions used in the `base' module (specification). Copyright (C) 2008-2023 by David Turner, Robert Wilhelm, Werner Lemberg, and suzuki toshiya. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftbbox.c ftbbox.c FreeType bbox computation (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftbdf.c ftbdf.c FreeType API for accessing BDF-specific strings (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftbitmap.c ftbitmap.c FreeType utility functions for bitmaps (body). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftcalc.c ftcalc.c Arithmetic computations (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftcid.c ftcid.c FreeType API for accessing CID font information. Copyright (C) 2007-2023 by Derek Clegg and Michael Toftdal. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftcolor.c ftcolor.c FreeType's glyph color management (body). Copyright (C) 2018-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftdbgmem.c ftdbgmem.c Memory debugger (body). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftdebug.c ftdebug.c Debugging and logging component (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/fterrors.c fterrors.c FreeType API for error code handling. Copyright (C) 2018-2023 by Armin Hasitzka, David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftfntfmt.c ftfntfmt.c FreeType utility file for font formats (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftfstype.c ftfstype.c FreeType utility file to access FSType data (body). Copyright (C) 2008-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftgasp.c ftgasp.c Access of TrueType's `gasp' table (body). Copyright (C) 2007-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftgloadr.c ftgloadr.c The FreeType glyph loader (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftglyph.c ftglyph.c FreeType convenience functions to handle glyphs (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftgxval.c ftgxval.c FreeType API for validating TrueTypeGX/AAT tables (body). Copyright (C) 2004-2023 by Masatake YAMATO, Redhat K.K, David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftinit.c ftinit.c FreeType initialization layer (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftlcdfil.c ftlcdfil.c FreeType API for color filtering of subpixel bitmap glyphs (body). Copyright (C) 2006-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftmac.c ftmac.c Mac FOND support. Written by just@letterror.com. Heavily modified by mpsuzuki, George Williams, and Sean McBride. This file is for Mac OS X only; see builds/mac/ftoldmac.c for classic platforms built by MPW. Copyright (C) 1996-2023 by Just van Rossum, David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftmm.c ftmm.c Multiple Master font support (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftobjs.c ftobjs.c The FreeType private base classes (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftotval.c ftotval.c FreeType API for validating OpenType tables (body). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftoutln.c ftoutln.c FreeType outline management (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftpatent.c ftpatent.c FreeType API for checking patented TrueType bytecode instructions (body). Obsolete, retained for backward compatibility. Copyright (C) 2007-2023 by David Turner. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftpfr.c ftpfr.c FreeType API for accessing PFR-specific data (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftpsprop.c ftpsprop.c Get and set properties of PostScript drivers (body). See `ftdriver.h' for available properties. Copyright (C) 2017-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftrfork.c ftrfork.c Embedded resource forks accessor (body). Copyright (C) 2004-2023 by Masatake YAMATO and Redhat K.K. FT_Raccess_Get_HeaderInfo() and raccess_guess_darwin_hfsplus() are derived from ftobjs.c. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftsnames.c ftsnames.c Simple interface to access SFNT name tables (which are used to hold font names, copyright info, notices, etc.) (body). This is _not_ used to retrieve glyph names! Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftstream.c ftstream.c I/O stream support (body). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftstroke.c ftstroke.c FreeType path stroker (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftsynth.c ftsynth.c FreeType synthesizing code for emboldening and slanting (body). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftsystem.c ftsystem.c ANSI-specific FreeType low-level system interface (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/fttrigon.c fttrigon.c FreeType trigonometric functions (body). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/fttype1.c fttype1.c FreeType utility file for PS names support (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftutil.c ftutil.c FreeType utility file for memory and list management (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/ftwinfnt.c ftwinfnt.c FreeType API for accessing Windows FNT specific info (body). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/base/md5.c This is an OpenSSL-compatible implementation of the RSA Data Security, Inc. MD5 Message-Digest Algorithm (RFC 1321). Homepage: http://openwall.info/wiki/people/solar/software/public-domain-source-code/md5 Author: Alexander Peslyak, better known as Solar Designer This software was written by Alexander Peslyak in 2001. No copyright is claimed, and the software is hereby placed in the public domain. In case this attempt to disclaim copyright and place the software in the public domain is deemed null and void, then the software is Copyright (c) 2001 Alexander Peslyak and it is hereby released to the general public under the following terms: Redistribution and use in source and binary forms, with or without modification, are permitted. There's ABSOLUTELY NO WARRANTY, express or implied. (This is a heavily cut-down "BSD license".) This differs from Colin Plumb's older public domain implementation in that no exactly 32-bit integer data type is required (any 32-bit or wider unsigned integer data type will do), there's no compile-time endianness configuration, and the function prototypes match OpenSSL's. No code from Colin Plumb's implementation has been reused; this comment merely compares the properties of the two independent implementations. The primary goals of this implementation are portability and ease of use. It is meant to be fast, but not as fast as possible. Some known optimizations are not included to reduce source code size and avoid compile-time configuration. ## Files: freetype/src/base/md5.h This is an OpenSSL-compatible implementation of the RSA Data Security, Inc. MD5 Message-Digest Algorithm (RFC 1321). Homepage: http://openwall.info/wiki/people/solar/software/public-domain-source-code/md5 Author: Alexander Peslyak, better known as Solar Designer This software was written by Alexander Peslyak in 2001. No copyright is claimed, and the software is hereby placed in the public domain. In case this attempt to disclaim copyright and place the software in the public domain is deemed null and void, then the software is Copyright (c) 2001 Alexander Peslyak and it is hereby released to the general public under the following terms: Redistribution and use in source and binary forms, with or without modification, are permitted. There's ABSOLUTELY NO WARRANTY, express or implied. See md5.c for more information. ## Files: freetype/src/bzip2/ftbzip2.c ftbzip2.c FreeType support for .bz2 compressed files. This optional component relies on libbz2. It should mainly be used to parse compressed PCF fonts, as found with many X11 server distributions. Copyright (C) 2010-2023 by Joel Klinghed. based on `src/gzip/ftgzip.c' This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftcache.c ftcache.c The FreeType Caching sub-system (body only). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftcbasic.c ftcbasic.c The FreeType basic cache interface (body). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftccache.c ftccache.c The FreeType internal cache interface (body). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftccache.h ftccache.h FreeType internal cache interface (specification). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftccback.h ftccback.h Callback functions of the caching sub-system (specification only). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftccmap.c ftccmap.c FreeType CharMap cache (body) Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftcerror.h ftcerror.h Caching sub-system error codes (specification only). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftcglyph.c ftcglyph.c FreeType Glyph Image (FT_Glyph) cache (body). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftcglyph.h ftcglyph.h FreeType abstract glyph cache (specification). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftcimage.c ftcimage.c FreeType Image cache (body). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftcimage.h ftcimage.h FreeType Generic Image cache (specification) Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftcmanag.c ftcmanag.c FreeType Cache Manager (body). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftcmanag.h ftcmanag.h FreeType Cache Manager (specification). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftcmru.c ftcmru.c FreeType MRU support (body). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftcmru.h ftcmru.h Simple MRU list-cache (specification). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftcsbits.c ftcsbits.c FreeType sbits manager (body). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cache/ftcsbits.h ftcsbits.h A small-bitmap cache (specification). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cff.c cff.c FreeType OpenType driver component (body only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cffcmap.c cffcmap.c CFF character mapping table (cmap) support (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cffcmap.h cffcmap.h CFF character mapping table (cmap) support (specification). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cffdrivr.c cffdrivr.c OpenType font driver implementation (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, Werner Lemberg, and Dominik Röttsches. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cffdrivr.h cffdrivr.h High-level OpenType driver interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cfferrs.h cfferrs.h CFF error codes (specification only). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cffgload.c cffgload.c OpenType Glyph Loader (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cffgload.h cffgload.h OpenType Glyph Loader (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cffload.c cffload.c OpenType and CFF data/program tables loader (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cffload.h cffload.h OpenType & CFF data/program tables loader (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cffobjs.c cffobjs.c OpenType objects manager (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cffobjs.h cffobjs.h OpenType objects manager (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cffparse.c cffparse.c CFF token stream parser (body) Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cffparse.h cffparse.h CFF token stream parser (specification) Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cff/cfftoken.h cfftoken.h CFF token definitions (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cid/ciderrs.h ciderrs.h CID error codes (specification only). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cid/cidgload.c cidgload.c CID-keyed Type1 Glyph Loader (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cid/cidgload.h cidgload.h OpenType Glyph Loader (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cid/cidload.c cidload.c CID-keyed Type1 font loader (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cid/cidload.h cidload.h CID-keyed Type1 font loader (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cid/cidobjs.c cidobjs.c CID objects manager (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cid/cidobjs.h cidobjs.h CID objects manager (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cid/cidparse.c cidparse.c CID-keyed Type1 parser (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cid/cidparse.h cidparse.h CID-keyed Type1 parser (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cid/cidriver.c cidriver.c CID driver interface (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cid/cidriver.h cidriver.h High-level CID driver interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cid/cidtoken.h cidtoken.h CID token definitions (specification only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/cid/type1cid.c type1cid.c FreeType OpenType driver component (body only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/dlg/dlgwrap.c dlgwrap.c Wrapper file for the 'dlg' library (body only) Copyright (C) 2020-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvalid.c gxvalid.c FreeType validator for TrueTypeGX/AAT tables (body only). Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvalid.h gxvalid.h TrueTypeGX/AAT table validation (specification only). Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvbsln.c gxvbsln.c TrueTypeGX/AAT bsln table validation (body). Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvcommn.c gxvcommn.c TrueTypeGX/AAT common tables validation (body). Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvcommn.h gxvcommn.h TrueTypeGX/AAT common tables validation (specification). Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxverror.h gxverror.h TrueTypeGX/AAT validation module error codes (specification only). Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvfeat.c gxvfeat.c TrueTypeGX/AAT feat table validation (body). Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvfeat.h gxvfeat.h TrueTypeGX/AAT feat table validation (specification). Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvfgen.c gxfgen.c Generate feature registry data for gxv `feat' validator. This program is derived from gxfeatreg.c in gxlayout. Copyright (C) 2004-2023 by Masatake YAMATO and Redhat K.K. This file may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvfgen.c gxfeatreg.c Database of font features pre-defined by Apple Computer, Inc. https://developer.apple.com/fonts/TrueType-Reference-Manual/RM09/AppendixF.html (body). Copyright 2003 by Masatake YAMATO and Redhat K.K. This file may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvjust.c gxvjust.c TrueTypeGX/AAT just table validation (body). Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvkern.c gxvkern.c TrueTypeGX/AAT kern table validation (body). Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvlcar.c gxvlcar.c TrueTypeGX/AAT lcar table validation (body). Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmod.c gxvmod.c FreeType's TrueTypeGX/AAT validation module implementation (body). Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmod.h gxvmod.h FreeType's TrueTypeGX/AAT validation module implementation (specification). Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmort.c gxvmort.c TrueTypeGX/AAT mort table validation (body). Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmort.h gxvmort.h TrueTypeGX/AAT common definition for mort table (specification). Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmort0.c gxvmort0.c TrueTypeGX/AAT mort table validation body for type0 (Indic Script Rearrangement) subtable. Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmort1.c gxvmort1.c TrueTypeGX/AAT mort table validation body for type1 (Contextual Substitution) subtable. Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmort2.c gxvmort2.c TrueTypeGX/AAT mort table validation body for type2 (Ligature Substitution) subtable. Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmort4.c gxvmort4.c TrueTypeGX/AAT mort table validation body for type4 (Non-Contextual Glyph Substitution) subtable. Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmort5.c gxvmort5.c TrueTypeGX/AAT mort table validation body for type5 (Contextual Glyph Insertion) subtable. Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmorx.c gxvmorx.c TrueTypeGX/AAT morx table validation (body). Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmorx.h gxvmorx.h TrueTypeGX/AAT common definition for morx table (specification). Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmorx0.c gxvmorx0.c TrueTypeGX/AAT morx table validation body for type0 (Indic Script Rearrangement) subtable. Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmorx1.c gxvmorx1.c TrueTypeGX/AAT morx table validation body for type1 (Contextual Substitution) subtable. Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmorx2.c gxvmorx2.c TrueTypeGX/AAT morx table validation body for type2 (Ligature Substitution) subtable. Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmorx4.c gxvmorx4.c TrueTypeGX/AAT morx table validation body for "morx" type4 (Non-Contextual Glyph Substitution) subtable. Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvmorx5.c gxvmorx5.c TrueTypeGX/AAT morx table validation body for type5 (Contextual Glyph Insertion) subtable. Copyright (C) 2005-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvopbd.c gxvopbd.c TrueTypeGX/AAT opbd table validation (body). Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvprop.c gxvprop.c TrueTypeGX/AAT prop table validation (body). Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gxvalid/gxvtrak.c gxvtrak.c TrueTypeGX/AAT trak table validation (body). Copyright (C) 2004-2023 by suzuki toshiya, Masatake YAMATO, Red Hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gzip/adler32.c zlib/adler32.c adler32.c -- compute the Adler-32 checksum of a data stream Copyright (C) 1995-2011, 2016 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: freetype/src/gzip/crc32.c zlib/crc32.c crc32.c -- compute the CRC-32 of a data stream Copyright (C) 1995-2022 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h This interleaved implementation of a CRC makes use of pipelined multiple arithmetic-logic units, commonly found in modern CPU cores. It is due to Kadatch and Jenkins (2010). See doc/crc-doc.1.0.pdf in this distribution. ## Files: freetype/src/gzip/ftgzip.c ftgzip.c FreeType support for .gz compressed files. This optional component relies on zlib. It should mainly be used to parse compressed PCF fonts, as found with many X11 server distributions. Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/gzip/ftzconf.h zlib/zconf.h zconf.h -- configuration of the zlib compression library Copyright (C) 1995-2016 Jean-loup Gailly, Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: freetype/src/gzip/gzguts.h zlib/gzguts.h gzguts.h -- zlib internal header definitions for gz* operations Copyright (C) 2004-2019 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: freetype/src/gzip/infback.c zlib/infback.c infback.c -- inflate using a call-back interface Copyright (C) 1995-2022 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: freetype/src/gzip/inffast.c zlib/inffast.c inffast.c -- fast decoding Copyright (C) 1995-2017 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: freetype/src/gzip/inffast.h zlib/inffast.h inffast.h -- header to use inffast.c Copyright (C) 1995-2003, 2010 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: freetype/src/gzip/inflate.c zlib/inflate.c inflate.c -- zlib decompression Copyright (C) 1995-2022 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: freetype/src/gzip/inflate.h zlib/inflate.h inflate.h -- internal inflate state definition Copyright (C) 1995-2019 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: freetype/src/gzip/inftrees.c zlib/contrib/infback9/inftree9.c zlib/deflate.c zlib/inftrees.c If you use the zlib library in a product, an acknowledgment is welcome in the documentation of your product. If for some reason you cannot include such an acknowledgment, I would appreciate that you keep this copyright string in the executable of your product. ## Files: freetype/src/gzip/inftrees.c zlib/inftrees.c inftrees.c -- generate Huffman trees for efficient decoding Copyright (C) 1995-2022 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: freetype/src/gzip/inftrees.h zlib/inftrees.h inftrees.h -- header to use inftrees.c Copyright (C) 1995-2005, 2010 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: freetype/src/gzip/zlib.h zlib/zlib.h zlib.h -- interface of the 'zlib' general purpose compression library version 1.2.13, October 13th, 2022 Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Jean-loup Gailly Mark Adler jloup@gzip.org madler@alumni.caltech.edu The data format used by the zlib library is described by RFCs (Request for Comments) 1950 to 1952 in the files http://tools.ietf.org/html/rfc1950 (zlib format), rfc1951 (deflate format) and rfc1952 (gzip format). ## Files: freetype/src/gzip/zutil.c zlib/zutil.c zutil.c -- target dependent utility functions for the compression library Copyright (C) 1995-2017 Jean-loup Gailly For conditions of distribution and use, see copyright notice in zlib.h ## Files: freetype/src/gzip/zutil.h zlib/zutil.h zutil.h -- internal interface and configuration of the compression library Copyright (C) 1995-2022 Jean-loup Gailly, Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: freetype/src/lzw/ftlzw.c ftlzw.c FreeType support for .Z compressed files. This optional component relies on NetBSD's zopen(). It should mainly be used to parse compressed PCF fonts, as found with many X11 server distributions. Copyright (C) 2004-2023 by Albert Chin-A-Young. based on code in `src/gzip/ftgzip.c' This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/lzw/ftzopen.c ftzopen.c FreeType support for .Z compressed files. This optional component relies on NetBSD's zopen(). It should mainly be used to parse compressed PCF fonts, as found with many X11 server distributions. Copyright (C) 2005-2023 by David Turner. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/lzw/ftzopen.h ftzopen.h FreeType support for .Z compressed files. This optional component relies on NetBSD's zopen(). It should mainly be used to parse compressed PCF fonts, as found with many X11 server distributions. Copyright (C) 2005-2023 by David Turner. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/otvalid/otvalid.c otvalid.c FreeType validator for OpenType tables (body only). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/otvalid/otvalid.h otvalid.h OpenType table validation (specification only). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/otvalid/otvbase.c otvbase.c OpenType BASE table validation (body). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/otvalid/otvcommn.c otvcommn.c OpenType common tables validation (body). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/otvalid/otvcommn.h otvcommn.h OpenType common tables validation (specification). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/otvalid/otverror.h otverror.h OpenType validation module error codes (specification only). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/otvalid/otvgdef.c otvgdef.c OpenType GDEF table validation (body). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/otvalid/otvgpos.c otvgpos.c OpenType GPOS table validation (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/otvalid/otvgpos.h otvgpos.h OpenType GPOS table validator (specification). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/otvalid/otvgsub.c otvgsub.c OpenType GSUB table validation (body). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/otvalid/otvjstf.c otvjstf.c OpenType JSTF table validation (body). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/otvalid/otvmath.c otvmath.c OpenType MATH table validation (body). Copyright (C) 2007-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Written by George Williams. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/otvalid/otvmod.c otvmod.c FreeType's OpenType validation module implementation (body). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/otvalid/otvmod.h otvmod.h FreeType's OpenType validation module implementation (specification). Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pcf/pcferror.h pcferror.h PCF error codes (specification only). Copyright 2001, 2012 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pcf/pcfutil.c Copyright 1990, 1994, 1998 The Open Group Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Except as contained in this notice, the name of The Open Group shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization from The Open Group. ## Files: freetype/src/pfr/pfr.c pfr.c FreeType PFR driver component. Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pfr/pfrcmap.c pfrcmap.c FreeType PFR cmap handling (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pfr/pfrcmap.h pfrcmap.h FreeType PFR cmap handling (specification). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pfr/pfrdrivr.c pfrdrivr.c FreeType PFR driver interface (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pfr/pfrdrivr.h pfrdrivr.h High-level Type PFR driver interface (specification). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pfr/pfrerror.h pfrerror.h PFR error codes (specification only). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pfr/pfrgload.c pfrgload.c FreeType PFR glyph loader (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pfr/pfrgload.h pfrgload.h FreeType PFR glyph loader (specification). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pfr/pfrload.c pfrload.c FreeType PFR loader (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pfr/pfrload.h pfrload.h FreeType PFR loader (specification). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pfr/pfrobjs.c pfrobjs.c FreeType PFR object methods (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pfr/pfrobjs.h pfrobjs.h FreeType PFR object methods (specification). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pfr/pfrsbit.c pfrsbit.c FreeType PFR bitmap loader (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pfr/pfrsbit.h pfrsbit.h FreeType PFR bitmap loader (specification). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pfr/pfrtypes.h pfrtypes.h FreeType PFR data structures (specification only). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/afmparse.c afmparse.c AFM parser (body). Copyright (C) 2006-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/afmparse.h afmparse.h AFM parser (specification). Copyright (C) 2006-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/cffdecode.c cffdecode.c PostScript CFF (Type 2) decoding routines (body). Copyright (C) 2017-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/cffdecode.h cffdecode.h PostScript CFF (Type 2) decoding routines (specification). Copyright (C) 2017-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/psarrst.c psarrst.c Adobe's code for Array Stacks (body). Copyright 2007-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psarrst.h psarrst.h Adobe's code for Array Stacks (specification). Copyright 2007-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psaux.c psaux.c FreeType auxiliary PostScript driver component (body only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/psauxerr.h psauxerr.h PS auxiliary module error codes (specification only). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/psauxmod.c psauxmod.c FreeType auxiliary PostScript module implementation (body). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/psauxmod.h psauxmod.h FreeType auxiliary PostScript module implementation (specification). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/psblues.c psblues.c Adobe's code for handling Blue Zones (body). Copyright 2009-2014 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psblues.h psblues.h Adobe's code for handling Blue Zones (specification). Copyright 2009-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psconv.c psconv.c Some convenience conversions (body). Copyright (C) 2006-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/psconv.h psconv.h Some convenience conversions (specification). Copyright (C) 2006-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/pserror.c pserror.c Adobe's code for error handling (body). Copyright 2006-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/pserror.h pserror.h Adobe's code for error handling (specification). Copyright 2006-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psfixed.h psfixed.h Adobe's code for Fixed-Point Mathematics (specification only). Copyright 2007-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psfont.c psfont.c Adobe's code for font instances (body). Copyright 2007-2014 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psfont.h psfont.h Adobe's code for font instances (specification). Copyright 2007-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psft.c psft.c FreeType Glue Component to Adobe's Interpreter (body). Copyright 2013-2014 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psft.h psft.h FreeType Glue Component to Adobe's Interpreter (specification). Copyright 2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psglue.h psglue.h Adobe's code for shared stuff (specification only). Copyright 2007-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/pshints.c pshints.c Adobe's code for handling CFF hints (body). Copyright 2007-2014 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/pshints.h pshints.h Adobe's code for handling CFF hints (body). Copyright 2007-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psintrp.c psintrp.c Adobe's CFF Interpreter (body). Copyright 2007-2014 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psintrp.h psintrp.h Adobe's CFF Interpreter (specification). Copyright 2007-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psobjs.c psobjs.c Auxiliary functions for PostScript fonts (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/psobjs.h psobjs.h Auxiliary functions for PostScript fonts (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/psread.c psread.c Adobe's code for stream handling (body). Copyright 2007-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psread.h psread.h Adobe's code for stream handling (specification). Copyright 2007-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psstack.c psstack.c Adobe's code for emulating a CFF stack (body). Copyright 2007-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/psstack.h psstack.h Adobe's code for emulating a CFF stack (specification). Copyright 2007-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/pstypes.h pstypes.h Adobe's code for defining data types (specification only). Copyright 2011-2013 Adobe Systems Incorporated. This software, and all works of authorship, whether in source or object code form as indicated by the copyright notice(s) included herein (collectively, the "Work") is made available, and may only be used, modified, and distributed under the FreeType Project License, LICENSE.TXT. Additionally, subject to the terms and conditions of the FreeType Project License, each contributor to the Work hereby grants to any individual or legal entity exercising permissions granted by the FreeType Project License and this section (hereafter, "You" or "Your") a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such contributor that are necessarily infringed by their contribution(s) alone or by combination of their contribution(s) with the Work to which such contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. By using, modifying, or distributing the Work you indicate that you have read and understood the terms and conditions of the FreeType Project License as well as those provided in this section, and you accept them fully. ## Files: freetype/src/psaux/t1cmap.c t1cmap.c Type 1 character map support (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/t1cmap.h t1cmap.h Type 1 character map support (specification). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/t1decode.c t1decode.c PostScript Type 1 decoding routines (body). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psaux/t1decode.h t1decode.h PostScript Type 1 decoding routines (specification). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pshinter/pshalgo.c pshalgo.c PostScript hinting algorithm (body). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pshinter/pshalgo.h pshalgo.h PostScript hinting algorithm (specification). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pshinter/pshglob.c pshglob.c PostScript hinter global hinting management (body). Inspired by the new auto-hinter module. Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pshinter/pshglob.h pshglob.h PostScript hinter global hinting management. Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pshinter/pshinter.c pshinter.c FreeType PostScript Hinting module Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pshinter/pshmod.c pshmod.c FreeType PostScript hinter module implementation (body). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pshinter/pshmod.h pshmod.h PostScript hinter module interface (specification). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pshinter/pshnterr.h pshnterr.h PS Hinter error codes (specification only). Copyright (C) 2003-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pshinter/pshrec.c pshrec.c FreeType PostScript hints recorder (body). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/pshinter/pshrec.h pshrec.h Postscript (Type1/Type2) hints recorder (specification). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psnames/psmodule.c psmodule.c psnames module implementation (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psnames/psmodule.h psmodule.h High-level psnames module interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psnames/psnamerr.h psnamerr.h PS names module error codes (specification only). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psnames/psnames.c psnames.c FreeType psnames module component (body only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/psnames/pstables.h pstables.h PostScript glyph names. Copyright (C) 2005-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/raster/ftmisc.h ftmisc.h Miscellaneous macros for stand-alone rasterizer (specification only). Copyright (C) 2005-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/raster/ftraster.c ftraster.c The FreeType glyph rasterizer (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/raster/ftraster.h ftraster.h The FreeType glyph rasterizer (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used modified and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/raster/ftrend1.c ftrend1.c The FreeType glyph rasterizer interface (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/raster/ftrend1.h ftrend1.h The FreeType glyph rasterizer interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/raster/raster.c raster.c FreeType monochrome rasterer module component (body only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/raster/rasterrs.h rasterrs.h monochrome renderer error codes (specification only). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sdf/ftbsdf.c ftbsdf.c Signed Distance Field support for bitmap fonts (body only). Copyright (C) 2020-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Written by Anuj Verma. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sdf/ftsdf.c ftsdf.c Signed Distance Field support for outline fonts (body). Copyright (C) 2020-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Written by Anuj Verma. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sdf/ftsdf.h ftsdf.h Signed Distance Field support (specification). Copyright (C) 2020-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Written by Anuj Verma. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sdf/ftsdfcommon.c ftsdfcommon.c Auxiliary data for Signed Distance Field support (body). Copyright (C) 2020-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Written by Anuj Verma. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sdf/ftsdfcommon.h ftsdfcommon.h Auxiliary data for Signed Distance Field support (specification). Copyright (C) 2020-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Written by Anuj Verma. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sdf/ftsdferrs.h ftsdferrs.h Signed Distance Field error codes (specification only). Copyright (C) 2020-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Written by Anuj Verma. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sdf/ftsdfrend.c ftsdfrend.c Signed Distance Field renderer interface (body). Copyright (C) 2020-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Written by Anuj Verma. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sdf/ftsdfrend.h ftsdfrend.h Signed Distance Field renderer interface (specification). Copyright (C) 2020-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Written by Anuj Verma. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sdf/sdf.c sdf.c FreeType Signed Distance Field renderer module component (body only). Copyright (C) 2020-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Written by Anuj Verma. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/pngshim.c pngshim.c PNG Bitmap glyph support. Copyright (C) 2013-2023 by Google, Inc. Written by Stuart Gill and Behdad Esfahbod. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/pngshim.h pngshim.h PNG Bitmap glyph support. Copyright (C) 2013-2023 by Google, Inc. Written by Stuart Gill and Behdad Esfahbod. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/sfdriver.c sfdriver.c High-level SFNT driver interface (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/sfdriver.h sfdriver.h High-level SFNT driver interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/sferrors.h sferrors.h SFNT error codes (specification only). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/sfnt.c sfnt.c Single object library component. Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/sfobjs.c sfobjs.c SFNT object management (base). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/sfobjs.h sfobjs.h SFNT object management (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/sfwoff.c sfwoff.c WOFF format management (base). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/sfwoff.h sfwoff.h WOFFF format management (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/sfwoff2.c sfwoff2.c WOFF2 format management (base). Copyright (C) 2019-2023 by Nikhil Ramakrishnan, David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/sfwoff2.h sfwoff2.h WOFFF2 format management (specification). Copyright (C) 2019-2023 by Nikhil Ramakrishnan, David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttbdf.c ttbdf.c TrueType and OpenType embedded BDF properties (body). Copyright (C) 2005-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttbdf.h ttbdf.h TrueType and OpenType embedded BDF properties (specification). Copyright (C) 2005-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttcmap.c ttcmap.c TrueType character mapping table (cmap) support (body). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttcmap.h ttcmap.h TrueType character mapping table (cmap) support (specification). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttcmapc.h ttcmapc.h TT CMAP classes definitions (specification only). Copyright (C) 2009-2023 by Oran Agra and Mickey Gabel. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttcolr.c ttcolr.c TrueType and OpenType colored glyph layer support (body). Copyright (C) 2018-2023 by David Turner, Robert Wilhelm, Dominik Röttsches, and Werner Lemberg. Originally written by Shao Yu Zhang . This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttcolr.h ttcolr.h TrueType and OpenType colored glyph layer support (specification). Copyright (C) 2018-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Originally written by Shao Yu Zhang . This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttcpal.c ttcpal.c TrueType and OpenType color palette support (body). Copyright (C) 2018-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Originally written by Shao Yu Zhang . This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttcpal.h ttcpal.h TrueType and OpenType color palette support (specification). Copyright (C) 2018-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Originally written by Shao Yu Zhang . This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttkern.c ttkern.c Load the basic TrueType kerning table. This doesn't handle kerning data within the GPOS table at the moment. Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttkern.h ttkern.h Load the basic TrueType kerning table. This doesn't handle kerning data within the GPOS table at the moment. Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttload.c ttload.c Load the basic TrueType tables, i.e., tables that can be either in TTF or OTF fonts (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttload.h ttload.h Load the basic TrueType tables, i.e., tables that can be either in TTF or OTF fonts (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttmtx.c ttmtx.c Load the metrics tables common to TTF and OTF fonts (body). Copyright (C) 2006-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttmtx.h ttmtx.h Load the metrics tables common to TTF and OTF fonts (specification). Copyright (C) 2006-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttpost.c ttpost.c PostScript name table processing for TrueType and OpenType fonts (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttpost.h ttpost.h PostScript name table processing for TrueType and OpenType fonts (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttsbit.c ttsbit.c TrueType and OpenType embedded bitmap support (body). Copyright (C) 2005-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Copyright 2013 by Google, Inc. Google Author(s): Behdad Esfahbod. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttsbit.h ttsbit.h TrueType and OpenType embedded bitmap support (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttsvg.c ttsvg.c OpenType SVG Color (specification). Copyright (C) 2022-2023 by David Turner, Robert Wilhelm, Werner Lemberg, and Moazin Khatti. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/ttsvg.h ttsvg.h OpenType SVG Color (specification). Copyright (C) 2022-2023 by David Turner, Robert Wilhelm, Werner Lemberg, and Moazin Khatti. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/woff2tags.c woff2tags.c WOFF2 Font table tags (base). Copyright (C) 2019-2023 by Nikhil Ramakrishnan, David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/sfnt/woff2tags.h woff2tags.h WOFF2 Font table tags (specification). Copyright (C) 2019-2023 by Nikhil Ramakrishnan, David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/smooth/ftgrays.c ftgrays.c A new `perfect' anti-aliasing renderer (body). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/smooth/ftgrays.h ftgrays.h FreeType smooth renderer declaration Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/smooth/ftsmerrs.h ftsmerrs.h smooth renderer error codes (specification only). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/smooth/ftsmooth.c ftsmooth.c Anti-aliasing renderer interface (body). Copyright (C) 2000-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/smooth/ftsmooth.h ftsmooth.h Anti-aliasing renderer interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/smooth/smooth.c smooth.c FreeType anti-aliasing rasterer module component (body only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/svg/ftsvg.c ftsvg.c The FreeType SVG renderer interface (body). Copyright (C) 2022-2023 by David Turner, Robert Wilhelm, Werner Lemberg, and Moazin Khatti. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/svg/ftsvg.h ftsvg.h The FreeType SVG renderer interface (specification). Copyright (C) 2022-2023 by David Turner, Robert Wilhelm, Werner Lemberg, and Moazin Khatti. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/svg/svg.c svg.c FreeType SVG renderer module component (body only). Copyright (C) 2022-2023 by David Turner, Robert Wilhelm, Werner Lemberg, and Moazin Khatti. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/svg/svgtypes.h svgtypes.h The FreeType SVG renderer internal types (specification). Copyright (C) 2022-2023 by David Turner, Robert Wilhelm, Werner Lemberg, and Moazin Khatti. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/tools/ftrandom/ftrandom.c Copyright (C) 2005, 2007, 2008, 2013 by George Williams ## Files: freetype/src/tools/glnames.py FreeType 2 glyph name builder Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/tools/glnames.py \ A;0041 AE;00C6 AEacute;01FC AEmacron;01E2 AEsmall;F7E6 Aacute;00C1 Aacutesmall;F7E1 Abreve;0102 Abreveacute;1EAE Abrevecyrillic;04D0 Abrevedotbelow;1EB6 Abrevegrave;1EB0 Abrevehookabove;1EB2 Abrevetilde;1EB4 Acaron;01CD Acircle;24B6 Acircumflex;00C2 Acircumflexacute;1EA4 Acircumflexdotbelow;1EAC Acircumflexgrave;1EA6 Acircumflexhookabove;1EA8 Acircumflexsmall;F7E2 Acircumflextilde;1EAA Acute;F6C9 Acutesmall;F7B4 Acyrillic;0410 Adblgrave;0200 Adieresis;00C4 Adieresiscyrillic;04D2 Adieresismacron;01DE Adieresissmall;F7E4 Adotbelow;1EA0 Adotmacron;01E0 Agrave;00C0 Agravesmall;F7E0 Ahookabove;1EA2 Aiecyrillic;04D4 Ainvertedbreve;0202 Alpha;0391 Alphatonos;0386 Amacron;0100 Amonospace;FF21 Aogonek;0104 Aring;00C5 Aringacute;01FA Aringbelow;1E00 Aringsmall;F7E5 Asmall;F761 Atilde;00C3 Atildesmall;F7E3 Aybarmenian;0531 B;0042 Bcircle;24B7 Bdotaccent;1E02 Bdotbelow;1E04 Becyrillic;0411 Benarmenian;0532 Beta;0392 Bhook;0181 Blinebelow;1E06 Bmonospace;FF22 Brevesmall;F6F4 Bsmall;F762 Btopbar;0182 C;0043 Caarmenian;053E Cacute;0106 Caron;F6CA Caronsmall;F6F5 Ccaron;010C Ccedilla;00C7 Ccedillaacute;1E08 Ccedillasmall;F7E7 Ccircle;24B8 Ccircumflex;0108 Cdot;010A Cdotaccent;010A Cedillasmall;F7B8 Chaarmenian;0549 Cheabkhasiancyrillic;04BC Checyrillic;0427 Chedescenderabkhasiancyrillic;04BE Chedescendercyrillic;04B6 Chedieresiscyrillic;04F4 Cheharmenian;0543 Chekhakassiancyrillic;04CB Cheverticalstrokecyrillic;04B8 Chi;03A7 Chook;0187 Circumflexsmall;F6F6 Cmonospace;FF23 Coarmenian;0551 Csmall;F763 D;0044 DZ;01F1 DZcaron;01C4 Daarmenian;0534 Dafrican;0189 Dcaron;010E Dcedilla;1E10 Dcircle;24B9 Dcircumflexbelow;1E12 Dcroat;0110 Ddotaccent;1E0A Ddotbelow;1E0C Decyrillic;0414 Deicoptic;03EE Delta;2206 Deltagreek;0394 Dhook;018A Dieresis;F6CB DieresisAcute;F6CC DieresisGrave;F6CD Dieresissmall;F7A8 Digammagreek;03DC Djecyrillic;0402 Dlinebelow;1E0E Dmonospace;FF24 Dotaccentsmall;F6F7 Dslash;0110 Dsmall;F764 Dtopbar;018B Dz;01F2 Dzcaron;01C5 Dzeabkhasiancyrillic;04E0 Dzecyrillic;0405 Dzhecyrillic;040F E;0045 Eacute;00C9 Eacutesmall;F7E9 Ebreve;0114 Ecaron;011A Ecedillabreve;1E1C Echarmenian;0535 Ecircle;24BA Ecircumflex;00CA Ecircumflexacute;1EBE Ecircumflexbelow;1E18 Ecircumflexdotbelow;1EC6 Ecircumflexgrave;1EC0 Ecircumflexhookabove;1EC2 Ecircumflexsmall;F7EA Ecircumflextilde;1EC4 Ecyrillic;0404 Edblgrave;0204 Edieresis;00CB Edieresissmall;F7EB Edot;0116 Edotaccent;0116 Edotbelow;1EB8 Efcyrillic;0424 Egrave;00C8 Egravesmall;F7E8 Eharmenian;0537 Ehookabove;1EBA Eightroman;2167 Einvertedbreve;0206 Eiotifiedcyrillic;0464 Elcyrillic;041B Elevenroman;216A Emacron;0112 Emacronacute;1E16 Emacrongrave;1E14 Emcyrillic;041C Emonospace;FF25 Encyrillic;041D Endescendercyrillic;04A2 Eng;014A Enghecyrillic;04A4 Enhookcyrillic;04C7 Eogonek;0118 Eopen;0190 Epsilon;0395 Epsilontonos;0388 Ercyrillic;0420 Ereversed;018E Ereversedcyrillic;042D Escyrillic;0421 Esdescendercyrillic;04AA Esh;01A9 Esmall;F765 Eta;0397 Etarmenian;0538 Etatonos;0389 Eth;00D0 Ethsmall;F7F0 Etilde;1EBC Etildebelow;1E1A Euro;20AC Ezh;01B7 Ezhcaron;01EE Ezhreversed;01B8 F;0046 Fcircle;24BB Fdotaccent;1E1E Feharmenian;0556 Feicoptic;03E4 Fhook;0191 Fitacyrillic;0472 Fiveroman;2164 Fmonospace;FF26 Fourroman;2163 Fsmall;F766 G;0047 GBsquare;3387 Gacute;01F4 Gamma;0393 Gammaafrican;0194 Gangiacoptic;03EA Gbreve;011E Gcaron;01E6 Gcedilla;0122 Gcircle;24BC Gcircumflex;011C Gcommaaccent;0122 Gdot;0120 Gdotaccent;0120 Gecyrillic;0413 Ghadarmenian;0542 Ghemiddlehookcyrillic;0494 Ghestrokecyrillic;0492 Gheupturncyrillic;0490 Ghook;0193 Gimarmenian;0533 Gjecyrillic;0403 Gmacron;1E20 Gmonospace;FF27 Grave;F6CE Gravesmall;F760 Gsmall;F767 Gsmallhook;029B Gstroke;01E4 H;0048 H18533;25CF H18543;25AA H18551;25AB H22073;25A1 HPsquare;33CB Haabkhasiancyrillic;04A8 Hadescendercyrillic;04B2 Hardsigncyrillic;042A Hbar;0126 Hbrevebelow;1E2A Hcedilla;1E28 Hcircle;24BD Hcircumflex;0124 Hdieresis;1E26 Hdotaccent;1E22 Hdotbelow;1E24 Hmonospace;FF28 Hoarmenian;0540 Horicoptic;03E8 Hsmall;F768 Hungarumlaut;F6CF Hungarumlautsmall;F6F8 Hzsquare;3390 I;0049 IAcyrillic;042F IJ;0132 IUcyrillic;042E Iacute;00CD Iacutesmall;F7ED Ibreve;012C Icaron;01CF Icircle;24BE Icircumflex;00CE Icircumflexsmall;F7EE Icyrillic;0406 Idblgrave;0208 Idieresis;00CF Idieresisacute;1E2E Idieresiscyrillic;04E4 Idieresissmall;F7EF Idot;0130 Idotaccent;0130 Idotbelow;1ECA Iebrevecyrillic;04D6 Iecyrillic;0415 Ifraktur;2111 Igrave;00CC Igravesmall;F7EC Ihookabove;1EC8 Iicyrillic;0418 Iinvertedbreve;020A Iishortcyrillic;0419 Imacron;012A Imacroncyrillic;04E2 Imonospace;FF29 Iniarmenian;053B Iocyrillic;0401 Iogonek;012E Iota;0399 Iotaafrican;0196 Iotadieresis;03AA Iotatonos;038A Ismall;F769 Istroke;0197 Itilde;0128 Itildebelow;1E2C Izhitsacyrillic;0474 Izhitsadblgravecyrillic;0476 J;004A Jaarmenian;0541 Jcircle;24BF Jcircumflex;0134 Jecyrillic;0408 Jheharmenian;054B Jmonospace;FF2A Jsmall;F76A K;004B KBsquare;3385 KKsquare;33CD Kabashkircyrillic;04A0 Kacute;1E30 Kacyrillic;041A Kadescendercyrillic;049A Kahookcyrillic;04C3 Kappa;039A Kastrokecyrillic;049E Kaverticalstrokecyrillic;049C Kcaron;01E8 Kcedilla;0136 Kcircle;24C0 Kcommaaccent;0136 Kdotbelow;1E32 Keharmenian;0554 Kenarmenian;053F Khacyrillic;0425 Kheicoptic;03E6 Khook;0198 Kjecyrillic;040C Klinebelow;1E34 Kmonospace;FF2B Koppacyrillic;0480 Koppagreek;03DE Ksicyrillic;046E Ksmall;F76B L;004C LJ;01C7 LL;F6BF Lacute;0139 Lambda;039B Lcaron;013D Lcedilla;013B Lcircle;24C1 Lcircumflexbelow;1E3C Lcommaaccent;013B Ldot;013F Ldotaccent;013F Ldotbelow;1E36 Ldotbelowmacron;1E38 Liwnarmenian;053C Lj;01C8 Ljecyrillic;0409 Llinebelow;1E3A Lmonospace;FF2C Lslash;0141 Lslashsmall;F6F9 Lsmall;F76C M;004D MBsquare;3386 Macron;F6D0 Macronsmall;F7AF Macute;1E3E Mcircle;24C2 Mdotaccent;1E40 Mdotbelow;1E42 Menarmenian;0544 Mmonospace;FF2D Msmall;F76D Mturned;019C Mu;039C N;004E NJ;01CA Nacute;0143 Ncaron;0147 Ncedilla;0145 Ncircle;24C3 Ncircumflexbelow;1E4A Ncommaaccent;0145 Ndotaccent;1E44 Ndotbelow;1E46 Nhookleft;019D Nineroman;2168 Nj;01CB Njecyrillic;040A Nlinebelow;1E48 Nmonospace;FF2E Nowarmenian;0546 Nsmall;F76E Ntilde;00D1 Ntildesmall;F7F1 Nu;039D O;004F OE;0152 OEsmall;F6FA Oacute;00D3 Oacutesmall;F7F3 Obarredcyrillic;04E8 Obarreddieresiscyrillic;04EA Obreve;014E Ocaron;01D1 Ocenteredtilde;019F Ocircle;24C4 Ocircumflex;00D4 Ocircumflexacute;1ED0 Ocircumflexdotbelow;1ED8 Ocircumflexgrave;1ED2 Ocircumflexhookabove;1ED4 Ocircumflexsmall;F7F4 Ocircumflextilde;1ED6 Ocyrillic;041E Odblacute;0150 Odblgrave;020C Odieresis;00D6 Odieresiscyrillic;04E6 Odieresissmall;F7F6 Odotbelow;1ECC Ogoneksmall;F6FB Ograve;00D2 Ogravesmall;F7F2 Oharmenian;0555 Ohm;2126 Ohookabove;1ECE Ohorn;01A0 Ohornacute;1EDA Ohorndotbelow;1EE2 Ohorngrave;1EDC Ohornhookabove;1EDE Ohorntilde;1EE0 Ohungarumlaut;0150 Oi;01A2 Oinvertedbreve;020E Omacron;014C Omacronacute;1E52 Omacrongrave;1E50 Omega;2126 Omegacyrillic;0460 Omegagreek;03A9 Omegaroundcyrillic;047A Omegatitlocyrillic;047C Omegatonos;038F Omicron;039F Omicrontonos;038C Omonospace;FF2F Oneroman;2160 Oogonek;01EA Oogonekmacron;01EC Oopen;0186 Oslash;00D8 Oslashacute;01FE Oslashsmall;F7F8 Osmall;F76F Ostrokeacute;01FE Otcyrillic;047E Otilde;00D5 Otildeacute;1E4C Otildedieresis;1E4E Otildesmall;F7F5 P;0050 Pacute;1E54 Pcircle;24C5 Pdotaccent;1E56 Pecyrillic;041F Peharmenian;054A Pemiddlehookcyrillic;04A6 Phi;03A6 Phook;01A4 Pi;03A0 Piwrarmenian;0553 Pmonospace;FF30 Psi;03A8 Psicyrillic;0470 Psmall;F770 Q;0051 Qcircle;24C6 Qmonospace;FF31 Qsmall;F771 R;0052 Raarmenian;054C Racute;0154 Rcaron;0158 Rcedilla;0156 Rcircle;24C7 Rcommaaccent;0156 Rdblgrave;0210 Rdotaccent;1E58 Rdotbelow;1E5A Rdotbelowmacron;1E5C Reharmenian;0550 Rfraktur;211C Rho;03A1 Ringsmall;F6FC Rinvertedbreve;0212 Rlinebelow;1E5E Rmonospace;FF32 Rsmall;F772 Rsmallinverted;0281 Rsmallinvertedsuperior;02B6 S;0053 SF010000;250C SF020000;2514 SF030000;2510 SF040000;2518 SF050000;253C SF060000;252C SF070000;2534 SF080000;251C SF090000;2524 SF100000;2500 SF110000;2502 SF190000;2561 SF200000;2562 SF210000;2556 SF220000;2555 SF230000;2563 SF240000;2551 SF250000;2557 SF260000;255D SF270000;255C SF280000;255B SF360000;255E SF370000;255F SF380000;255A SF390000;2554 SF400000;2569 SF410000;2566 SF420000;2560 SF430000;2550 SF440000;256C SF450000;2567 SF460000;2568 SF470000;2564 SF480000;2565 SF490000;2559 SF500000;2558 SF510000;2552 SF520000;2553 SF530000;256B SF540000;256A Sacute;015A Sacutedotaccent;1E64 Sampigreek;03E0 Scaron;0160 Scarondotaccent;1E66 Scaronsmall;F6FD Scedilla;015E Schwa;018F Schwacyrillic;04D8 Schwadieresiscyrillic;04DA Scircle;24C8 Scircumflex;015C Scommaaccent;0218 Sdotaccent;1E60 Sdotbelow;1E62 Sdotbelowdotaccent;1E68 Seharmenian;054D Sevenroman;2166 Shaarmenian;0547 Shacyrillic;0428 Shchacyrillic;0429 Sheicoptic;03E2 Shhacyrillic;04BA Shimacoptic;03EC Sigma;03A3 Sixroman;2165 Smonospace;FF33 Softsigncyrillic;042C Ssmall;F773 Stigmagreek;03DA T;0054 Tau;03A4 Tbar;0166 Tcaron;0164 Tcedilla;0162 Tcircle;24C9 Tcircumflexbelow;1E70 Tcommaaccent;0162 Tdotaccent;1E6A Tdotbelow;1E6C Tecyrillic;0422 Tedescendercyrillic;04AC Tenroman;2169 Tetsecyrillic;04B4 Theta;0398 Thook;01AC Thorn;00DE Thornsmall;F7FE Threeroman;2162 Tildesmall;F6FE Tiwnarmenian;054F Tlinebelow;1E6E Tmonospace;FF34 Toarmenian;0539 Tonefive;01BC Tonesix;0184 Tonetwo;01A7 Tretroflexhook;01AE Tsecyrillic;0426 Tshecyrillic;040B Tsmall;F774 Twelveroman;216B Tworoman;2161 U;0055 Uacute;00DA Uacutesmall;F7FA Ubreve;016C Ucaron;01D3 Ucircle;24CA Ucircumflex;00DB Ucircumflexbelow;1E76 Ucircumflexsmall;F7FB Ucyrillic;0423 Udblacute;0170 Udblgrave;0214 Udieresis;00DC Udieresisacute;01D7 Udieresisbelow;1E72 Udieresiscaron;01D9 Udieresiscyrillic;04F0 Udieresisgrave;01DB Udieresismacron;01D5 Udieresissmall;F7FC Udotbelow;1EE4 Ugrave;00D9 Ugravesmall;F7F9 Uhookabove;1EE6 Uhorn;01AF Uhornacute;1EE8 Uhorndotbelow;1EF0 Uhorngrave;1EEA Uhornhookabove;1EEC Uhorntilde;1EEE Uhungarumlaut;0170 Uhungarumlautcyrillic;04F2 Uinvertedbreve;0216 Ukcyrillic;0478 Umacron;016A Umacroncyrillic;04EE Umacrondieresis;1E7A Umonospace;FF35 Uogonek;0172 Upsilon;03A5 Upsilon1;03D2 Upsilonacutehooksymbolgreek;03D3 Upsilonafrican;01B1 Upsilondieresis;03AB Upsilondieresishooksymbolgreek;03D4 Upsilonhooksymbol;03D2 Upsilontonos;038E Uring;016E Ushortcyrillic;040E Usmall;F775 Ustraightcyrillic;04AE Ustraightstrokecyrillic;04B0 Utilde;0168 Utildeacute;1E78 Utildebelow;1E74 V;0056 Vcircle;24CB Vdotbelow;1E7E Vecyrillic;0412 Vewarmenian;054E Vhook;01B2 Vmonospace;FF36 Voarmenian;0548 Vsmall;F776 Vtilde;1E7C W;0057 Wacute;1E82 Wcircle;24CC Wcircumflex;0174 Wdieresis;1E84 Wdotaccent;1E86 Wdotbelow;1E88 Wgrave;1E80 Wmonospace;FF37 Wsmall;F777 X;0058 Xcircle;24CD Xdieresis;1E8C Xdotaccent;1E8A Xeharmenian;053D Xi;039E Xmonospace;FF38 Xsmall;F778 Y;0059 Yacute;00DD Yacutesmall;F7FD Yatcyrillic;0462 Ycircle;24CE Ycircumflex;0176 Ydieresis;0178 Ydieresissmall;F7FF Ydotaccent;1E8E Ydotbelow;1EF4 Yericyrillic;042B Yerudieresiscyrillic;04F8 Ygrave;1EF2 Yhook;01B3 Yhookabove;1EF6 Yiarmenian;0545 Yicyrillic;0407 Yiwnarmenian;0552 Ymonospace;FF39 Ysmall;F779 Ytilde;1EF8 Yusbigcyrillic;046A Yusbigiotifiedcyrillic;046C Yuslittlecyrillic;0466 Yuslittleiotifiedcyrillic;0468 Z;005A Zaarmenian;0536 Zacute;0179 Zcaron;017D Zcaronsmall;F6FF Zcircle;24CF Zcircumflex;1E90 Zdot;017B Zdotaccent;017B Zdotbelow;1E92 Zecyrillic;0417 Zedescendercyrillic;0498 Zedieresiscyrillic;04DE Zeta;0396 Zhearmenian;053A Zhebrevecyrillic;04C1 Zhecyrillic;0416 Zhedescendercyrillic;0496 Zhedieresiscyrillic;04DC Zlinebelow;1E94 Zmonospace;FF3A Zsmall;F77A Zstroke;01B5 a;0061 aabengali;0986 aacute;00E1 aadeva;0906 aagujarati;0A86 aagurmukhi;0A06 aamatragurmukhi;0A3E aarusquare;3303 aavowelsignbengali;09BE aavowelsigndeva;093E aavowelsigngujarati;0ABE abbreviationmarkarmenian;055F abbreviationsigndeva;0970 abengali;0985 abopomofo;311A abreve;0103 abreveacute;1EAF abrevecyrillic;04D1 abrevedotbelow;1EB7 abrevegrave;1EB1 abrevehookabove;1EB3 abrevetilde;1EB5 acaron;01CE acircle;24D0 acircumflex;00E2 acircumflexacute;1EA5 acircumflexdotbelow;1EAD acircumflexgrave;1EA7 acircumflexhookabove;1EA9 acircumflextilde;1EAB acute;00B4 acutebelowcmb;0317 acutecmb;0301 acutecomb;0301 acutedeva;0954 acutelowmod;02CF acutetonecmb;0341 acyrillic;0430 adblgrave;0201 addakgurmukhi;0A71 adeva;0905 adieresis;00E4 adieresiscyrillic;04D3 adieresismacron;01DF adotbelow;1EA1 adotmacron;01E1 ae;00E6 aeacute;01FD aekorean;3150 aemacron;01E3 afii00208;2015 afii08941;20A4 afii10017;0410 afii10018;0411 afii10019;0412 afii10020;0413 afii10021;0414 afii10022;0415 afii10023;0401 afii10024;0416 afii10025;0417 afii10026;0418 afii10027;0419 afii10028;041A afii10029;041B afii10030;041C afii10031;041D afii10032;041E afii10033;041F afii10034;0420 afii10035;0421 afii10036;0422 afii10037;0423 afii10038;0424 afii10039;0425 afii10040;0426 afii10041;0427 afii10042;0428 afii10043;0429 afii10044;042A afii10045;042B afii10046;042C afii10047;042D afii10048;042E afii10049;042F afii10050;0490 afii10051;0402 afii10052;0403 afii10053;0404 afii10054;0405 afii10055;0406 afii10056;0407 afii10057;0408 afii10058;0409 afii10059;040A afii10060;040B afii10061;040C afii10062;040E afii10063;F6C4 afii10064;F6C5 afii10065;0430 afii10066;0431 afii10067;0432 afii10068;0433 afii10069;0434 afii10070;0435 afii10071;0451 afii10072;0436 afii10073;0437 afii10074;0438 afii10075;0439 afii10076;043A afii10077;043B afii10078;043C afii10079;043D afii10080;043E afii10081;043F afii10082;0440 afii10083;0441 afii10084;0442 afii10085;0443 afii10086;0444 afii10087;0445 afii10088;0446 afii10089;0447 afii10090;0448 afii10091;0449 afii10092;044A afii10093;044B afii10094;044C afii10095;044D afii10096;044E afii10097;044F afii10098;0491 afii10099;0452 afii10100;0453 afii10101;0454 afii10102;0455 afii10103;0456 afii10104;0457 afii10105;0458 afii10106;0459 afii10107;045A afii10108;045B afii10109;045C afii10110;045E afii10145;040F afii10146;0462 afii10147;0472 afii10148;0474 afii10192;F6C6 afii10193;045F afii10194;0463 afii10195;0473 afii10196;0475 afii10831;F6C7 afii10832;F6C8 afii10846;04D9 afii299;200E afii300;200F afii301;200D afii57381;066A afii57388;060C afii57392;0660 afii57393;0661 afii57394;0662 afii57395;0663 afii57396;0664 afii57397;0665 afii57398;0666 afii57399;0667 afii57400;0668 afii57401;0669 afii57403;061B afii57407;061F afii57409;0621 afii57410;0622 afii57411;0623 afii57412;0624 afii57413;0625 afii57414;0626 afii57415;0627 afii57416;0628 afii57417;0629 afii57418;062A afii57419;062B afii57420;062C afii57421;062D afii57422;062E afii57423;062F afii57424;0630 afii57425;0631 afii57426;0632 afii57427;0633 afii57428;0634 afii57429;0635 afii57430;0636 afii57431;0637 afii57432;0638 afii57433;0639 afii57434;063A afii57440;0640 afii57441;0641 afii57442;0642 afii57443;0643 afii57444;0644 afii57445;0645 afii57446;0646 afii57448;0648 afii57449;0649 afii57450;064A afii57451;064B afii57452;064C afii57453;064D afii57454;064E afii57455;064F afii57456;0650 afii57457;0651 afii57458;0652 afii57470;0647 afii57505;06A4 afii57506;067E afii57507;0686 afii57508;0698 afii57509;06AF afii57511;0679 afii57512;0688 afii57513;0691 afii57514;06BA afii57519;06D2 afii57534;06D5 afii57636;20AA afii57645;05BE afii57658;05C3 afii57664;05D0 afii57665;05D1 afii57666;05D2 afii57667;05D3 afii57668;05D4 afii57669;05D5 afii57670;05D6 afii57671;05D7 afii57672;05D8 afii57673;05D9 afii57674;05DA afii57675;05DB afii57676;05DC afii57677;05DD afii57678;05DE afii57679;05DF afii57680;05E0 afii57681;05E1 afii57682;05E2 afii57683;05E3 afii57684;05E4 afii57685;05E5 afii57686;05E6 afii57687;05E7 afii57688;05E8 afii57689;05E9 afii57690;05EA afii57694;FB2A afii57695;FB2B afii57700;FB4B afii57705;FB1F afii57716;05F0 afii57717;05F1 afii57718;05F2 afii57723;FB35 afii57793;05B4 afii57794;05B5 afii57795;05B6 afii57796;05BB afii57797;05B8 afii57798;05B7 afii57799;05B0 afii57800;05B2 afii57801;05B1 afii57802;05B3 afii57803;05C2 afii57804;05C1 afii57806;05B9 afii57807;05BC afii57839;05BD afii57841;05BF afii57842;05C0 afii57929;02BC afii61248;2105 afii61289;2113 afii61352;2116 afii61573;202C afii61574;202D afii61575;202E afii61664;200C afii63167;066D afii64937;02BD agrave;00E0 agujarati;0A85 agurmukhi;0A05 ahiragana;3042 ahookabove;1EA3 aibengali;0990 aibopomofo;311E aideva;0910 aiecyrillic;04D5 aigujarati;0A90 aigurmukhi;0A10 aimatragurmukhi;0A48 ainarabic;0639 ainfinalarabic;FECA aininitialarabic;FECB ainmedialarabic;FECC ainvertedbreve;0203 aivowelsignbengali;09C8 aivowelsigndeva;0948 aivowelsigngujarati;0AC8 akatakana;30A2 akatakanahalfwidth;FF71 akorean;314F alef;05D0 alefarabic;0627 alefdageshhebrew;FB30 aleffinalarabic;FE8E alefhamzaabovearabic;0623 alefhamzaabovefinalarabic;FE84 alefhamzabelowarabic;0625 alefhamzabelowfinalarabic;FE88 alefhebrew;05D0 aleflamedhebrew;FB4F alefmaddaabovearabic;0622 alefmaddaabovefinalarabic;FE82 alefmaksuraarabic;0649 alefmaksurafinalarabic;FEF0 alefmaksurainitialarabic;FEF3 alefmaksuramedialarabic;FEF4 alefpatahhebrew;FB2E alefqamatshebrew;FB2F aleph;2135 allequal;224C alpha;03B1 alphatonos;03AC amacron;0101 amonospace;FF41 ampersand;0026 ampersandmonospace;FF06 ampersandsmall;F726 amsquare;33C2 anbopomofo;3122 angbopomofo;3124 angkhankhuthai;0E5A angle;2220 anglebracketleft;3008 anglebracketleftvertical;FE3F anglebracketright;3009 anglebracketrightvertical;FE40 angleleft;2329 angleright;232A angstrom;212B anoteleia;0387 anudattadeva;0952 anusvarabengali;0982 anusvaradeva;0902 anusvaragujarati;0A82 aogonek;0105 apaatosquare;3300 aparen;249C apostrophearmenian;055A apostrophemod;02BC apple;F8FF approaches;2250 approxequal;2248 approxequalorimage;2252 approximatelyequal;2245 araeaekorean;318E araeakorean;318D arc;2312 arighthalfring;1E9A aring;00E5 aringacute;01FB aringbelow;1E01 arrowboth;2194 arrowdashdown;21E3 arrowdashleft;21E0 arrowdashright;21E2 arrowdashup;21E1 arrowdblboth;21D4 arrowdbldown;21D3 arrowdblleft;21D0 arrowdblright;21D2 arrowdblup;21D1 arrowdown;2193 arrowdownleft;2199 arrowdownright;2198 arrowdownwhite;21E9 arrowheaddownmod;02C5 arrowheadleftmod;02C2 arrowheadrightmod;02C3 arrowheadupmod;02C4 arrowhorizex;F8E7 arrowleft;2190 arrowleftdbl;21D0 arrowleftdblstroke;21CD arrowleftoverright;21C6 arrowleftwhite;21E6 arrowright;2192 arrowrightdblstroke;21CF arrowrightheavy;279E arrowrightoverleft;21C4 arrowrightwhite;21E8 arrowtableft;21E4 arrowtabright;21E5 arrowup;2191 arrowupdn;2195 arrowupdnbse;21A8 arrowupdownbase;21A8 arrowupleft;2196 arrowupleftofdown;21C5 arrowupright;2197 arrowupwhite;21E7 arrowvertex;F8E6 asciicircum;005E asciicircummonospace;FF3E asciitilde;007E asciitildemonospace;FF5E ascript;0251 ascriptturned;0252 asmallhiragana;3041 asmallkatakana;30A1 asmallkatakanahalfwidth;FF67 asterisk;002A asteriskaltonearabic;066D asteriskarabic;066D asteriskmath;2217 asteriskmonospace;FF0A asterisksmall;FE61 asterism;2042 asuperior;F6E9 asymptoticallyequal;2243 at;0040 atilde;00E3 atmonospace;FF20 atsmall;FE6B aturned;0250 aubengali;0994 aubopomofo;3120 audeva;0914 augujarati;0A94 augurmukhi;0A14 aulengthmarkbengali;09D7 aumatragurmukhi;0A4C auvowelsignbengali;09CC auvowelsigndeva;094C auvowelsigngujarati;0ACC avagrahadeva;093D aybarmenian;0561 ayin;05E2 ayinaltonehebrew;FB20 ayinhebrew;05E2 b;0062 babengali;09AC backslash;005C backslashmonospace;FF3C badeva;092C bagujarati;0AAC bagurmukhi;0A2C bahiragana;3070 bahtthai;0E3F bakatakana;30D0 bar;007C barmonospace;FF5C bbopomofo;3105 bcircle;24D1 bdotaccent;1E03 bdotbelow;1E05 beamedsixteenthnotes;266C because;2235 becyrillic;0431 beharabic;0628 behfinalarabic;FE90 behinitialarabic;FE91 behiragana;3079 behmedialarabic;FE92 behmeeminitialarabic;FC9F behmeemisolatedarabic;FC08 behnoonfinalarabic;FC6D bekatakana;30D9 benarmenian;0562 bet;05D1 beta;03B2 betasymbolgreek;03D0 betdagesh;FB31 betdageshhebrew;FB31 bethebrew;05D1 betrafehebrew;FB4C bhabengali;09AD bhadeva;092D bhagujarati;0AAD bhagurmukhi;0A2D bhook;0253 bihiragana;3073 bikatakana;30D3 bilabialclick;0298 bindigurmukhi;0A02 birusquare;3331 blackcircle;25CF blackdiamond;25C6 blackdownpointingtriangle;25BC blackleftpointingpointer;25C4 blackleftpointingtriangle;25C0 blacklenticularbracketleft;3010 blacklenticularbracketleftvertical;FE3B blacklenticularbracketright;3011 blacklenticularbracketrightvertical;FE3C blacklowerlefttriangle;25E3 blacklowerrighttriangle;25E2 blackrectangle;25AC blackrightpointingpointer;25BA blackrightpointingtriangle;25B6 blacksmallsquare;25AA blacksmilingface;263B blacksquare;25A0 blackstar;2605 blackupperlefttriangle;25E4 blackupperrighttriangle;25E5 blackuppointingsmalltriangle;25B4 blackuppointingtriangle;25B2 blank;2423 blinebelow;1E07 block;2588 bmonospace;FF42 bobaimaithai;0E1A bohiragana;307C bokatakana;30DC bparen;249D bqsquare;33C3 braceex;F8F4 braceleft;007B braceleftbt;F8F3 braceleftmid;F8F2 braceleftmonospace;FF5B braceleftsmall;FE5B bracelefttp;F8F1 braceleftvertical;FE37 braceright;007D bracerightbt;F8FE bracerightmid;F8FD bracerightmonospace;FF5D bracerightsmall;FE5C bracerighttp;F8FC bracerightvertical;FE38 bracketleft;005B bracketleftbt;F8F0 bracketleftex;F8EF bracketleftmonospace;FF3B bracketlefttp;F8EE bracketright;005D bracketrightbt;F8FB bracketrightex;F8FA bracketrightmonospace;FF3D bracketrighttp;F8F9 breve;02D8 brevebelowcmb;032E brevecmb;0306 breveinvertedbelowcmb;032F breveinvertedcmb;0311 breveinverteddoublecmb;0361 bridgebelowcmb;032A bridgeinvertedbelowcmb;033A brokenbar;00A6 bstroke;0180 bsuperior;F6EA btopbar;0183 buhiragana;3076 bukatakana;30D6 bullet;2022 bulletinverse;25D8 bulletoperator;2219 bullseye;25CE c;0063 caarmenian;056E cabengali;099A cacute;0107 cadeva;091A cagujarati;0A9A cagurmukhi;0A1A calsquare;3388 candrabindubengali;0981 candrabinducmb;0310 candrabindudeva;0901 candrabindugujarati;0A81 capslock;21EA careof;2105 caron;02C7 caronbelowcmb;032C caroncmb;030C carriagereturn;21B5 cbopomofo;3118 ccaron;010D ccedilla;00E7 ccedillaacute;1E09 ccircle;24D2 ccircumflex;0109 ccurl;0255 cdot;010B cdotaccent;010B cdsquare;33C5 cedilla;00B8 cedillacmb;0327 cent;00A2 centigrade;2103 centinferior;F6DF centmonospace;FFE0 centoldstyle;F7A2 centsuperior;F6E0 chaarmenian;0579 chabengali;099B chadeva;091B chagujarati;0A9B chagurmukhi;0A1B chbopomofo;3114 cheabkhasiancyrillic;04BD checkmark;2713 checyrillic;0447 chedescenderabkhasiancyrillic;04BF chedescendercyrillic;04B7 chedieresiscyrillic;04F5 cheharmenian;0573 chekhakassiancyrillic;04CC cheverticalstrokecyrillic;04B9 chi;03C7 chieuchacirclekorean;3277 chieuchaparenkorean;3217 chieuchcirclekorean;3269 chieuchkorean;314A chieuchparenkorean;3209 chochangthai;0E0A chochanthai;0E08 chochingthai;0E09 chochoethai;0E0C chook;0188 cieucacirclekorean;3276 cieucaparenkorean;3216 cieuccirclekorean;3268 cieuckorean;3148 cieucparenkorean;3208 cieucuparenkorean;321C circle;25CB circlemultiply;2297 circleot;2299 circleplus;2295 circlepostalmark;3036 circlewithlefthalfblack;25D0 circlewithrighthalfblack;25D1 circumflex;02C6 circumflexbelowcmb;032D circumflexcmb;0302 clear;2327 clickalveolar;01C2 clickdental;01C0 clicklateral;01C1 clickretroflex;01C3 club;2663 clubsuitblack;2663 clubsuitwhite;2667 cmcubedsquare;33A4 cmonospace;FF43 cmsquaredsquare;33A0 coarmenian;0581 colon;003A colonmonetary;20A1 colonmonospace;FF1A colonsign;20A1 colonsmall;FE55 colontriangularhalfmod;02D1 colontriangularmod;02D0 comma;002C commaabovecmb;0313 commaaboverightcmb;0315 commaaccent;F6C3 commaarabic;060C commaarmenian;055D commainferior;F6E1 commamonospace;FF0C commareversedabovecmb;0314 commareversedmod;02BD commasmall;FE50 commasuperior;F6E2 commaturnedabovecmb;0312 commaturnedmod;02BB compass;263C congruent;2245 contourintegral;222E control;2303 controlACK;0006 controlBEL;0007 controlBS;0008 controlCAN;0018 controlCR;000D controlDC1;0011 controlDC2;0012 controlDC3;0013 controlDC4;0014 controlDEL;007F controlDLE;0010 controlEM;0019 controlENQ;0005 controlEOT;0004 controlESC;001B controlETB;0017 controlETX;0003 controlFF;000C controlFS;001C controlGS;001D controlHT;0009 controlLF;000A controlNAK;0015 controlRS;001E controlSI;000F controlSO;000E controlSOT;0002 controlSTX;0001 controlSUB;001A controlSYN;0016 controlUS;001F controlVT;000B copyright;00A9 copyrightsans;F8E9 copyrightserif;F6D9 cornerbracketleft;300C cornerbracketlefthalfwidth;FF62 cornerbracketleftvertical;FE41 cornerbracketright;300D cornerbracketrighthalfwidth;FF63 cornerbracketrightvertical;FE42 corporationsquare;337F cosquare;33C7 coverkgsquare;33C6 cparen;249E cruzeiro;20A2 cstretched;0297 curlyand;22CF curlyor;22CE currency;00A4 cyrBreve;F6D1 cyrFlex;F6D2 cyrbreve;F6D4 cyrflex;F6D5 d;0064 daarmenian;0564 dabengali;09A6 dadarabic;0636 dadeva;0926 dadfinalarabic;FEBE dadinitialarabic;FEBF dadmedialarabic;FEC0 dagesh;05BC dageshhebrew;05BC dagger;2020 daggerdbl;2021 dagujarati;0AA6 dagurmukhi;0A26 dahiragana;3060 dakatakana;30C0 dalarabic;062F dalet;05D3 daletdagesh;FB33 daletdageshhebrew;FB33 dalethatafpatah;05D3 05B2 dalethatafpatahhebrew;05D3 05B2 dalethatafsegol;05D3 05B1 dalethatafsegolhebrew;05D3 05B1 dalethebrew;05D3 dalethiriq;05D3 05B4 dalethiriqhebrew;05D3 05B4 daletholam;05D3 05B9 daletholamhebrew;05D3 05B9 daletpatah;05D3 05B7 daletpatahhebrew;05D3 05B7 daletqamats;05D3 05B8 daletqamatshebrew;05D3 05B8 daletqubuts;05D3 05BB daletqubutshebrew;05D3 05BB daletsegol;05D3 05B6 daletsegolhebrew;05D3 05B6 daletsheva;05D3 05B0 daletshevahebrew;05D3 05B0 dalettsere;05D3 05B5 dalettserehebrew;05D3 05B5 dalfinalarabic;FEAA dammaarabic;064F dammalowarabic;064F dammatanaltonearabic;064C dammatanarabic;064C danda;0964 dargahebrew;05A7 dargalefthebrew;05A7 dasiapneumatacyrilliccmb;0485 dblGrave;F6D3 dblanglebracketleft;300A dblanglebracketleftvertical;FE3D dblanglebracketright;300B dblanglebracketrightvertical;FE3E dblarchinvertedbelowcmb;032B dblarrowleft;21D4 dblarrowright;21D2 dbldanda;0965 dblgrave;F6D6 dblgravecmb;030F dblintegral;222C dbllowline;2017 dbllowlinecmb;0333 dbloverlinecmb;033F dblprimemod;02BA dblverticalbar;2016 dblverticallineabovecmb;030E dbopomofo;3109 dbsquare;33C8 dcaron;010F dcedilla;1E11 dcircle;24D3 dcircumflexbelow;1E13 dcroat;0111 ddabengali;09A1 ddadeva;0921 ddagujarati;0AA1 ddagurmukhi;0A21 ddalarabic;0688 ddalfinalarabic;FB89 dddhadeva;095C ddhabengali;09A2 ddhadeva;0922 ddhagujarati;0AA2 ddhagurmukhi;0A22 ddotaccent;1E0B ddotbelow;1E0D decimalseparatorarabic;066B decimalseparatorpersian;066B decyrillic;0434 degree;00B0 dehihebrew;05AD dehiragana;3067 deicoptic;03EF dekatakana;30C7 deleteleft;232B deleteright;2326 delta;03B4 deltaturned;018D denominatorminusonenumeratorbengali;09F8 dezh;02A4 dhabengali;09A7 dhadeva;0927 dhagujarati;0AA7 dhagurmukhi;0A27 dhook;0257 dialytikatonos;0385 dialytikatonoscmb;0344 diamond;2666 diamondsuitwhite;2662 dieresis;00A8 dieresisacute;F6D7 dieresisbelowcmb;0324 dieresiscmb;0308 dieresisgrave;F6D8 dieresistonos;0385 dihiragana;3062 dikatakana;30C2 dittomark;3003 divide;00F7 divides;2223 divisionslash;2215 djecyrillic;0452 dkshade;2593 dlinebelow;1E0F dlsquare;3397 dmacron;0111 dmonospace;FF44 dnblock;2584 dochadathai;0E0E dodekthai;0E14 dohiragana;3069 dokatakana;30C9 dollar;0024 dollarinferior;F6E3 dollarmonospace;FF04 dollaroldstyle;F724 dollarsmall;FE69 dollarsuperior;F6E4 dong;20AB dorusquare;3326 dotaccent;02D9 dotaccentcmb;0307 dotbelowcmb;0323 dotbelowcomb;0323 dotkatakana;30FB dotlessi;0131 dotlessj;F6BE dotlessjstrokehook;0284 dotmath;22C5 dottedcircle;25CC doubleyodpatah;FB1F doubleyodpatahhebrew;FB1F downtackbelowcmb;031E downtackmod;02D5 dparen;249F dsuperior;F6EB dtail;0256 dtopbar;018C duhiragana;3065 dukatakana;30C5 dz;01F3 dzaltone;02A3 dzcaron;01C6 dzcurl;02A5 dzeabkhasiancyrillic;04E1 dzecyrillic;0455 dzhecyrillic;045F e;0065 eacute;00E9 earth;2641 ebengali;098F ebopomofo;311C ebreve;0115 ecandradeva;090D ecandragujarati;0A8D ecandravowelsigndeva;0945 ecandravowelsigngujarati;0AC5 ecaron;011B ecedillabreve;1E1D echarmenian;0565 echyiwnarmenian;0587 ecircle;24D4 ecircumflex;00EA ecircumflexacute;1EBF ecircumflexbelow;1E19 ecircumflexdotbelow;1EC7 ecircumflexgrave;1EC1 ecircumflexhookabove;1EC3 ecircumflextilde;1EC5 ecyrillic;0454 edblgrave;0205 edeva;090F edieresis;00EB edot;0117 edotaccent;0117 edotbelow;1EB9 eegurmukhi;0A0F eematragurmukhi;0A47 efcyrillic;0444 egrave;00E8 egujarati;0A8F eharmenian;0567 ehbopomofo;311D ehiragana;3048 ehookabove;1EBB eibopomofo;311F eight;0038 eightarabic;0668 eightbengali;09EE eightcircle;2467 eightcircleinversesansserif;2791 eightdeva;096E eighteencircle;2471 eighteenparen;2485 eighteenperiod;2499 eightgujarati;0AEE eightgurmukhi;0A6E eighthackarabic;0668 eighthangzhou;3028 eighthnotebeamed;266B eightideographicparen;3227 eightinferior;2088 eightmonospace;FF18 eightoldstyle;F738 eightparen;247B eightperiod;248F eightpersian;06F8 eightroman;2177 eightsuperior;2078 eightthai;0E58 einvertedbreve;0207 eiotifiedcyrillic;0465 ekatakana;30A8 ekatakanahalfwidth;FF74 ekonkargurmukhi;0A74 ekorean;3154 elcyrillic;043B element;2208 elevencircle;246A elevenparen;247E elevenperiod;2492 elevenroman;217A ellipsis;2026 ellipsisvertical;22EE emacron;0113 emacronacute;1E17 emacrongrave;1E15 emcyrillic;043C emdash;2014 emdashvertical;FE31 emonospace;FF45 emphasismarkarmenian;055B emptyset;2205 enbopomofo;3123 encyrillic;043D endash;2013 endashvertical;FE32 endescendercyrillic;04A3 eng;014B engbopomofo;3125 enghecyrillic;04A5 enhookcyrillic;04C8 enspace;2002 eogonek;0119 eokorean;3153 eopen;025B eopenclosed;029A eopenreversed;025C eopenreversedclosed;025E eopenreversedhook;025D eparen;24A0 epsilon;03B5 epsilontonos;03AD equal;003D equalmonospace;FF1D equalsmall;FE66 equalsuperior;207C equivalence;2261 erbopomofo;3126 ercyrillic;0440 ereversed;0258 ereversedcyrillic;044D escyrillic;0441 esdescendercyrillic;04AB esh;0283 eshcurl;0286 eshortdeva;090E eshortvowelsigndeva;0946 eshreversedloop;01AA eshsquatreversed;0285 esmallhiragana;3047 esmallkatakana;30A7 esmallkatakanahalfwidth;FF6A estimated;212E esuperior;F6EC eta;03B7 etarmenian;0568 etatonos;03AE eth;00F0 etilde;1EBD etildebelow;1E1B etnahtafoukhhebrew;0591 etnahtafoukhlefthebrew;0591 etnahtahebrew;0591 etnahtalefthebrew;0591 eturned;01DD eukorean;3161 euro;20AC evowelsignbengali;09C7 evowelsigndeva;0947 evowelsigngujarati;0AC7 exclam;0021 exclamarmenian;055C exclamdbl;203C exclamdown;00A1 exclamdownsmall;F7A1 exclammonospace;FF01 exclamsmall;F721 existential;2203 ezh;0292 ezhcaron;01EF ezhcurl;0293 ezhreversed;01B9 ezhtail;01BA f;0066 fadeva;095E fagurmukhi;0A5E fahrenheit;2109 fathaarabic;064E fathalowarabic;064E fathatanarabic;064B fbopomofo;3108 fcircle;24D5 fdotaccent;1E1F feharabic;0641 feharmenian;0586 fehfinalarabic;FED2 fehinitialarabic;FED3 fehmedialarabic;FED4 feicoptic;03E5 female;2640 ff;FB00 ffi;FB03 ffl;FB04 fi;FB01 fifteencircle;246E fifteenparen;2482 fifteenperiod;2496 figuredash;2012 filledbox;25A0 filledrect;25AC finalkaf;05DA finalkafdagesh;FB3A finalkafdageshhebrew;FB3A finalkafhebrew;05DA finalkafqamats;05DA 05B8 finalkafqamatshebrew;05DA 05B8 finalkafsheva;05DA 05B0 finalkafshevahebrew;05DA 05B0 finalmem;05DD finalmemhebrew;05DD finalnun;05DF finalnunhebrew;05DF finalpe;05E3 finalpehebrew;05E3 finaltsadi;05E5 finaltsadihebrew;05E5 firsttonechinese;02C9 fisheye;25C9 fitacyrillic;0473 five;0035 fivearabic;0665 fivebengali;09EB fivecircle;2464 fivecircleinversesansserif;278E fivedeva;096B fiveeighths;215D fivegujarati;0AEB fivegurmukhi;0A6B fivehackarabic;0665 fivehangzhou;3025 fiveideographicparen;3224 fiveinferior;2085 fivemonospace;FF15 fiveoldstyle;F735 fiveparen;2478 fiveperiod;248C fivepersian;06F5 fiveroman;2174 fivesuperior;2075 fivethai;0E55 fl;FB02 florin;0192 fmonospace;FF46 fmsquare;3399 fofanthai;0E1F fofathai;0E1D fongmanthai;0E4F forall;2200 four;0034 fourarabic;0664 fourbengali;09EA fourcircle;2463 fourcircleinversesansserif;278D fourdeva;096A fourgujarati;0AEA fourgurmukhi;0A6A fourhackarabic;0664 fourhangzhou;3024 fourideographicparen;3223 fourinferior;2084 fourmonospace;FF14 fournumeratorbengali;09F7 fouroldstyle;F734 fourparen;2477 fourperiod;248B fourpersian;06F4 fourroman;2173 foursuperior;2074 fourteencircle;246D fourteenparen;2481 fourteenperiod;2495 fourthai;0E54 fourthtonechinese;02CB fparen;24A1 fraction;2044 franc;20A3 g;0067 gabengali;0997 gacute;01F5 gadeva;0917 gafarabic;06AF gaffinalarabic;FB93 gafinitialarabic;FB94 gafmedialarabic;FB95 gagujarati;0A97 gagurmukhi;0A17 gahiragana;304C gakatakana;30AC gamma;03B3 gammalatinsmall;0263 gammasuperior;02E0 gangiacoptic;03EB gbopomofo;310D gbreve;011F gcaron;01E7 gcedilla;0123 gcircle;24D6 gcircumflex;011D gcommaaccent;0123 gdot;0121 gdotaccent;0121 gecyrillic;0433 gehiragana;3052 gekatakana;30B2 geometricallyequal;2251 gereshaccenthebrew;059C gereshhebrew;05F3 gereshmuqdamhebrew;059D germandbls;00DF gershayimaccenthebrew;059E gershayimhebrew;05F4 getamark;3013 ghabengali;0998 ghadarmenian;0572 ghadeva;0918 ghagujarati;0A98 ghagurmukhi;0A18 ghainarabic;063A ghainfinalarabic;FECE ghaininitialarabic;FECF ghainmedialarabic;FED0 ghemiddlehookcyrillic;0495 ghestrokecyrillic;0493 gheupturncyrillic;0491 ghhadeva;095A ghhagurmukhi;0A5A ghook;0260 ghzsquare;3393 gihiragana;304E gikatakana;30AE gimarmenian;0563 gimel;05D2 gimeldagesh;FB32 gimeldageshhebrew;FB32 gimelhebrew;05D2 gjecyrillic;0453 glottalinvertedstroke;01BE glottalstop;0294 glottalstopinverted;0296 glottalstopmod;02C0 glottalstopreversed;0295 glottalstopreversedmod;02C1 glottalstopreversedsuperior;02E4 glottalstopstroke;02A1 glottalstopstrokereversed;02A2 gmacron;1E21 gmonospace;FF47 gohiragana;3054 gokatakana;30B4 gparen;24A2 gpasquare;33AC gradient;2207 grave;0060 gravebelowcmb;0316 gravecmb;0300 gravecomb;0300 gravedeva;0953 gravelowmod;02CE gravemonospace;FF40 gravetonecmb;0340 greater;003E greaterequal;2265 greaterequalorless;22DB greatermonospace;FF1E greaterorequivalent;2273 greaterorless;2277 greateroverequal;2267 greatersmall;FE65 gscript;0261 gstroke;01E5 guhiragana;3050 guillemotleft;00AB guillemotright;00BB guilsinglleft;2039 guilsinglright;203A gukatakana;30B0 guramusquare;3318 gysquare;33C9 h;0068 haabkhasiancyrillic;04A9 haaltonearabic;06C1 habengali;09B9 hadescendercyrillic;04B3 hadeva;0939 hagujarati;0AB9 hagurmukhi;0A39 haharabic;062D hahfinalarabic;FEA2 hahinitialarabic;FEA3 hahiragana;306F hahmedialarabic;FEA4 haitusquare;332A hakatakana;30CF hakatakanahalfwidth;FF8A halantgurmukhi;0A4D hamzaarabic;0621 hamzadammaarabic;0621 064F hamzadammatanarabic;0621 064C hamzafathaarabic;0621 064E hamzafathatanarabic;0621 064B hamzalowarabic;0621 hamzalowkasraarabic;0621 0650 hamzalowkasratanarabic;0621 064D hamzasukunarabic;0621 0652 hangulfiller;3164 hardsigncyrillic;044A harpoonleftbarbup;21BC harpoonrightbarbup;21C0 hasquare;33CA hatafpatah;05B2 hatafpatah16;05B2 hatafpatah23;05B2 hatafpatah2f;05B2 hatafpatahhebrew;05B2 hatafpatahnarrowhebrew;05B2 hatafpatahquarterhebrew;05B2 hatafpatahwidehebrew;05B2 hatafqamats;05B3 hatafqamats1b;05B3 hatafqamats28;05B3 hatafqamats34;05B3 hatafqamatshebrew;05B3 hatafqamatsnarrowhebrew;05B3 hatafqamatsquarterhebrew;05B3 hatafqamatswidehebrew;05B3 hatafsegol;05B1 hatafsegol17;05B1 hatafsegol24;05B1 hatafsegol30;05B1 hatafsegolhebrew;05B1 hatafsegolnarrowhebrew;05B1 hatafsegolquarterhebrew;05B1 hatafsegolwidehebrew;05B1 hbar;0127 hbopomofo;310F hbrevebelow;1E2B hcedilla;1E29 hcircle;24D7 hcircumflex;0125 hdieresis;1E27 hdotaccent;1E23 hdotbelow;1E25 he;05D4 heart;2665 heartsuitblack;2665 heartsuitwhite;2661 hedagesh;FB34 hedageshhebrew;FB34 hehaltonearabic;06C1 heharabic;0647 hehebrew;05D4 hehfinalaltonearabic;FBA7 hehfinalalttwoarabic;FEEA hehfinalarabic;FEEA hehhamzaabovefinalarabic;FBA5 hehhamzaaboveisolatedarabic;FBA4 hehinitialaltonearabic;FBA8 hehinitialarabic;FEEB hehiragana;3078 hehmedialaltonearabic;FBA9 hehmedialarabic;FEEC heiseierasquare;337B hekatakana;30D8 hekatakanahalfwidth;FF8D hekutaarusquare;3336 henghook;0267 herutusquare;3339 het;05D7 hethebrew;05D7 hhook;0266 hhooksuperior;02B1 hieuhacirclekorean;327B hieuhaparenkorean;321B hieuhcirclekorean;326D hieuhkorean;314E hieuhparenkorean;320D hihiragana;3072 hikatakana;30D2 hikatakanahalfwidth;FF8B hiriq;05B4 hiriq14;05B4 hiriq21;05B4 hiriq2d;05B4 hiriqhebrew;05B4 hiriqnarrowhebrew;05B4 hiriqquarterhebrew;05B4 hiriqwidehebrew;05B4 hlinebelow;1E96 hmonospace;FF48 hoarmenian;0570 hohipthai;0E2B hohiragana;307B hokatakana;30DB hokatakanahalfwidth;FF8E holam;05B9 holam19;05B9 holam26;05B9 holam32;05B9 holamhebrew;05B9 holamnarrowhebrew;05B9 holamquarterhebrew;05B9 holamwidehebrew;05B9 honokhukthai;0E2E hookabovecomb;0309 hookcmb;0309 hookpalatalizedbelowcmb;0321 hookretroflexbelowcmb;0322 hoonsquare;3342 horicoptic;03E9 horizontalbar;2015 horncmb;031B hotsprings;2668 house;2302 hparen;24A3 hsuperior;02B0 hturned;0265 huhiragana;3075 huiitosquare;3333 hukatakana;30D5 hukatakanahalfwidth;FF8C hungarumlaut;02DD hungarumlautcmb;030B hv;0195 hyphen;002D hypheninferior;F6E5 hyphenmonospace;FF0D hyphensmall;FE63 hyphensuperior;F6E6 hyphentwo;2010 i;0069 iacute;00ED iacyrillic;044F ibengali;0987 ibopomofo;3127 ibreve;012D icaron;01D0 icircle;24D8 icircumflex;00EE icyrillic;0456 idblgrave;0209 ideographearthcircle;328F ideographfirecircle;328B ideographicallianceparen;323F ideographiccallparen;323A ideographiccentrecircle;32A5 ideographicclose;3006 ideographiccomma;3001 ideographiccommaleft;FF64 ideographiccongratulationparen;3237 ideographiccorrectcircle;32A3 ideographicearthparen;322F ideographicenterpriseparen;323D ideographicexcellentcircle;329D ideographicfestivalparen;3240 ideographicfinancialcircle;3296 ideographicfinancialparen;3236 ideographicfireparen;322B ideographichaveparen;3232 ideographichighcircle;32A4 ideographiciterationmark;3005 ideographiclaborcircle;3298 ideographiclaborparen;3238 ideographicleftcircle;32A7 ideographiclowcircle;32A6 ideographicmedicinecircle;32A9 ideographicmetalparen;322E ideographicmoonparen;322A ideographicnameparen;3234 ideographicperiod;3002 ideographicprintcircle;329E ideographicreachparen;3243 ideographicrepresentparen;3239 ideographicresourceparen;323E ideographicrightcircle;32A8 ideographicsecretcircle;3299 ideographicselfparen;3242 ideographicsocietyparen;3233 ideographicspace;3000 ideographicspecialparen;3235 ideographicstockparen;3231 ideographicstudyparen;323B ideographicsunparen;3230 ideographicsuperviseparen;323C ideographicwaterparen;322C ideographicwoodparen;322D ideographiczero;3007 ideographmetalcircle;328E ideographmooncircle;328A ideographnamecircle;3294 ideographsuncircle;3290 ideographwatercircle;328C ideographwoodcircle;328D ideva;0907 idieresis;00EF idieresisacute;1E2F idieresiscyrillic;04E5 idotbelow;1ECB iebrevecyrillic;04D7 iecyrillic;0435 ieungacirclekorean;3275 ieungaparenkorean;3215 ieungcirclekorean;3267 ieungkorean;3147 ieungparenkorean;3207 igrave;00EC igujarati;0A87 igurmukhi;0A07 ihiragana;3044 ihookabove;1EC9 iibengali;0988 iicyrillic;0438 iideva;0908 iigujarati;0A88 iigurmukhi;0A08 iimatragurmukhi;0A40 iinvertedbreve;020B iishortcyrillic;0439 iivowelsignbengali;09C0 iivowelsigndeva;0940 iivowelsigngujarati;0AC0 ij;0133 ikatakana;30A4 ikatakanahalfwidth;FF72 ikorean;3163 ilde;02DC iluyhebrew;05AC imacron;012B imacroncyrillic;04E3 imageorapproximatelyequal;2253 imatragurmukhi;0A3F imonospace;FF49 increment;2206 infinity;221E iniarmenian;056B integral;222B integralbottom;2321 integralbt;2321 integralex;F8F5 integraltop;2320 integraltp;2320 intersection;2229 intisquare;3305 invbullet;25D8 invcircle;25D9 invsmileface;263B iocyrillic;0451 iogonek;012F iota;03B9 iotadieresis;03CA iotadieresistonos;0390 iotalatin;0269 iotatonos;03AF iparen;24A4 irigurmukhi;0A72 ismallhiragana;3043 ismallkatakana;30A3 ismallkatakanahalfwidth;FF68 issharbengali;09FA istroke;0268 isuperior;F6ED iterationhiragana;309D iterationkatakana;30FD itilde;0129 itildebelow;1E2D iubopomofo;3129 iucyrillic;044E ivowelsignbengali;09BF ivowelsigndeva;093F ivowelsigngujarati;0ABF izhitsacyrillic;0475 izhitsadblgravecyrillic;0477 j;006A jaarmenian;0571 jabengali;099C jadeva;091C jagujarati;0A9C jagurmukhi;0A1C jbopomofo;3110 jcaron;01F0 jcircle;24D9 jcircumflex;0135 jcrossedtail;029D jdotlessstroke;025F jecyrillic;0458 jeemarabic;062C jeemfinalarabic;FE9E jeeminitialarabic;FE9F jeemmedialarabic;FEA0 jeharabic;0698 jehfinalarabic;FB8B jhabengali;099D jhadeva;091D jhagujarati;0A9D jhagurmukhi;0A1D jheharmenian;057B jis;3004 jmonospace;FF4A jparen;24A5 jsuperior;02B2 k;006B kabashkircyrillic;04A1 kabengali;0995 kacute;1E31 kacyrillic;043A kadescendercyrillic;049B kadeva;0915 kaf;05DB kafarabic;0643 kafdagesh;FB3B kafdageshhebrew;FB3B kaffinalarabic;FEDA kafhebrew;05DB kafinitialarabic;FEDB kafmedialarabic;FEDC kafrafehebrew;FB4D kagujarati;0A95 kagurmukhi;0A15 kahiragana;304B kahookcyrillic;04C4 kakatakana;30AB kakatakanahalfwidth;FF76 kappa;03BA kappasymbolgreek;03F0 kapyeounmieumkorean;3171 kapyeounphieuphkorean;3184 kapyeounpieupkorean;3178 kapyeounssangpieupkorean;3179 karoriisquare;330D kashidaautoarabic;0640 kashidaautonosidebearingarabic;0640 kasmallkatakana;30F5 kasquare;3384 kasraarabic;0650 kasratanarabic;064D kastrokecyrillic;049F katahiraprolongmarkhalfwidth;FF70 kaverticalstrokecyrillic;049D kbopomofo;310E kcalsquare;3389 kcaron;01E9 kcedilla;0137 kcircle;24DA kcommaaccent;0137 kdotbelow;1E33 keharmenian;0584 kehiragana;3051 kekatakana;30B1 kekatakanahalfwidth;FF79 kenarmenian;056F kesmallkatakana;30F6 kgreenlandic;0138 khabengali;0996 khacyrillic;0445 khadeva;0916 khagujarati;0A96 khagurmukhi;0A16 khaharabic;062E khahfinalarabic;FEA6 khahinitialarabic;FEA7 khahmedialarabic;FEA8 kheicoptic;03E7 khhadeva;0959 khhagurmukhi;0A59 khieukhacirclekorean;3278 khieukhaparenkorean;3218 khieukhcirclekorean;326A khieukhkorean;314B khieukhparenkorean;320A khokhaithai;0E02 khokhonthai;0E05 khokhuatthai;0E03 khokhwaithai;0E04 khomutthai;0E5B khook;0199 khorakhangthai;0E06 khzsquare;3391 kihiragana;304D kikatakana;30AD kikatakanahalfwidth;FF77 kiroguramusquare;3315 kiromeetorusquare;3316 kirosquare;3314 kiyeokacirclekorean;326E kiyeokaparenkorean;320E kiyeokcirclekorean;3260 kiyeokkorean;3131 kiyeokparenkorean;3200 kiyeoksioskorean;3133 kjecyrillic;045C klinebelow;1E35 klsquare;3398 kmcubedsquare;33A6 kmonospace;FF4B kmsquaredsquare;33A2 kohiragana;3053 kohmsquare;33C0 kokaithai;0E01 kokatakana;30B3 kokatakanahalfwidth;FF7A kooposquare;331E koppacyrillic;0481 koreanstandardsymbol;327F koroniscmb;0343 kparen;24A6 kpasquare;33AA ksicyrillic;046F ktsquare;33CF kturned;029E kuhiragana;304F kukatakana;30AF kukatakanahalfwidth;FF78 kvsquare;33B8 kwsquare;33BE l;006C labengali;09B2 lacute;013A ladeva;0932 lagujarati;0AB2 lagurmukhi;0A32 lakkhangyaothai;0E45 lamaleffinalarabic;FEFC lamalefhamzaabovefinalarabic;FEF8 lamalefhamzaaboveisolatedarabic;FEF7 lamalefhamzabelowfinalarabic;FEFA lamalefhamzabelowisolatedarabic;FEF9 lamalefisolatedarabic;FEFB lamalefmaddaabovefinalarabic;FEF6 lamalefmaddaaboveisolatedarabic;FEF5 lamarabic;0644 lambda;03BB lambdastroke;019B lamed;05DC lameddagesh;FB3C lameddageshhebrew;FB3C lamedhebrew;05DC lamedholam;05DC 05B9 lamedholamdagesh;05DC 05B9 05BC lamedholamdageshhebrew;05DC 05B9 05BC lamedholamhebrew;05DC 05B9 lamfinalarabic;FEDE lamhahinitialarabic;FCCA laminitialarabic;FEDF lamjeeminitialarabic;FCC9 lamkhahinitialarabic;FCCB lamlamhehisolatedarabic;FDF2 lammedialarabic;FEE0 lammeemhahinitialarabic;FD88 lammeeminitialarabic;FCCC lammeemjeeminitialarabic;FEDF FEE4 FEA0 lammeemkhahinitialarabic;FEDF FEE4 FEA8 largecircle;25EF lbar;019A lbelt;026C lbopomofo;310C lcaron;013E lcedilla;013C lcircle;24DB lcircumflexbelow;1E3D lcommaaccent;013C ldot;0140 ldotaccent;0140 ldotbelow;1E37 ldotbelowmacron;1E39 leftangleabovecmb;031A lefttackbelowcmb;0318 less;003C lessequal;2264 lessequalorgreater;22DA lessmonospace;FF1C lessorequivalent;2272 lessorgreater;2276 lessoverequal;2266 lesssmall;FE64 lezh;026E lfblock;258C lhookretroflex;026D lira;20A4 liwnarmenian;056C lj;01C9 ljecyrillic;0459 ll;F6C0 lladeva;0933 llagujarati;0AB3 llinebelow;1E3B llladeva;0934 llvocalicbengali;09E1 llvocalicdeva;0961 llvocalicvowelsignbengali;09E3 llvocalicvowelsigndeva;0963 lmiddletilde;026B lmonospace;FF4C lmsquare;33D0 lochulathai;0E2C logicaland;2227 logicalnot;00AC logicalnotreversed;2310 logicalor;2228 lolingthai;0E25 longs;017F lowlinecenterline;FE4E lowlinecmb;0332 lowlinedashed;FE4D lozenge;25CA lparen;24A7 lslash;0142 lsquare;2113 lsuperior;F6EE ltshade;2591 luthai;0E26 lvocalicbengali;098C lvocalicdeva;090C lvocalicvowelsignbengali;09E2 lvocalicvowelsigndeva;0962 lxsquare;33D3 m;006D mabengali;09AE macron;00AF macronbelowcmb;0331 macroncmb;0304 macronlowmod;02CD macronmonospace;FFE3 macute;1E3F madeva;092E magujarati;0AAE magurmukhi;0A2E mahapakhhebrew;05A4 mahapakhlefthebrew;05A4 mahiragana;307E maichattawalowleftthai;F895 maichattawalowrightthai;F894 maichattawathai;0E4B maichattawaupperleftthai;F893 maieklowleftthai;F88C maieklowrightthai;F88B maiekthai;0E48 maiekupperleftthai;F88A maihanakatleftthai;F884 maihanakatthai;0E31 maitaikhuleftthai;F889 maitaikhuthai;0E47 maitholowleftthai;F88F maitholowrightthai;F88E maithothai;0E49 maithoupperleftthai;F88D maitrilowleftthai;F892 maitrilowrightthai;F891 maitrithai;0E4A maitriupperleftthai;F890 maiyamokthai;0E46 makatakana;30DE makatakanahalfwidth;FF8F male;2642 mansyonsquare;3347 maqafhebrew;05BE mars;2642 masoracirclehebrew;05AF masquare;3383 mbopomofo;3107 mbsquare;33D4 mcircle;24DC mcubedsquare;33A5 mdotaccent;1E41 mdotbelow;1E43 meemarabic;0645 meemfinalarabic;FEE2 meeminitialarabic;FEE3 meemmedialarabic;FEE4 meemmeeminitialarabic;FCD1 meemmeemisolatedarabic;FC48 meetorusquare;334D mehiragana;3081 meizierasquare;337E mekatakana;30E1 mekatakanahalfwidth;FF92 mem;05DE memdagesh;FB3E memdageshhebrew;FB3E memhebrew;05DE menarmenian;0574 merkhahebrew;05A5 merkhakefulahebrew;05A6 merkhakefulalefthebrew;05A6 merkhalefthebrew;05A5 mhook;0271 mhzsquare;3392 middledotkatakanahalfwidth;FF65 middot;00B7 mieumacirclekorean;3272 mieumaparenkorean;3212 mieumcirclekorean;3264 mieumkorean;3141 mieumpansioskorean;3170 mieumparenkorean;3204 mieumpieupkorean;316E mieumsioskorean;316F mihiragana;307F mikatakana;30DF mikatakanahalfwidth;FF90 minus;2212 minusbelowcmb;0320 minuscircle;2296 minusmod;02D7 minusplus;2213 minute;2032 miribaarusquare;334A mirisquare;3349 mlonglegturned;0270 mlsquare;3396 mmcubedsquare;33A3 mmonospace;FF4D mmsquaredsquare;339F mohiragana;3082 mohmsquare;33C1 mokatakana;30E2 mokatakanahalfwidth;FF93 molsquare;33D6 momathai;0E21 moverssquare;33A7 moverssquaredsquare;33A8 mparen;24A8 mpasquare;33AB mssquare;33B3 msuperior;F6EF mturned;026F mu;00B5 mu1;00B5 muasquare;3382 muchgreater;226B muchless;226A mufsquare;338C mugreek;03BC mugsquare;338D muhiragana;3080 mukatakana;30E0 mukatakanahalfwidth;FF91 mulsquare;3395 multiply;00D7 mumsquare;339B munahhebrew;05A3 munahlefthebrew;05A3 musicalnote;266A musicalnotedbl;266B musicflatsign;266D musicsharpsign;266F mussquare;33B2 muvsquare;33B6 muwsquare;33BC mvmegasquare;33B9 mvsquare;33B7 mwmegasquare;33BF mwsquare;33BD n;006E nabengali;09A8 nabla;2207 nacute;0144 nadeva;0928 nagujarati;0AA8 nagurmukhi;0A28 nahiragana;306A nakatakana;30CA nakatakanahalfwidth;FF85 napostrophe;0149 nasquare;3381 nbopomofo;310B nbspace;00A0 ncaron;0148 ncedilla;0146 ncircle;24DD ncircumflexbelow;1E4B ncommaaccent;0146 ndotaccent;1E45 ndotbelow;1E47 nehiragana;306D nekatakana;30CD nekatakanahalfwidth;FF88 newsheqelsign;20AA nfsquare;338B ngabengali;0999 ngadeva;0919 ngagujarati;0A99 ngagurmukhi;0A19 ngonguthai;0E07 nhiragana;3093 nhookleft;0272 nhookretroflex;0273 nieunacirclekorean;326F nieunaparenkorean;320F nieuncieuckorean;3135 nieuncirclekorean;3261 nieunhieuhkorean;3136 nieunkorean;3134 nieunpansioskorean;3168 nieunparenkorean;3201 nieunsioskorean;3167 nieuntikeutkorean;3166 nihiragana;306B nikatakana;30CB nikatakanahalfwidth;FF86 nikhahitleftthai;F899 nikhahitthai;0E4D nine;0039 ninearabic;0669 ninebengali;09EF ninecircle;2468 ninecircleinversesansserif;2792 ninedeva;096F ninegujarati;0AEF ninegurmukhi;0A6F ninehackarabic;0669 ninehangzhou;3029 nineideographicparen;3228 nineinferior;2089 ninemonospace;FF19 nineoldstyle;F739 nineparen;247C nineperiod;2490 ninepersian;06F9 nineroman;2178 ninesuperior;2079 nineteencircle;2472 nineteenparen;2486 nineteenperiod;249A ninethai;0E59 nj;01CC njecyrillic;045A nkatakana;30F3 nkatakanahalfwidth;FF9D nlegrightlong;019E nlinebelow;1E49 nmonospace;FF4E nmsquare;339A nnabengali;09A3 nnadeva;0923 nnagujarati;0AA3 nnagurmukhi;0A23 nnnadeva;0929 nohiragana;306E nokatakana;30CE nokatakanahalfwidth;FF89 nonbreakingspace;00A0 nonenthai;0E13 nonuthai;0E19 noonarabic;0646 noonfinalarabic;FEE6 noonghunnaarabic;06BA noonghunnafinalarabic;FB9F noonhehinitialarabic;FEE7 FEEC nooninitialarabic;FEE7 noonjeeminitialarabic;FCD2 noonjeemisolatedarabic;FC4B noonmedialarabic;FEE8 noonmeeminitialarabic;FCD5 noonmeemisolatedarabic;FC4E noonnoonfinalarabic;FC8D notcontains;220C notelement;2209 notelementof;2209 notequal;2260 notgreater;226F notgreaternorequal;2271 notgreaternorless;2279 notidentical;2262 notless;226E notlessnorequal;2270 notparallel;2226 notprecedes;2280 notsubset;2284 notsucceeds;2281 notsuperset;2285 nowarmenian;0576 nparen;24A9 nssquare;33B1 nsuperior;207F ntilde;00F1 nu;03BD nuhiragana;306C nukatakana;30CC nukatakanahalfwidth;FF87 nuktabengali;09BC nuktadeva;093C nuktagujarati;0ABC nuktagurmukhi;0A3C numbersign;0023 numbersignmonospace;FF03 numbersignsmall;FE5F numeralsigngreek;0374 numeralsignlowergreek;0375 numero;2116 nun;05E0 nundagesh;FB40 nundageshhebrew;FB40 nunhebrew;05E0 nvsquare;33B5 nwsquare;33BB nyabengali;099E nyadeva;091E nyagujarati;0A9E nyagurmukhi;0A1E o;006F oacute;00F3 oangthai;0E2D obarred;0275 obarredcyrillic;04E9 obarreddieresiscyrillic;04EB obengali;0993 obopomofo;311B obreve;014F ocandradeva;0911 ocandragujarati;0A91 ocandravowelsigndeva;0949 ocandravowelsigngujarati;0AC9 ocaron;01D2 ocircle;24DE ocircumflex;00F4 ocircumflexacute;1ED1 ocircumflexdotbelow;1ED9 ocircumflexgrave;1ED3 ocircumflexhookabove;1ED5 ocircumflextilde;1ED7 ocyrillic;043E odblacute;0151 odblgrave;020D odeva;0913 odieresis;00F6 odieresiscyrillic;04E7 odotbelow;1ECD oe;0153 oekorean;315A ogonek;02DB ogonekcmb;0328 ograve;00F2 ogujarati;0A93 oharmenian;0585 ohiragana;304A ohookabove;1ECF ohorn;01A1 ohornacute;1EDB ohorndotbelow;1EE3 ohorngrave;1EDD ohornhookabove;1EDF ohorntilde;1EE1 ohungarumlaut;0151 oi;01A3 oinvertedbreve;020F okatakana;30AA okatakanahalfwidth;FF75 okorean;3157 olehebrew;05AB omacron;014D omacronacute;1E53 omacrongrave;1E51 omdeva;0950 omega;03C9 omega1;03D6 omegacyrillic;0461 omegalatinclosed;0277 omegaroundcyrillic;047B omegatitlocyrillic;047D omegatonos;03CE omgujarati;0AD0 omicron;03BF omicrontonos;03CC omonospace;FF4F one;0031 onearabic;0661 onebengali;09E7 onecircle;2460 onecircleinversesansserif;278A onedeva;0967 onedotenleader;2024 oneeighth;215B onefitted;F6DC onegujarati;0AE7 onegurmukhi;0A67 onehackarabic;0661 onehalf;00BD onehangzhou;3021 oneideographicparen;3220 oneinferior;2081 onemonospace;FF11 onenumeratorbengali;09F4 oneoldstyle;F731 oneparen;2474 oneperiod;2488 onepersian;06F1 onequarter;00BC oneroman;2170 onesuperior;00B9 onethai;0E51 onethird;2153 oogonek;01EB oogonekmacron;01ED oogurmukhi;0A13 oomatragurmukhi;0A4B oopen;0254 oparen;24AA openbullet;25E6 option;2325 ordfeminine;00AA ordmasculine;00BA orthogonal;221F oshortdeva;0912 oshortvowelsigndeva;094A oslash;00F8 oslashacute;01FF osmallhiragana;3049 osmallkatakana;30A9 osmallkatakanahalfwidth;FF6B ostrokeacute;01FF osuperior;F6F0 otcyrillic;047F otilde;00F5 otildeacute;1E4D otildedieresis;1E4F oubopomofo;3121 overline;203E overlinecenterline;FE4A overlinecmb;0305 overlinedashed;FE49 overlinedblwavy;FE4C overlinewavy;FE4B overscore;00AF ovowelsignbengali;09CB ovowelsigndeva;094B ovowelsigngujarati;0ACB p;0070 paampssquare;3380 paasentosquare;332B pabengali;09AA pacute;1E55 padeva;092A pagedown;21DF pageup;21DE pagujarati;0AAA pagurmukhi;0A2A pahiragana;3071 paiyannoithai;0E2F pakatakana;30D1 palatalizationcyrilliccmb;0484 palochkacyrillic;04C0 pansioskorean;317F paragraph;00B6 parallel;2225 parenleft;0028 parenleftaltonearabic;FD3E parenleftbt;F8ED parenleftex;F8EC parenleftinferior;208D parenleftmonospace;FF08 parenleftsmall;FE59 parenleftsuperior;207D parenlefttp;F8EB parenleftvertical;FE35 parenright;0029 parenrightaltonearabic;FD3F parenrightbt;F8F8 parenrightex;F8F7 parenrightinferior;208E parenrightmonospace;FF09 parenrightsmall;FE5A parenrightsuperior;207E parenrighttp;F8F6 parenrightvertical;FE36 partialdiff;2202 paseqhebrew;05C0 pashtahebrew;0599 pasquare;33A9 patah;05B7 patah11;05B7 patah1d;05B7 patah2a;05B7 patahhebrew;05B7 patahnarrowhebrew;05B7 patahquarterhebrew;05B7 patahwidehebrew;05B7 pazerhebrew;05A1 pbopomofo;3106 pcircle;24DF pdotaccent;1E57 pe;05E4 pecyrillic;043F pedagesh;FB44 pedageshhebrew;FB44 peezisquare;333B pefinaldageshhebrew;FB43 peharabic;067E peharmenian;057A pehebrew;05E4 pehfinalarabic;FB57 pehinitialarabic;FB58 pehiragana;307A pehmedialarabic;FB59 pekatakana;30DA pemiddlehookcyrillic;04A7 perafehebrew;FB4E percent;0025 percentarabic;066A percentmonospace;FF05 percentsmall;FE6A period;002E periodarmenian;0589 periodcentered;00B7 periodhalfwidth;FF61 periodinferior;F6E7 periodmonospace;FF0E periodsmall;FE52 periodsuperior;F6E8 perispomenigreekcmb;0342 perpendicular;22A5 perthousand;2030 peseta;20A7 pfsquare;338A phabengali;09AB phadeva;092B phagujarati;0AAB phagurmukhi;0A2B phi;03C6 phi1;03D5 phieuphacirclekorean;327A phieuphaparenkorean;321A phieuphcirclekorean;326C phieuphkorean;314D phieuphparenkorean;320C philatin;0278 phinthuthai;0E3A phisymbolgreek;03D5 phook;01A5 phophanthai;0E1E phophungthai;0E1C phosamphaothai;0E20 pi;03C0 pieupacirclekorean;3273 pieupaparenkorean;3213 pieupcieuckorean;3176 pieupcirclekorean;3265 pieupkiyeokkorean;3172 pieupkorean;3142 pieupparenkorean;3205 pieupsioskiyeokkorean;3174 pieupsioskorean;3144 pieupsiostikeutkorean;3175 pieupthieuthkorean;3177 pieuptikeutkorean;3173 pihiragana;3074 pikatakana;30D4 pisymbolgreek;03D6 piwrarmenian;0583 plus;002B plusbelowcmb;031F pluscircle;2295 plusminus;00B1 plusmod;02D6 plusmonospace;FF0B plussmall;FE62 plussuperior;207A pmonospace;FF50 pmsquare;33D8 pohiragana;307D pointingindexdownwhite;261F pointingindexleftwhite;261C pointingindexrightwhite;261E pointingindexupwhite;261D pokatakana;30DD poplathai;0E1B postalmark;3012 postalmarkface;3020 pparen;24AB precedes;227A prescription;211E primemod;02B9 primereversed;2035 product;220F projective;2305 prolongedkana;30FC propellor;2318 propersubset;2282 propersuperset;2283 proportion;2237 proportional;221D psi;03C8 psicyrillic;0471 psilipneumatacyrilliccmb;0486 pssquare;33B0 puhiragana;3077 pukatakana;30D7 pvsquare;33B4 pwsquare;33BA q;0071 qadeva;0958 qadmahebrew;05A8 qafarabic;0642 qaffinalarabic;FED6 qafinitialarabic;FED7 qafmedialarabic;FED8 qamats;05B8 qamats10;05B8 qamats1a;05B8 qamats1c;05B8 qamats27;05B8 qamats29;05B8 qamats33;05B8 qamatsde;05B8 qamatshebrew;05B8 qamatsnarrowhebrew;05B8 qamatsqatanhebrew;05B8 qamatsqatannarrowhebrew;05B8 qamatsqatanquarterhebrew;05B8 qamatsqatanwidehebrew;05B8 qamatsquarterhebrew;05B8 qamatswidehebrew;05B8 qarneyparahebrew;059F qbopomofo;3111 qcircle;24E0 qhook;02A0 qmonospace;FF51 qof;05E7 qofdagesh;FB47 qofdageshhebrew;FB47 qofhatafpatah;05E7 05B2 qofhatafpatahhebrew;05E7 05B2 qofhatafsegol;05E7 05B1 qofhatafsegolhebrew;05E7 05B1 qofhebrew;05E7 qofhiriq;05E7 05B4 qofhiriqhebrew;05E7 05B4 qofholam;05E7 05B9 qofholamhebrew;05E7 05B9 qofpatah;05E7 05B7 qofpatahhebrew;05E7 05B7 qofqamats;05E7 05B8 qofqamatshebrew;05E7 05B8 qofqubuts;05E7 05BB qofqubutshebrew;05E7 05BB qofsegol;05E7 05B6 qofsegolhebrew;05E7 05B6 qofsheva;05E7 05B0 qofshevahebrew;05E7 05B0 qoftsere;05E7 05B5 qoftserehebrew;05E7 05B5 qparen;24AC quarternote;2669 qubuts;05BB qubuts18;05BB qubuts25;05BB qubuts31;05BB qubutshebrew;05BB qubutsnarrowhebrew;05BB qubutsquarterhebrew;05BB qubutswidehebrew;05BB question;003F questionarabic;061F questionarmenian;055E questiondown;00BF questiondownsmall;F7BF questiongreek;037E questionmonospace;FF1F questionsmall;F73F quotedbl;0022 quotedblbase;201E quotedblleft;201C quotedblmonospace;FF02 quotedblprime;301E quotedblprimereversed;301D quotedblright;201D quoteleft;2018 quoteleftreversed;201B quotereversed;201B quoteright;2019 quoterightn;0149 quotesinglbase;201A quotesingle;0027 quotesinglemonospace;FF07 r;0072 raarmenian;057C rabengali;09B0 racute;0155 radeva;0930 radical;221A radicalex;F8E5 radoverssquare;33AE radoverssquaredsquare;33AF radsquare;33AD rafe;05BF rafehebrew;05BF ragujarati;0AB0 ragurmukhi;0A30 rahiragana;3089 rakatakana;30E9 rakatakanahalfwidth;FF97 ralowerdiagonalbengali;09F1 ramiddlediagonalbengali;09F0 ramshorn;0264 ratio;2236 rbopomofo;3116 rcaron;0159 rcedilla;0157 rcircle;24E1 rcommaaccent;0157 rdblgrave;0211 rdotaccent;1E59 rdotbelow;1E5B rdotbelowmacron;1E5D referencemark;203B reflexsubset;2286 reflexsuperset;2287 registered;00AE registersans;F8E8 registerserif;F6DA reharabic;0631 reharmenian;0580 rehfinalarabic;FEAE rehiragana;308C rehyehaleflamarabic;0631 FEF3 FE8E 0644 rekatakana;30EC rekatakanahalfwidth;FF9A resh;05E8 reshdageshhebrew;FB48 reshhatafpatah;05E8 05B2 reshhatafpatahhebrew;05E8 05B2 reshhatafsegol;05E8 05B1 reshhatafsegolhebrew;05E8 05B1 reshhebrew;05E8 reshhiriq;05E8 05B4 reshhiriqhebrew;05E8 05B4 reshholam;05E8 05B9 reshholamhebrew;05E8 05B9 reshpatah;05E8 05B7 reshpatahhebrew;05E8 05B7 reshqamats;05E8 05B8 reshqamatshebrew;05E8 05B8 reshqubuts;05E8 05BB reshqubutshebrew;05E8 05BB reshsegol;05E8 05B6 reshsegolhebrew;05E8 05B6 reshsheva;05E8 05B0 reshshevahebrew;05E8 05B0 reshtsere;05E8 05B5 reshtserehebrew;05E8 05B5 reversedtilde;223D reviahebrew;0597 reviamugrashhebrew;0597 revlogicalnot;2310 rfishhook;027E rfishhookreversed;027F rhabengali;09DD rhadeva;095D rho;03C1 rhook;027D rhookturned;027B rhookturnedsuperior;02B5 rhosymbolgreek;03F1 rhotichookmod;02DE rieulacirclekorean;3271 rieulaparenkorean;3211 rieulcirclekorean;3263 rieulhieuhkorean;3140 rieulkiyeokkorean;313A rieulkiyeoksioskorean;3169 rieulkorean;3139 rieulmieumkorean;313B rieulpansioskorean;316C rieulparenkorean;3203 rieulphieuphkorean;313F rieulpieupkorean;313C rieulpieupsioskorean;316B rieulsioskorean;313D rieulthieuthkorean;313E rieultikeutkorean;316A rieulyeorinhieuhkorean;316D rightangle;221F righttackbelowcmb;0319 righttriangle;22BF rihiragana;308A rikatakana;30EA rikatakanahalfwidth;FF98 ring;02DA ringbelowcmb;0325 ringcmb;030A ringhalfleft;02BF ringhalfleftarmenian;0559 ringhalfleftbelowcmb;031C ringhalfleftcentered;02D3 ringhalfright;02BE ringhalfrightbelowcmb;0339 ringhalfrightcentered;02D2 rinvertedbreve;0213 rittorusquare;3351 rlinebelow;1E5F rlongleg;027C rlonglegturned;027A rmonospace;FF52 rohiragana;308D rokatakana;30ED rokatakanahalfwidth;FF9B roruathai;0E23 rparen;24AD rrabengali;09DC rradeva;0931 rragurmukhi;0A5C rreharabic;0691 rrehfinalarabic;FB8D rrvocalicbengali;09E0 rrvocalicdeva;0960 rrvocalicgujarati;0AE0 rrvocalicvowelsignbengali;09C4 rrvocalicvowelsigndeva;0944 rrvocalicvowelsigngujarati;0AC4 rsuperior;F6F1 rtblock;2590 rturned;0279 rturnedsuperior;02B4 ruhiragana;308B rukatakana;30EB rukatakanahalfwidth;FF99 rupeemarkbengali;09F2 rupeesignbengali;09F3 rupiah;F6DD ruthai;0E24 rvocalicbengali;098B rvocalicdeva;090B rvocalicgujarati;0A8B rvocalicvowelsignbengali;09C3 rvocalicvowelsigndeva;0943 rvocalicvowelsigngujarati;0AC3 s;0073 sabengali;09B8 sacute;015B sacutedotaccent;1E65 sadarabic;0635 sadeva;0938 sadfinalarabic;FEBA sadinitialarabic;FEBB sadmedialarabic;FEBC sagujarati;0AB8 sagurmukhi;0A38 sahiragana;3055 sakatakana;30B5 sakatakanahalfwidth;FF7B sallallahoualayhewasallamarabic;FDFA samekh;05E1 samekhdagesh;FB41 samekhdageshhebrew;FB41 samekhhebrew;05E1 saraaathai;0E32 saraaethai;0E41 saraaimaimalaithai;0E44 saraaimaimuanthai;0E43 saraamthai;0E33 saraathai;0E30 saraethai;0E40 saraiileftthai;F886 saraiithai;0E35 saraileftthai;F885 saraithai;0E34 saraothai;0E42 saraueeleftthai;F888 saraueethai;0E37 saraueleftthai;F887 sarauethai;0E36 sarauthai;0E38 sarauuthai;0E39 sbopomofo;3119 scaron;0161 scarondotaccent;1E67 scedilla;015F schwa;0259 schwacyrillic;04D9 schwadieresiscyrillic;04DB schwahook;025A scircle;24E2 scircumflex;015D scommaaccent;0219 sdotaccent;1E61 sdotbelow;1E63 sdotbelowdotaccent;1E69 seagullbelowcmb;033C second;2033 secondtonechinese;02CA section;00A7 seenarabic;0633 seenfinalarabic;FEB2 seeninitialarabic;FEB3 seenmedialarabic;FEB4 segol;05B6 segol13;05B6 segol1f;05B6 segol2c;05B6 segolhebrew;05B6 segolnarrowhebrew;05B6 segolquarterhebrew;05B6 segoltahebrew;0592 segolwidehebrew;05B6 seharmenian;057D sehiragana;305B sekatakana;30BB sekatakanahalfwidth;FF7E semicolon;003B semicolonarabic;061B semicolonmonospace;FF1B semicolonsmall;FE54 semivoicedmarkkana;309C semivoicedmarkkanahalfwidth;FF9F sentisquare;3322 sentosquare;3323 seven;0037 sevenarabic;0667 sevenbengali;09ED sevencircle;2466 sevencircleinversesansserif;2790 sevendeva;096D seveneighths;215E sevengujarati;0AED sevengurmukhi;0A6D sevenhackarabic;0667 sevenhangzhou;3027 sevenideographicparen;3226 seveninferior;2087 sevenmonospace;FF17 sevenoldstyle;F737 sevenparen;247A sevenperiod;248E sevenpersian;06F7 sevenroman;2176 sevensuperior;2077 seventeencircle;2470 seventeenparen;2484 seventeenperiod;2498 seventhai;0E57 sfthyphen;00AD shaarmenian;0577 shabengali;09B6 shacyrillic;0448 shaddaarabic;0651 shaddadammaarabic;FC61 shaddadammatanarabic;FC5E shaddafathaarabic;FC60 shaddafathatanarabic;0651 064B shaddakasraarabic;FC62 shaddakasratanarabic;FC5F shade;2592 shadedark;2593 shadelight;2591 shademedium;2592 shadeva;0936 shagujarati;0AB6 shagurmukhi;0A36 shalshelethebrew;0593 shbopomofo;3115 shchacyrillic;0449 sheenarabic;0634 sheenfinalarabic;FEB6 sheeninitialarabic;FEB7 sheenmedialarabic;FEB8 sheicoptic;03E3 sheqel;20AA sheqelhebrew;20AA sheva;05B0 sheva115;05B0 sheva15;05B0 sheva22;05B0 sheva2e;05B0 shevahebrew;05B0 shevanarrowhebrew;05B0 shevaquarterhebrew;05B0 shevawidehebrew;05B0 shhacyrillic;04BB shimacoptic;03ED shin;05E9 shindagesh;FB49 shindageshhebrew;FB49 shindageshshindot;FB2C shindageshshindothebrew;FB2C shindageshsindot;FB2D shindageshsindothebrew;FB2D shindothebrew;05C1 shinhebrew;05E9 shinshindot;FB2A shinshindothebrew;FB2A shinsindot;FB2B shinsindothebrew;FB2B shook;0282 sigma;03C3 sigma1;03C2 sigmafinal;03C2 sigmalunatesymbolgreek;03F2 sihiragana;3057 sikatakana;30B7 sikatakanahalfwidth;FF7C siluqhebrew;05BD siluqlefthebrew;05BD similar;223C sindothebrew;05C2 siosacirclekorean;3274 siosaparenkorean;3214 sioscieuckorean;317E sioscirclekorean;3266 sioskiyeokkorean;317A sioskorean;3145 siosnieunkorean;317B siosparenkorean;3206 siospieupkorean;317D siostikeutkorean;317C six;0036 sixarabic;0666 sixbengali;09EC sixcircle;2465 sixcircleinversesansserif;278F sixdeva;096C sixgujarati;0AEC sixgurmukhi;0A6C sixhackarabic;0666 sixhangzhou;3026 sixideographicparen;3225 sixinferior;2086 sixmonospace;FF16 sixoldstyle;F736 sixparen;2479 sixperiod;248D sixpersian;06F6 sixroman;2175 sixsuperior;2076 sixteencircle;246F sixteencurrencydenominatorbengali;09F9 sixteenparen;2483 sixteenperiod;2497 sixthai;0E56 slash;002F slashmonospace;FF0F slong;017F slongdotaccent;1E9B smileface;263A smonospace;FF53 sofpasuqhebrew;05C3 softhyphen;00AD softsigncyrillic;044C sohiragana;305D sokatakana;30BD sokatakanahalfwidth;FF7F soliduslongoverlaycmb;0338 solidusshortoverlaycmb;0337 sorusithai;0E29 sosalathai;0E28 sosothai;0E0B sosuathai;0E2A space;0020 spacehackarabic;0020 spade;2660 spadesuitblack;2660 spadesuitwhite;2664 sparen;24AE squarebelowcmb;033B squarecc;33C4 squarecm;339D squarediagonalcrosshatchfill;25A9 squarehorizontalfill;25A4 squarekg;338F squarekm;339E squarekmcapital;33CE squareln;33D1 squarelog;33D2 squaremg;338E squaremil;33D5 squaremm;339C squaremsquared;33A1 squareorthogonalcrosshatchfill;25A6 squareupperlefttolowerrightfill;25A7 squareupperrighttolowerleftfill;25A8 squareverticalfill;25A5 squarewhitewithsmallblack;25A3 srsquare;33DB ssabengali;09B7 ssadeva;0937 ssagujarati;0AB7 ssangcieuckorean;3149 ssanghieuhkorean;3185 ssangieungkorean;3180 ssangkiyeokkorean;3132 ssangnieunkorean;3165 ssangpieupkorean;3143 ssangsioskorean;3146 ssangtikeutkorean;3138 ssuperior;F6F2 sterling;00A3 sterlingmonospace;FFE1 strokelongoverlaycmb;0336 strokeshortoverlaycmb;0335 subset;2282 subsetnotequal;228A subsetorequal;2286 succeeds;227B suchthat;220B suhiragana;3059 sukatakana;30B9 sukatakanahalfwidth;FF7D sukunarabic;0652 summation;2211 sun;263C superset;2283 supersetnotequal;228B supersetorequal;2287 svsquare;33DC syouwaerasquare;337C t;0074 tabengali;09A4 tackdown;22A4 tackleft;22A3 tadeva;0924 tagujarati;0AA4 tagurmukhi;0A24 taharabic;0637 tahfinalarabic;FEC2 tahinitialarabic;FEC3 tahiragana;305F tahmedialarabic;FEC4 taisyouerasquare;337D takatakana;30BF takatakanahalfwidth;FF80 tatweelarabic;0640 tau;03C4 tav;05EA tavdages;FB4A tavdagesh;FB4A tavdageshhebrew;FB4A tavhebrew;05EA tbar;0167 tbopomofo;310A tcaron;0165 tccurl;02A8 tcedilla;0163 tcheharabic;0686 tchehfinalarabic;FB7B tchehinitialarabic;FB7C tchehmedialarabic;FB7D tchehmeeminitialarabic;FB7C FEE4 tcircle;24E3 tcircumflexbelow;1E71 tcommaaccent;0163 tdieresis;1E97 tdotaccent;1E6B tdotbelow;1E6D tecyrillic;0442 tedescendercyrillic;04AD teharabic;062A tehfinalarabic;FE96 tehhahinitialarabic;FCA2 tehhahisolatedarabic;FC0C tehinitialarabic;FE97 tehiragana;3066 tehjeeminitialarabic;FCA1 tehjeemisolatedarabic;FC0B tehmarbutaarabic;0629 tehmarbutafinalarabic;FE94 tehmedialarabic;FE98 tehmeeminitialarabic;FCA4 tehmeemisolatedarabic;FC0E tehnoonfinalarabic;FC73 tekatakana;30C6 tekatakanahalfwidth;FF83 telephone;2121 telephoneblack;260E telishagedolahebrew;05A0 telishaqetanahebrew;05A9 tencircle;2469 tenideographicparen;3229 tenparen;247D tenperiod;2491 tenroman;2179 tesh;02A7 tet;05D8 tetdagesh;FB38 tetdageshhebrew;FB38 tethebrew;05D8 tetsecyrillic;04B5 tevirhebrew;059B tevirlefthebrew;059B thabengali;09A5 thadeva;0925 thagujarati;0AA5 thagurmukhi;0A25 thalarabic;0630 thalfinalarabic;FEAC thanthakhatlowleftthai;F898 thanthakhatlowrightthai;F897 thanthakhatthai;0E4C thanthakhatupperleftthai;F896 theharabic;062B thehfinalarabic;FE9A thehinitialarabic;FE9B thehmedialarabic;FE9C thereexists;2203 therefore;2234 theta;03B8 theta1;03D1 thetasymbolgreek;03D1 thieuthacirclekorean;3279 thieuthaparenkorean;3219 thieuthcirclekorean;326B thieuthkorean;314C thieuthparenkorean;320B thirteencircle;246C thirteenparen;2480 thirteenperiod;2494 thonangmonthothai;0E11 thook;01AD thophuthaothai;0E12 thorn;00FE thothahanthai;0E17 thothanthai;0E10 thothongthai;0E18 thothungthai;0E16 thousandcyrillic;0482 thousandsseparatorarabic;066C thousandsseparatorpersian;066C three;0033 threearabic;0663 threebengali;09E9 threecircle;2462 threecircleinversesansserif;278C threedeva;0969 threeeighths;215C threegujarati;0AE9 threegurmukhi;0A69 threehackarabic;0663 threehangzhou;3023 threeideographicparen;3222 threeinferior;2083 threemonospace;FF13 threenumeratorbengali;09F6 threeoldstyle;F733 threeparen;2476 threeperiod;248A threepersian;06F3 threequarters;00BE threequartersemdash;F6DE threeroman;2172 threesuperior;00B3 threethai;0E53 thzsquare;3394 tihiragana;3061 tikatakana;30C1 tikatakanahalfwidth;FF81 tikeutacirclekorean;3270 tikeutaparenkorean;3210 tikeutcirclekorean;3262 tikeutkorean;3137 tikeutparenkorean;3202 tilde;02DC tildebelowcmb;0330 tildecmb;0303 tildecomb;0303 tildedoublecmb;0360 tildeoperator;223C tildeoverlaycmb;0334 tildeverticalcmb;033E timescircle;2297 tipehahebrew;0596 tipehalefthebrew;0596 tippigurmukhi;0A70 titlocyrilliccmb;0483 tiwnarmenian;057F tlinebelow;1E6F tmonospace;FF54 toarmenian;0569 tohiragana;3068 tokatakana;30C8 tokatakanahalfwidth;FF84 tonebarextrahighmod;02E5 tonebarextralowmod;02E9 tonebarhighmod;02E6 tonebarlowmod;02E8 tonebarmidmod;02E7 tonefive;01BD tonesix;0185 tonetwo;01A8 tonos;0384 tonsquare;3327 topatakthai;0E0F tortoiseshellbracketleft;3014 tortoiseshellbracketleftsmall;FE5D tortoiseshellbracketleftvertical;FE39 tortoiseshellbracketright;3015 tortoiseshellbracketrightsmall;FE5E tortoiseshellbracketrightvertical;FE3A totaothai;0E15 tpalatalhook;01AB tparen;24AF trademark;2122 trademarksans;F8EA trademarkserif;F6DB tretroflexhook;0288 triagdn;25BC triaglf;25C4 triagrt;25BA triagup;25B2 ts;02A6 tsadi;05E6 tsadidagesh;FB46 tsadidageshhebrew;FB46 tsadihebrew;05E6 tsecyrillic;0446 tsere;05B5 tsere12;05B5 tsere1e;05B5 tsere2b;05B5 tserehebrew;05B5 tserenarrowhebrew;05B5 tserequarterhebrew;05B5 tserewidehebrew;05B5 tshecyrillic;045B tsuperior;F6F3 ttabengali;099F ttadeva;091F ttagujarati;0A9F ttagurmukhi;0A1F tteharabic;0679 ttehfinalarabic;FB67 ttehinitialarabic;FB68 ttehmedialarabic;FB69 tthabengali;09A0 tthadeva;0920 tthagujarati;0AA0 tthagurmukhi;0A20 tturned;0287 tuhiragana;3064 tukatakana;30C4 tukatakanahalfwidth;FF82 tusmallhiragana;3063 tusmallkatakana;30C3 tusmallkatakanahalfwidth;FF6F twelvecircle;246B twelveparen;247F twelveperiod;2493 twelveroman;217B twentycircle;2473 twentyhangzhou;5344 twentyparen;2487 twentyperiod;249B two;0032 twoarabic;0662 twobengali;09E8 twocircle;2461 twocircleinversesansserif;278B twodeva;0968 twodotenleader;2025 twodotleader;2025 twodotleadervertical;FE30 twogujarati;0AE8 twogurmukhi;0A68 twohackarabic;0662 twohangzhou;3022 twoideographicparen;3221 twoinferior;2082 twomonospace;FF12 twonumeratorbengali;09F5 twooldstyle;F732 twoparen;2475 twoperiod;2489 twopersian;06F2 tworoman;2171 twostroke;01BB twosuperior;00B2 twothai;0E52 twothirds;2154 u;0075 uacute;00FA ubar;0289 ubengali;0989 ubopomofo;3128 ubreve;016D ucaron;01D4 ucircle;24E4 ucircumflex;00FB ucircumflexbelow;1E77 ucyrillic;0443 udattadeva;0951 udblacute;0171 udblgrave;0215 udeva;0909 udieresis;00FC udieresisacute;01D8 udieresisbelow;1E73 udieresiscaron;01DA udieresiscyrillic;04F1 udieresisgrave;01DC udieresismacron;01D6 udotbelow;1EE5 ugrave;00F9 ugujarati;0A89 ugurmukhi;0A09 uhiragana;3046 uhookabove;1EE7 uhorn;01B0 uhornacute;1EE9 uhorndotbelow;1EF1 uhorngrave;1EEB uhornhookabove;1EED uhorntilde;1EEF uhungarumlaut;0171 uhungarumlautcyrillic;04F3 uinvertedbreve;0217 ukatakana;30A6 ukatakanahalfwidth;FF73 ukcyrillic;0479 ukorean;315C umacron;016B umacroncyrillic;04EF umacrondieresis;1E7B umatragurmukhi;0A41 umonospace;FF55 underscore;005F underscoredbl;2017 underscoremonospace;FF3F underscorevertical;FE33 underscorewavy;FE4F union;222A universal;2200 uogonek;0173 uparen;24B0 upblock;2580 upperdothebrew;05C4 upsilon;03C5 upsilondieresis;03CB upsilondieresistonos;03B0 upsilonlatin;028A upsilontonos;03CD uptackbelowcmb;031D uptackmod;02D4 uragurmukhi;0A73 uring;016F ushortcyrillic;045E usmallhiragana;3045 usmallkatakana;30A5 usmallkatakanahalfwidth;FF69 ustraightcyrillic;04AF ustraightstrokecyrillic;04B1 utilde;0169 utildeacute;1E79 utildebelow;1E75 uubengali;098A uudeva;090A uugujarati;0A8A uugurmukhi;0A0A uumatragurmukhi;0A42 uuvowelsignbengali;09C2 uuvowelsigndeva;0942 uuvowelsigngujarati;0AC2 uvowelsignbengali;09C1 uvowelsigndeva;0941 uvowelsigngujarati;0AC1 v;0076 vadeva;0935 vagujarati;0AB5 vagurmukhi;0A35 vakatakana;30F7 vav;05D5 vavdagesh;FB35 vavdagesh65;FB35 vavdageshhebrew;FB35 vavhebrew;05D5 vavholam;FB4B vavholamhebrew;FB4B vavvavhebrew;05F0 vavyodhebrew;05F1 vcircle;24E5 vdotbelow;1E7F vecyrillic;0432 veharabic;06A4 vehfinalarabic;FB6B vehinitialarabic;FB6C vehmedialarabic;FB6D vekatakana;30F9 venus;2640 verticalbar;007C verticallineabovecmb;030D verticallinebelowcmb;0329 verticallinelowmod;02CC verticallinemod;02C8 vewarmenian;057E vhook;028B vikatakana;30F8 viramabengali;09CD viramadeva;094D viramagujarati;0ACD visargabengali;0983 visargadeva;0903 visargagujarati;0A83 vmonospace;FF56 voarmenian;0578 voicediterationhiragana;309E voicediterationkatakana;30FE voicedmarkkana;309B voicedmarkkanahalfwidth;FF9E vokatakana;30FA vparen;24B1 vtilde;1E7D vturned;028C vuhiragana;3094 vukatakana;30F4 w;0077 wacute;1E83 waekorean;3159 wahiragana;308F wakatakana;30EF wakatakanahalfwidth;FF9C wakorean;3158 wasmallhiragana;308E wasmallkatakana;30EE wattosquare;3357 wavedash;301C wavyunderscorevertical;FE34 wawarabic;0648 wawfinalarabic;FEEE wawhamzaabovearabic;0624 wawhamzaabovefinalarabic;FE86 wbsquare;33DD wcircle;24E6 wcircumflex;0175 wdieresis;1E85 wdotaccent;1E87 wdotbelow;1E89 wehiragana;3091 weierstrass;2118 wekatakana;30F1 wekorean;315E weokorean;315D wgrave;1E81 whitebullet;25E6 whitecircle;25CB whitecircleinverse;25D9 whitecornerbracketleft;300E whitecornerbracketleftvertical;FE43 whitecornerbracketright;300F whitecornerbracketrightvertical;FE44 whitediamond;25C7 whitediamondcontainingblacksmalldiamond;25C8 whitedownpointingsmalltriangle;25BF whitedownpointingtriangle;25BD whiteleftpointingsmalltriangle;25C3 whiteleftpointingtriangle;25C1 whitelenticularbracketleft;3016 whitelenticularbracketright;3017 whiterightpointingsmalltriangle;25B9 whiterightpointingtriangle;25B7 whitesmallsquare;25AB whitesmilingface;263A whitesquare;25A1 whitestar;2606 whitetelephone;260F whitetortoiseshellbracketleft;3018 whitetortoiseshellbracketright;3019 whiteuppointingsmalltriangle;25B5 whiteuppointingtriangle;25B3 wihiragana;3090 wikatakana;30F0 wikorean;315F wmonospace;FF57 wohiragana;3092 wokatakana;30F2 wokatakanahalfwidth;FF66 won;20A9 wonmonospace;FFE6 wowaenthai;0E27 wparen;24B2 wring;1E98 wsuperior;02B7 wturned;028D wynn;01BF x;0078 xabovecmb;033D xbopomofo;3112 xcircle;24E7 xdieresis;1E8D xdotaccent;1E8B xeharmenian;056D xi;03BE xmonospace;FF58 xparen;24B3 xsuperior;02E3 y;0079 yaadosquare;334E yabengali;09AF yacute;00FD yadeva;092F yaekorean;3152 yagujarati;0AAF yagurmukhi;0A2F yahiragana;3084 yakatakana;30E4 yakatakanahalfwidth;FF94 yakorean;3151 yamakkanthai;0E4E yasmallhiragana;3083 yasmallkatakana;30E3 yasmallkatakanahalfwidth;FF6C yatcyrillic;0463 ycircle;24E8 ycircumflex;0177 ydieresis;00FF ydotaccent;1E8F ydotbelow;1EF5 yeharabic;064A yehbarreearabic;06D2 yehbarreefinalarabic;FBAF yehfinalarabic;FEF2 yehhamzaabovearabic;0626 yehhamzaabovefinalarabic;FE8A yehhamzaaboveinitialarabic;FE8B yehhamzaabovemedialarabic;FE8C yehinitialarabic;FEF3 yehmedialarabic;FEF4 yehmeeminitialarabic;FCDD yehmeemisolatedarabic;FC58 yehnoonfinalarabic;FC94 yehthreedotsbelowarabic;06D1 yekorean;3156 yen;00A5 yenmonospace;FFE5 yeokorean;3155 yeorinhieuhkorean;3186 yerahbenyomohebrew;05AA yerahbenyomolefthebrew;05AA yericyrillic;044B yerudieresiscyrillic;04F9 yesieungkorean;3181 yesieungpansioskorean;3183 yesieungsioskorean;3182 yetivhebrew;059A ygrave;1EF3 yhook;01B4 yhookabove;1EF7 yiarmenian;0575 yicyrillic;0457 yikorean;3162 yinyang;262F yiwnarmenian;0582 ymonospace;FF59 yod;05D9 yoddagesh;FB39 yoddageshhebrew;FB39 yodhebrew;05D9 yodyodhebrew;05F2 yodyodpatahhebrew;FB1F yohiragana;3088 yoikorean;3189 yokatakana;30E8 yokatakanahalfwidth;FF96 yokorean;315B yosmallhiragana;3087 yosmallkatakana;30E7 yosmallkatakanahalfwidth;FF6E yotgreek;03F3 yoyaekorean;3188 yoyakorean;3187 yoyakthai;0E22 yoyingthai;0E0D yparen;24B4 ypogegrammeni;037A ypogegrammenigreekcmb;0345 yr;01A6 yring;1E99 ysuperior;02B8 ytilde;1EF9 yturned;028E yuhiragana;3086 yuikorean;318C yukatakana;30E6 yukatakanahalfwidth;FF95 yukorean;3160 yusbigcyrillic;046B yusbigiotifiedcyrillic;046D yuslittlecyrillic;0467 yuslittleiotifiedcyrillic;0469 yusmallhiragana;3085 yusmallkatakana;30E5 yusmallkatakanahalfwidth;FF6D yuyekorean;318B yuyeokorean;318A yyabengali;09DF yyadeva;095F z;007A zaarmenian;0566 zacute;017A zadeva;095B zagurmukhi;0A5B zaharabic;0638 zahfinalarabic;FEC6 zahinitialarabic;FEC7 zahiragana;3056 zahmedialarabic;FEC8 zainarabic;0632 zainfinalarabic;FEB0 zakatakana;30B6 zaqefgadolhebrew;0595 zaqefqatanhebrew;0594 zarqahebrew;0598 zayin;05D6 zayindagesh;FB36 zayindageshhebrew;FB36 zayinhebrew;05D6 zbopomofo;3117 zcaron;017E zcircle;24E9 zcircumflex;1E91 zcurl;0291 zdot;017C zdotaccent;017C zdotbelow;1E93 zecyrillic;0437 zedescendercyrillic;0499 zedieresiscyrillic;04DF zehiragana;305C zekatakana;30BC zero;0030 zeroarabic;0660 zerobengali;09E6 zerodeva;0966 zerogujarati;0AE6 zerogurmukhi;0A66 zerohackarabic;0660 zeroinferior;2080 zeromonospace;FF10 zerooldstyle;F730 zeropersian;06F0 zerosuperior;2070 zerothai;0E50 zerowidthjoiner;FEFF zerowidthnonjoiner;200C zerowidthspace;200B zeta;03B6 zhbopomofo;3113 zhearmenian;056A zhebrevecyrillic;04C2 zhecyrillic;0436 zhedescendercyrillic;0497 zhedieresiscyrillic;04DD zihiragana;3058 zikatakana;30B8 zinorhebrew;05AE zlinebelow;1E95 zmonospace;FF5A zohiragana;305E zokatakana;30BE zparen;24B5 zretroflexhook;0290 zstroke;01B6 zuhiragana;305A zukatakana;30BA a100;275E a101;2761 a102;2762 a103;2763 a104;2764 a105;2710 a106;2765 a107;2766 a108;2767 a109;2660 a10;2721 a110;2665 a111;2666 a112;2663 a117;2709 a118;2708 a119;2707 a11;261B a120;2460 a121;2461 a122;2462 a123;2463 a124;2464 a125;2465 a126;2466 a127;2467 a128;2468 a129;2469 a12;261E a130;2776 a131;2777 a132;2778 a133;2779 a134;277A a135;277B a136;277C a137;277D a138;277E a139;277F a13;270C a140;2780 a141;2781 a142;2782 a143;2783 a144;2784 a145;2785 a146;2786 a147;2787 a148;2788 a149;2789 a14;270D a150;278A a151;278B a152;278C a153;278D a154;278E a155;278F a156;2790 a157;2791 a158;2792 a159;2793 a15;270E a160;2794 a161;2192 a162;27A3 a163;2194 a164;2195 a165;2799 a166;279B a167;279C a168;279D a169;279E a16;270F a170;279F a171;27A0 a172;27A1 a173;27A2 a174;27A4 a175;27A5 a176;27A6 a177;27A7 a178;27A8 a179;27A9 a17;2711 a180;27AB a181;27AD a182;27AF a183;27B2 a184;27B3 a185;27B5 a186;27B8 a187;27BA a188;27BB a189;27BC a18;2712 a190;27BD a191;27BE a192;279A a193;27AA a194;27B6 a195;27B9 a196;2798 a197;27B4 a198;27B7 a199;27AC a19;2713 a1;2701 a200;27AE a201;27B1 a202;2703 a203;2750 a204;2752 a205;276E a206;2770 a20;2714 a21;2715 a22;2716 a23;2717 a24;2718 a25;2719 a26;271A a27;271B a28;271C a29;2722 a2;2702 a30;2723 a31;2724 a32;2725 a33;2726 a34;2727 a35;2605 a36;2729 a37;272A a38;272B a39;272C a3;2704 a40;272D a41;272E a42;272F a43;2730 a44;2731 a45;2732 a46;2733 a47;2734 a48;2735 a49;2736 a4;260E a50;2737 a51;2738 a52;2739 a53;273A a54;273B a55;273C a56;273D a57;273E a58;273F a59;2740 a5;2706 a60;2741 a61;2742 a62;2743 a63;2744 a64;2745 a65;2746 a66;2747 a67;2748 a68;2749 a69;274A a6;271D a70;274B a71;25CF a72;274D a73;25A0 a74;274F a75;2751 a76;25B2 a77;25BC a78;25C6 a79;2756 a7;271E a81;25D7 a82;2758 a83;2759 a84;275A a85;276F a86;2771 a87;2772 a88;2773 a89;2768 a8;271F a90;2769 a91;276C a92;276D a93;276A a94;276B a95;2774 a96;2775 a97;275B a98;275C a99;275D a9;2720 ## Files: freetype/src/truetype/truetype.c truetype.c FreeType TrueType driver component (body only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/ttdriver.c ttdriver.c TrueType font driver implementation (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/ttdriver.h ttdriver.h High-level TrueType driver interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/tterrors.h tterrors.h TrueType error codes (specification only). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/ttgload.c ttgload.c TrueType Glyph Loader (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/ttgload.h ttgload.h TrueType Glyph Loader (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/ttgxvar.c ttgxvar.c TrueType GX Font Variation loader Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, Werner Lemberg, and George Williams. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/ttgxvar.h ttgxvar.h TrueType GX Font Variation loader (specification) Copyright (C) 2004-2023 by David Turner, Robert Wilhelm, Werner Lemberg and George Williams. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/ttinterp.c ttinterp.c TrueType bytecode interpreter (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/ttinterp.h ttinterp.h TrueType bytecode interpreter (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/ttobjs.c ttobjs.c Objects manager (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/ttobjs.c PostScript names are given in brackets if they differ from the family name. The version numbers, together with the copyright or release year data, are taken from fonts available to the developers. Note that later versions of the fonts might be no longer tricky; for example, `MingLiU' version 7.00 (file `mingliu.ttc' from Windows 7) is an ordinary TTC with non-tricky subfonts. ## Files: freetype/src/truetype/ttobjs.h ttobjs.h Objects manager (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/ttpload.c ttpload.c TrueType-specific tables loader (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/ttpload.h ttpload.h TrueType-specific tables loader (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/ttsubpix.c ttsubpix.c TrueType Subpixel Hinting. Copyright (C) 2010-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/truetype/ttsubpix.h ttsubpix.h TrueType Subpixel Hinting. Copyright (C) 2010-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/t1afm.c t1afm.c AFM support for Type 1 fonts (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/t1afm.h t1afm.h AFM support for Type 1 fonts (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/t1driver.c t1driver.c Type 1 driver interface (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/t1driver.h t1driver.h High-level Type 1 driver interface (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/t1errors.h t1errors.h Type 1 error codes (specification only). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/t1gload.c t1gload.c Type 1 Glyph Loader (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/t1gload.h t1gload.h Type 1 Glyph Loader (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/t1load.c t1load.c Type 1 font loader (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/t1load.h t1load.h Type 1 font loader (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/t1objs.c t1objs.c Type 1 objects manager (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/t1objs.h t1objs.h Type 1 objects manager (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/t1parse.c t1parse.c Type 1 parser (body). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/t1parse.h t1parse.h Type 1 parser (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/t1tokens.h t1tokens.h Type 1 tokenizer (specification). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type1/type1.c type1.c FreeType Type 1 driver component (body only). Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type42/t42drivr.c t42drivr.c High-level Type 42 driver interface (body). Copyright (C) 2002-2023 by Roberto Alameda. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type42/t42drivr.h t42drivr.h High-level Type 42 driver interface (specification). Copyright (C) 2002-2023 by Roberto Alameda. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type42/t42error.h t42error.h Type 42 error codes (specification only). Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type42/t42objs.c t42objs.c Type 42 objects manager (body). Copyright (C) 2002-2023 by Roberto Alameda. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type42/t42objs.h t42objs.h Type 42 objects manager (specification). Copyright (C) 2002-2023 by Roberto Alameda. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type42/t42parse.c t42parse.c Type 42 font parser (body). Copyright (C) 2002-2023 by Roberto Alameda. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type42/t42parse.h t42parse.h Type 42 font parser (specification). Copyright (C) 2002-2023 by Roberto Alameda. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type42/t42types.h t42types.h Type 42 font data types (specification only). Copyright (C) 2002-2023 by Roberto Alameda. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/type42/type42.c type42.c FreeType Type 42 driver component. Copyright (C) 2002-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/winfonts/fnterrs.h fnterrs.h Win FNT/FON error codes (specification only). Copyright (C) 2001-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/winfonts/winfnt.c winfnt.c FreeType font driver for Windows FNT/FON files Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Copyright 2003 Huw D M Davies for Codeweavers Copyright 2007 Dmitry Timoshkov for Codeweavers This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: freetype/src/winfonts/winfnt.h winfnt.h FreeType font driver for Windows FNT/FON files Copyright (C) 1996-2023 by David Turner, Robert Wilhelm, and Werner Lemberg. Copyright 2007 Dmitry Timoshkov for Codeweavers This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. ## Files: ijs/ltmain.sh jpeg/ltmain.sh lcms2mt/ltmain.sh tiff/config/ltmain.sh Copyright (C) 1996-2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ## Files: ijs/ltmain.sh jpeg/ltmain.sh lcms2mt/ltmain.sh tiff/config/ltmain.sh Copyright (C) 2004-2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ## Files: ijs/ltmain.sh jpeg/ltmain.sh lcms2mt/ltmain.sh tiff/config/ltmain.sh This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. ## Files: ijs/ltmain.sh jpeg/ltmain.sh lcms2mt/ltmain.sh tiff/config/ltmain.sh As a special exception to the GNU General Public License, if you distribute this file as part of a program or library that is built using GNU Libtool, you may include this file under the same distribution terms that you use for the rest of that program. ## Files: ijs/ltmain.sh jpeg/ltmain.sh lcms2mt/ltmain.sh tiff/config/ltmain.sh This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNES FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. ## Files: ijs/ltmain.sh jpeg/ltmain.sh lcms2mt/ltmain.sh tiff/config/ltmain.sh You should have received a copy of the GNU General Public License along with this program. If not, see . ## Files: ijs/ltmain.sh jpeg/ltmain.sh lcms2mt/ltmain.sh tiff/config/ltmain.sh Copyright (C) 2010-2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ## Files: ijs/ltmain.sh jpeg/ltmain.sh lcms2mt/ltmain.sh tiff/config/ltmain.sh This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. ## Files: ijs/ltmain.sh jpeg/ltmain.sh lcms2mt/ltmain.sh tiff/config/ltmain.sh This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. ## Files: ijs/ltmain.sh jpeg/ltmain.sh lcms2mt/ltmain.sh tiff/config/ltmain.sh You should have received a copy of the GNU General Public License along with this program. If not, see . ## Files: jbig2dec/getopt.c Getopt for GNU. NOTE: getopt is now part of the C library, so if you don't know what "Keep this file name-space clean" means, talk to drepper@gnu.org before changing it! Copyright (C) 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. ## Files: jbig2dec/getopt.h Declarations for getopt. Copyright (C) 1989-1994, 1996-1999, 2001 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. ## Files: jbig2dec/getopt1.c getopt_long and getopt_long_only entry points for GNU getopt. Copyright (C) 1987,88,89,90,91,92,93,94,96,97,98 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. ## Files: jpeg/cderror.h cderror.h Copyright (C) 1994-1997, Thomas G. Lane. Modified 2009-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file defines the error and message codes for the cjpeg/djpeg applications. These strings are not needed as part of the JPEG library proper. Edit this file to add new codes, or to translate the message strings to some other language. ## Files: jpeg/cdjpeg.c cdjpeg.c Copyright (C) 1991-1997, Thomas G. Lane. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains common support routines used by the IJG application programs (cjpeg, djpeg, jpegtran). ## Files: jpeg/cdjpeg.h cdjpeg.h Copyright (C) 1994-1997, Thomas G. Lane. Modified 2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains common declarations for the sample applications cjpeg and djpeg. It is NOT used by the core JPEG library. ## Files: jpeg/cjpeg.c cjpeg.c Copyright (C) 1991-1998, Thomas G. Lane. Modified 2003-2013 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains a command-line user interface for the JPEG compressor. It should work on any system with Unix- or MS-DOS-style command lines. Two different command line styles are permitted, depending on the compile-time switch TWO_FILE_COMMANDLINE: cjpeg [options] inputfile outputfile cjpeg [options] [inputfile] In the second style, output is always to standard output, which you'd normally redirect to a file or pipe to some other program. Input is either from a named file or from standard input (typically redirected). The second style is convenient on Unix but is unhelpful on systems that don't support pipes. Also, you MUST use the first style if your system doesn't do binary I/O to stdin/stdout. To simplify script writing, the "-outfile" switch is provided. The syntax cjpeg [options] -outfile outputfile inputfile works regardless of which command line style is used. ## Files: jpeg/cjpegalt.c alternate cjpeg.c Copyright (C) 1991-1998, Thomas G. Lane. Modified 2009-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains an alternate user interface for the JPEG compressor. One or more input files are named on the command line, and output file names are created by substituting ".jpg" for the input file's extension. ## Files: jpeg/ckconfig.c ckconfig.c Copyright (C) 1991-1994, Thomas G. Lane. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. ## Files: jpeg/djpeg.c djpeg.c Copyright (C) 1991-1997, Thomas G. Lane. Modified 2009-2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains a command-line user interface for the JPEG decompressor. It should work on any system with Unix- or MS-DOS-style command lines. Two different command line styles are permitted, depending on the compile-time switch TWO_FILE_COMMANDLINE: djpeg [options] inputfile outputfile djpeg [options] [inputfile] In the second style, output is always to standard output, which you'd normally redirect to a file or pipe to some other program. Input is either from a named file or from standard input (typically redirected). The second style is convenient on Unix but is unhelpful on systems that don't support pipes. Also, you MUST use the first style if your system doesn't do binary I/O to stdin/stdout. To simplify script writing, the "-outfile" switch is provided. The syntax djpeg [options] -outfile outputfile inputfile works regardless of which command line style is used. ## Files: jpeg/djpegalt.c alternate djpeg.c Copyright (C) 1991-1997, Thomas G. Lane. Modified 2009-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains an alternate user interface for the JPEG decompressor. One or more input files are named on the command line, and output file names are created by substituting an appropriate extension. ## Files: jpeg/jcapimin.c jcapimin.c Copyright (C) 1994-1998, Thomas G. Lane. Modified 2003-2010 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains application interface code for the compression half of the JPEG library. These are the "minimum" API routines that may be needed in either the normal full-compression case or the transcoding-only case. Most of the routines intended to be called directly by an application are in this file or in jcapistd.c. But also see jcparam.c for parameter-setup helper routines, jcomapi.c for routines shared by compression and decompression, and jctrans.c for the transcoding case. ## Files: jpeg/jcapistd.c jcapistd.c Copyright (C) 1994-1996, Thomas G. Lane. Modified 2013 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains application interface code for the compression half of the JPEG library. These are the "standard" API routines that are used in the normal full-compression case. They are not used by a transcoding-only application. Note that if an application links in jpeg_start_compress, it will end up linking in the entire compressor. We thus must separate this file from jcapimin.c to avoid linking the whole compression library into a transcoder. ## Files: jpeg/jccoefct.c jccoefct.c Copyright (C) 1994-1997, Thomas G. Lane. Modified 2003-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains the coefficient buffer controller for compression. This controller is the top level of the JPEG compressor proper. The coefficient buffer lies between forward-DCT and entropy encoding steps. ## Files: jpeg/jccolor.c jccolor.c Copyright (C) 1991-1996, Thomas G. Lane. Modified 2011-2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains input colorspace conversion routines. ## Files: jpeg/jcdctmgr.c jcdctmgr.c Copyright (C) 1994-1996, Thomas G. Lane. Modified 2003-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains the forward-DCT management logic. This code selects a particular DCT implementation to be used, and it performs related housekeeping chores including coefficient quantization. ## Files: jpeg/jchuff.c jchuff.c Copyright (C) 1991-1997, Thomas G. Lane. Modified 2006-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains Huffman entropy encoding routines. Both sequential and progressive modes are supported in this single module. Much of the complexity here has to do with supporting output suspension. If the data destination module demands suspension, we want to be able to back up to the start of the current MCU. To do this, we copy state variables into local working storage, and update them back to the permanent JPEG objects only upon successful completion of an MCU. We do not support output suspension for the progressive JPEG mode, since the library currently does not allow multiple-scan files to be written with output suspension. ## Files: jpeg/jcinit.c jcinit.c Copyright (C) 1991-1997, Thomas G. Lane. Modified 2003-2017 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains initialization logic for the JPEG compressor. This routine is in charge of selecting the modules to be executed and making an initialization call to each one. Logically, this code belongs in jcmaster.c. It's split out because linking this routine implies linking the entire compression library. For a transcoding-only application, we want to be able to use jcmaster.c without linking in the whole library. ## Files: jpeg/jcmainct.c jcmainct.c Copyright (C) 1994-1996, Thomas G. Lane. Modified 2003-2012 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains the main buffer controller for compression. The main buffer lies between the pre-processor and the JPEG compressor proper; it holds downsampled data in the JPEG colorspace. ## Files: jpeg/jcmarker.c jcmarker.c Copyright (C) 1991-1998, Thomas G. Lane. Modified 2003-2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains routines to write JPEG datastream markers. ## Files: jpeg/jcmaster.c jcmaster.c Copyright (C) 1991-1997, Thomas G. Lane. Modified 2003-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains master control logic for the JPEG compressor. These routines are concerned with parameter validation, initial setup, and inter-pass control (determining the number of passes and the work to be done in each pass). ## Files: jpeg/jcomapi.c jcomapi.c Copyright (C) 1994-1997, Thomas G. Lane. Modified 2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains application interface routines that are used for both compression and decompression. ## Files: jpeg/jcparam.c jcparam.c Copyright (C) 1991-1998, Thomas G. Lane. Modified 2003-2022 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains optional default-setting code for the JPEG compressor. Applications do not have to use this file, but those that don't use it must know a lot more about the innards of the JPEG code. ## Files: jpeg/jcprepct.c jcprepct.c Copyright (C) 1994-1996, Thomas G. Lane. Modified 2003-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains the compression preprocessing controller. This controller manages the color conversion, downsampling, and edge expansion steps. Most of the complexity here is associated with buffering input rows as required by the downsampler. See the comments at the head of jcsample.c for the downsampler's needs. ## Files: jpeg/jcsample.c jcsample.c Copyright (C) 1991-1996, Thomas G. Lane. Modified 2003-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains downsampling routines. Downsampling input data is counted in "row groups". A row group is defined to be max_v_samp_factor pixel rows of each component, from which the downsampler produces v_samp_factor sample rows. A single row group is processed in each call to the downsampler module. The downsampler is responsible for edge-expansion of its output data to fill an integral number of DCT blocks horizontally. The source buffer may be modified if it is helpful for this purpose (the source buffer is allocated wide enough to correspond to the desired output width). The caller (the prep controller) is responsible for vertical padding. The downsampler may request "context rows" by setting need_context_rows during startup. In this case, the input arrays will contain at least one row group's worth of pixels above and below the passed-in data; the caller will create dummy rows at image top and bottom by replicating the first or last real pixel row. An excellent reference for image resampling is Digital Image Warping, George Wolberg, 1990. Pub. by IEEE Computer Society Press, Los Alamitos, CA. ISBN 0-8186-8944-7. The downsampling algorithm used here is a simple average of the source pixels covered by the output pixel. The hi-falutin sampling literature refers to this as a "box filter". In general the characteristics of a box filter are not very good, but for the specific cases we normally use (1:1 and 2:1 ratios) the box is equivalent to a "triangle filter" which is not nearly so bad. If you intend to use other sampling ratios, you'd be well advised to improve this code. A simple input-smoothing capability is provided. This is mainly intended for cleaning up color-dithered GIF input files (if you find it inadequate, we suggest using an external filtering program such as pnmconvol). When enabled, each input pixel P is replaced by a weighted sum of itself and its eight neighbors. P's weight is 1-8*SF and each neighbor's weight is SF, where SF = (smoothing_factor / 1024). Currently, smoothing is only supported for 2h2v sampling factors. ## Files: jpeg/jctrans.c jctrans.c Copyright (C) 1995-1998, Thomas G. Lane. Modified 2000-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains library routines for transcoding compression, that is, writing raw DCT coefficient arrays to an output JPEG file. The routines in jcapimin.c will also be needed by a transcoder. ## Files: jpeg/jdapimin.c jdapimin.c Copyright (C) 1994-1998, Thomas G. Lane. Modified 2009-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains application interface code for the decompression half of the JPEG library. These are the "minimum" API routines that may be needed in either the normal full-decompression case or the transcoding-only case. Most of the routines intended to be called directly by an application are in this file or in jdapistd.c. But also see jcomapi.c for routines shared by compression and decompression, and jdtrans.c for the transcoding case. ## Files: jpeg/jdapistd.c jdapistd.c Copyright (C) 1994-1996, Thomas G. Lane. Modified 2002-2013 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains application interface code for the decompression half of the JPEG library. These are the "standard" API routines that are used in the normal full-decompression case. They are not used by a transcoding-only application. Note that if an application links in jpeg_start_decompress, it will end up linking in the entire decompressor. We thus must separate this file from jdapimin.c to avoid linking the whole decompression library into a transcoder. ## Files: jpeg/jdatadst.c jdatadst.c Copyright (C) 1994-1996, Thomas G. Lane. Modified 2009-2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains compression data destination routines for the case of emitting JPEG data to memory or to a file (or any stdio stream). While these routines are sufficient for most applications, some will want to use a different destination manager. IMPORTANT: we assume that fwrite() will correctly transcribe an array of JOCTETs into 8-bit-wide elements on external storage. If char is wider than 8 bits on your machine, you may need to do some tweaking. ## Files: jpeg/jdatasrc.c jdatasrc.c Copyright (C) 1994-1996, Thomas G. Lane. Modified 2009-2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains decompression data source routines for the case of reading JPEG data from memory or from a file (or any stdio stream). While these routines are sufficient for most applications, some will want to use a different source manager. IMPORTANT: we assume that fread() will correctly transcribe an array of JOCTETs from 8-bit-wide elements on external storage. If char is wider than 8 bits on your machine, you may need to do some tweaking. ## Files: jpeg/jdcoefct.c jdcoefct.c Copyright (C) 1994-1997, Thomas G. Lane. Modified 2002-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains the coefficient buffer controller for decompression. This controller is the top level of the JPEG decompressor proper. The coefficient buffer lies between entropy decoding and inverse-DCT steps. In buffered-image mode, this controller is the interface between input-oriented processing and output-oriented processing. Also, the input side (only) is used when reading a file for transcoding. ## Files: jpeg/jdcolor.c jdcolor.c Copyright (C) 1991-1997, Thomas G. Lane. Modified 2011-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains output colorspace conversion routines. ## Files: jpeg/jdct.h jdct.h Copyright (C) 1994-1996, Thomas G. Lane. Modified 2002-2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This include file contains common declarations for the forward and inverse DCT modules. These declarations are private to the DCT managers (jcdctmgr.c, jddctmgr.c) and the individual DCT algorithms. The individual DCT algorithms are kept in separate files to ease machine-dependent tuning (e.g., assembly coding). ## Files: jpeg/jddctmgr.c jddctmgr.c Copyright (C) 1994-1996, Thomas G. Lane. Modified 2002-2013 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains the inverse-DCT management logic. This code selects a particular IDCT implementation to be used, and it performs related housekeeping chores. No code in this file is executed per IDCT step, only during output pass setup. Note that the IDCT routines are responsible for performing coefficient dequantization as well as the IDCT proper. This module sets up the dequantization multiplier table needed by the IDCT routine. ## Files: jpeg/jdhuff.c jdhuff.c Copyright (C) 1991-1997, Thomas G. Lane. Modified 2006-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains Huffman entropy decoding routines. Both sequential and progressive modes are supported in this single module. Much of the complexity here has to do with supporting input suspension. If the data source module demands suspension, we want to be able to back up to the start of the current MCU. To do this, we copy state variables into local working storage, and update them back to the permanent storage only upon successful completion of an MCU. ## Files: jpeg/jdinput.c jdinput.c Copyright (C) 1991-1997, Thomas G. Lane. Modified 2002-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains input control logic for the JPEG decompressor. These routines are concerned with controlling the decompressor's input processing (marker reading and coefficient decoding). The actual input reading is done in jdmarker.c, jdhuff.c, and jdarith.c. ## Files: jpeg/jdmainct.c jdmainct.c Copyright (C) 1994-1996, Thomas G. Lane. Modified 2002-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains the main buffer controller for decompression. The main buffer lies between the JPEG decompressor proper and the post-processor; it holds downsampled data in the JPEG colorspace. Note that this code is bypassed in raw-data mode, since the application supplies the equivalent of the main buffer in that case. ## Files: jpeg/jdmarker.c jdmarker.c Copyright (C) 1991-1998, Thomas G. Lane. Modified 2009-2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains routines to decode JPEG datastream markers. Most of the complexity arises from our desire to support input suspension: if not all of the data for a marker is available, we must exit back to the application. On resumption, we reprocess the marker. ## Files: jpeg/jdmaster.c jdmaster.c Copyright (C) 1991-1997, Thomas G. Lane. Modified 2002-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains master control logic for the JPEG decompressor. These routines are concerned with selecting the modules to be executed and with determining the number of passes and the work to be done in each pass. ## Files: jpeg/jdmerge.c jdmerge.c Copyright (C) 1994-1996, Thomas G. Lane. Modified 2013-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains code for merged upsampling/color conversion. This file combines functions from jdsample.c and jdcolor.c; read those files first to understand what's going on. When the chroma components are to be upsampled by simple replication (ie, box filtering), we can save some work in color conversion by calculating all the output pixels corresponding to a pair of chroma samples at one time. In the conversion equations R = Y + K1 * Cr G = Y + K2 * Cb + K3 * Cr B = Y + K4 * Cb only the Y term varies among the group of pixels corresponding to a pair of chroma samples, so the rest of the terms can be calculated just once. At typical sampling ratios, this eliminates half or three-quarters of the multiplications needed for color conversion. This file currently provides implementations for the following cases: YCC => RGB color conversion only (YCbCr or BG_YCC). Sampling ratios of 2h1v or 2h2v. No scaling needed at upsample time. Corner-aligned (non-CCIR601) sampling alignment. Other special cases could be added, but in most applications these are the only common cases. (For uncommon cases we fall back on the more general code in jdsample.c and jdcolor.c.) ## Files: jpeg/jdpostct.c jdpostct.c Copyright (C) 1994-1996, Thomas G. Lane. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains the decompression postprocessing controller. This controller manages the upsampling, color conversion, and color quantization/reduction steps; specifically, it controls the buffering between upsample/color conversion and color quantization/reduction. If no color quantization/reduction is required, then this module has no work to do, and it just hands off to the upsample/color conversion code. An integrated upsample/convert/quantize process would replace this module entirely. ## Files: jpeg/jdsample.c jdsample.c Copyright (C) 1991-1996, Thomas G. Lane. Modified 2002-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains upsampling routines. Upsampling input data is counted in "row groups". A row group is defined to be (v_samp_factor * DCT_v_scaled_size / min_DCT_v_scaled_size) sample rows of each component. Upsampling will normally produce max_v_samp_factor pixel rows from each row group (but this could vary if the upsampler is applying a scale factor of its own). An excellent reference for image resampling is Digital Image Warping, George Wolberg, 1990. Pub. by IEEE Computer Society Press, Los Alamitos, CA. ISBN 0-8186-8944-7. ## Files: jpeg/jdtrans.c jdtrans.c Copyright (C) 1995-1997, Thomas G. Lane. Modified 2000-2009 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains library routines for transcoding decompression, that is, reading raw DCT coefficient arrays from an input JPEG file. The routines in jdapimin.c will also be needed by a transcoder. ## Files: jpeg/jerror.c jerror.c Copyright (C) 1991-1998, Thomas G. Lane. Modified 2012-2015 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains simple error-reporting and trace-message routines. These are suitable for Unix-like systems and others where writing to stderr is the right thing to do. Many applications will want to replace some or all of these routines. If you define USE_WINDOWS_MESSAGEBOX in jconfig.h or in the makefile, you get a Windows-specific hack to display error messages in a dialog box. It ain't much, but it beats dropping error messages into the bit bucket, which is what happens to output to stderr under most Windows C compilers. These routines are used by both the compression and decompression code. ## Files: jpeg/jerror.h jerror.h Copyright (C) 1994-1997, Thomas G. Lane. Modified 1997-2018 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file defines the error and message codes for the JPEG library. Edit this file to add new codes, or to translate the message strings to some other language. A set of error-reporting macros are defined too. Some applications using the JPEG library may wish to include this file to get the error codes and/or the macros. ## Files: jpeg/jfdctflt.c jfdctflt.c Copyright (C) 1994-1996, Thomas G. Lane. Modified 2003-2017 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains a floating-point implementation of the forward DCT (Discrete Cosine Transform). This implementation should be more accurate than either of the integer DCT implementations. However, it may not give the same results on all machines because of differences in roundoff behavior. Speed will depend on the hardware's floating point capacity. A 2-D DCT can be done by 1-D DCT on each row followed by 1-D DCT on each column. Direct algorithms are also available, but they are much more complex and seem not to be any faster when reduced to code. This implementation is based on Arai, Agui, and Nakajima's algorithm for scaled DCT. Their original paper (Trans. IEICE E-71(11):1095) is in Japanese, but the algorithm is described in the Pennebaker & Mitchell JPEG textbook (see REFERENCES section in file README). The following code is based directly on figure 4-8 in P&M. While an 8-point DCT cannot be done in less than 11 multiplies, it is possible to arrange the computation so that many of the multiplies are simple scalings of the final outputs. These multiplies can then be folded into the multiplications or divisions by the JPEG quantization table entries. The AA&N method leaves only 5 multiplies and 29 adds to be done in the DCT itself. The primary disadvantage of this method is that with a fixed-point implementation, accuracy is lost due to imprecise representation of the scaled quantization values. However, that problem does not arise if we use floating point arithmetic. ## Files: jpeg/jfdctfst.c jfdctfst.c Copyright (C) 1994-1996, Thomas G. Lane. Modified 2003-2017 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains a fast, not so accurate integer implementation of the forward DCT (Discrete Cosine Transform). A 2-D DCT can be done by 1-D DCT on each row followed by 1-D DCT on each column. Direct algorithms are also available, but they are much more complex and seem not to be any faster when reduced to code. This implementation is based on Arai, Agui, and Nakajima's algorithm for scaled DCT. Their original paper (Trans. IEICE E-71(11):1095) is in Japanese, but the algorithm is described in the Pennebaker & Mitchell JPEG textbook (see REFERENCES section in file README). The following code is based directly on figure 4-8 in P&M. While an 8-point DCT cannot be done in less than 11 multiplies, it is possible to arrange the computation so that many of the multiplies are simple scalings of the final outputs. These multiplies can then be folded into the multiplications or divisions by the JPEG quantization table entries. The AA&N method leaves only 5 multiplies and 29 adds to be done in the DCT itself. The primary disadvantage of this method is that with fixed-point math, accuracy is lost due to imprecise representation of the scaled quantization values. The smaller the quantization table entry, the less precise the scaled value, so this implementation does worse with high- quality-setting files than with low-quality ones. ## Files: jpeg/jfdctint.c jfdctint.c Copyright (C) 1991-1996, Thomas G. Lane. Modification developed 2003-2018 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains a slow-but-accurate integer implementation of the forward DCT (Discrete Cosine Transform). A 2-D DCT can be done by 1-D DCT on each row followed by 1-D DCT on each column. Direct algorithms are also available, but they are much more complex and seem not to be any faster when reduced to code. This implementation is based on an algorithm described in C. Loeffler, A. Ligtenberg and G. Moschytz, "Practical Fast 1-D DCT Algorithms with 11 Multiplications", Proc. Int'l. Conf. on Acoustics, Speech, and Signal Processing 1989 (ICASSP '89), pp. 988-991. The primary algorithm described there uses 11 multiplies and 29 adds. We use their alternate method with 12 multiplies and 32 adds. The advantage of this method is that no data path contains more than one multiplication; this allows a very simple and accurate implementation in scaled fixed-point arithmetic, with a minimal number of shifts. We also provide FDCT routines with various input sample block sizes for direct resolution reduction or enlargement and for direct resolving the common 2x1 and 1x2 subsampling cases without additional resampling: NxN (N=1...16), 2NxN, and Nx2N (N=1...8) pixels for one 8x8 output DCT block. For N<8 we fill the remaining block coefficients with zero. For N>8 we apply a partial N-point FDCT on the input samples, computing just the lower 8 frequency coefficients and discarding the rest. We must scale the output coefficients of the N-point FDCT appropriately to the standard 8-point FDCT level by 8/N per 1-D pass. This scaling is folded into the constant multipliers (pass 2) and/or final/initial shifting. CAUTION: We rely on the FIX() macro except for the N=1,2,4,8 cases since there would be too many additional constants to pre-calculate. ## Files: jpeg/jidctflt.c jidctflt.c Copyright (C) 1994-1998, Thomas G. Lane. Modified 2010-2017 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains a floating-point implementation of the inverse DCT (Discrete Cosine Transform). In the IJG code, this routine must also perform dequantization of the input coefficients. This implementation should be more accurate than either of the integer IDCT implementations. However, it may not give the same results on all machines because of differences in roundoff behavior. Speed will depend on the hardware's floating point capacity. A 2-D IDCT can be done by 1-D IDCT on each column followed by 1-D IDCT on each row (or vice versa, but it's more convenient to emit a row at a time). Direct algorithms are also available, but they are much more complex and seem not to be any faster when reduced to code. This implementation is based on Arai, Agui, and Nakajima's algorithm for scaled DCT. Their original paper (Trans. IEICE E-71(11):1095) is in Japanese, but the algorithm is described in the Pennebaker & Mitchell JPEG textbook (see REFERENCES section in file README). The following code is based directly on figure 4-8 in P&M. While an 8-point DCT cannot be done in less than 11 multiplies, it is possible to arrange the computation so that many of the multiplies are simple scalings of the final outputs. These multiplies can then be folded into the multiplications or divisions by the JPEG quantization table entries. The AA&N method leaves only 5 multiplies and 29 adds to be done in the DCT itself. The primary disadvantage of this method is that with a fixed-point implementation, accuracy is lost due to imprecise representation of the scaled quantization values. However, that problem does not arise if we use floating point arithmetic. ## Files: jpeg/jidctfst.c jidctfst.c Copyright (C) 1994-1998, Thomas G. Lane. Modified 2015-2017 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains a fast, not so accurate integer implementation of the inverse DCT (Discrete Cosine Transform). In the IJG code, this routine must also perform dequantization of the input coefficients. A 2-D IDCT can be done by 1-D IDCT on each column followed by 1-D IDCT on each row (or vice versa, but it's more convenient to emit a row at a time). Direct algorithms are also available, but they are much more complex and seem not to be any faster when reduced to code. This implementation is based on Arai, Agui, and Nakajima's algorithm for scaled DCT. Their original paper (Trans. IEICE E-71(11):1095) is in Japanese, but the algorithm is described in the Pennebaker & Mitchell JPEG textbook (see REFERENCES section in file README). The following code is based directly on figure 4-8 in P&M. While an 8-point DCT cannot be done in less than 11 multiplies, it is possible to arrange the computation so that many of the multiplies are simple scalings of the final outputs. These multiplies can then be folded into the multiplications or divisions by the JPEG quantization table entries. The AA&N method leaves only 5 multiplies and 29 adds to be done in the DCT itself. The primary disadvantage of this method is that with fixed-point math, accuracy is lost due to imprecise representation of the scaled quantization values. The smaller the quantization table entry, the less precise the scaled value, so this implementation does worse with high- quality-setting files than with low-quality ones. ## Files: jpeg/jidctint.c jidctint.c Copyright (C) 1991-1998, Thomas G. Lane. Modification developed 2002-2018 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains a slow-but-accurate integer implementation of the inverse DCT (Discrete Cosine Transform). In the IJG code, this routine must also perform dequantization of the input coefficients. A 2-D IDCT can be done by 1-D IDCT on each column followed by 1-D IDCT on each row (or vice versa, but it's more convenient to emit a row at a time). Direct algorithms are also available, but they are much more complex and seem not to be any faster when reduced to code. This implementation is based on an algorithm described in C. Loeffler, A. Ligtenberg and G. Moschytz, "Practical Fast 1-D DCT Algorithms with 11 Multiplications", Proc. Int'l. Conf. on Acoustics, Speech, and Signal Processing 1989 (ICASSP '89), pp. 988-991. The primary algorithm described there uses 11 multiplies and 29 adds. We use their alternate method with 12 multiplies and 32 adds. The advantage of this method is that no data path contains more than one multiplication; this allows a very simple and accurate implementation in scaled fixed-point arithmetic, with a minimal number of shifts. We also provide IDCT routines with various output sample block sizes for direct resolution reduction or enlargement and for direct resolving the common 2x1 and 1x2 subsampling cases without additional resampling: NxN (N=1...16), 2NxN, and Nx2N (N=1...8) pixels for one 8x8 input DCT block. For N<8 we simply take the corresponding low-frequency coefficients of the 8x8 input DCT block and apply an NxN point IDCT on the sub-block to yield the downscaled outputs. This can be seen as direct low-pass downsampling from the DCT domain point of view rather than the usual spatial domain point of view, yielding significant computational savings and results at least as good as common bilinear (averaging) spatial downsampling. For N>8 we apply a partial NxN IDCT on the 8 input coefficients as lower frequencies and higher frequencies assumed to be zero. It turns out that the computational effort is similar to the 8x8 IDCT regarding the output size. Furthermore, the scaling and descaling is the same for all IDCT sizes. CAUTION: We rely on the FIX() macro except for the N=1,2,4,8 cases since there would be too many additional constants to pre-calculate. ## Files: jpeg/jinclude.h jinclude.h Copyright (C) 1991-1994, Thomas G. Lane. Modified 2017 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file exists to provide a single place to fix any problems with including the wrong system include files. (Common problems are taken care of by the standard jconfig symbols, but on really weird systems you may have to edit this file.) NOTE: this file is NOT intended to be included by applications using the JPEG library. Most applications need only include jpeglib.h. ## Files: jpeg/jmemansi.c jmemansi.c Copyright (C) 1992-1996, Thomas G. Lane. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file provides a simple generic implementation of the system- dependent portion of the JPEG memory manager. This implementation assumes that you have the ANSI-standard library routine tmpfile(). Also, the problem of determining the amount of memory available is shoved onto the user. ## Files: jpeg/jmemdos.c jmemdos.c Copyright (C) 1992-1997, Thomas G. Lane. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file provides an MS-DOS-compatible implementation of the system- dependent portion of the JPEG memory manager. Temporary data can be stored in extended or expanded memory as well as in regular DOS files. If you use this file, you must be sure that NEED_FAR_POINTERS is defined if you compile in a small-data memory model; it should NOT be defined if you use a large-data memory model. This file is not recommended if you are using a flat-memory-space 386 environment such as DJGCC or Watcom C. Also, this code will NOT work if struct fields are aligned on greater than 2-byte boundaries. Based on code contributed by Ge' Weijers. ## Files: jpeg/jmemmac.c jmemmac.c Copyright (C) 1992-1997, Thomas G. Lane. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. jmemmac.c provides an Apple Macintosh implementation of the system- dependent portion of the JPEG memory manager. If you use jmemmac.c, then you must define USE_MAC_MEMMGR in the JPEG_INTERNALS part of jconfig.h. jmemmac.c uses the Macintosh toolbox routines NewPtr and DisposePtr instead of malloc and free. It accurately determines the amount of memory available by using CompactMem. Notice that if left to its own devices, this code can chew up all available space in the application's zone, with the exception of the rather small "slop" factor computed in jpeg_mem_available(). The application can ensure that more space is left over by reducing max_memory_to_use. Large images are swapped to disk using temporary files and System 7.0+'s temporary folder functionality. Note that jmemmac.c depends on two features of MacOS that were first introduced in System 7: FindFolder and the FSSpec-based calls. If your application uses jmemmac.c and is run under System 6 or earlier, and the jpeg library decides it needs a temporary file, it will abort, printing error messages about requiring System 7. (If no temporary files are created, it will run fine.) If you want to use jmemmac.c in an application that might be used with System 6 or earlier, then you should remove dependencies on FindFolder and the FSSpec calls. You will need to replace FindFolder with some other mechanism for finding a place to put temporary files, and you should replace the FSSpec calls with their HFS equivalents: FSpDelete -> HDelete FSpGetFInfo -> HGetFInfo FSpCreate -> HCreate FSpOpenDF -> HOpen *** Note: not HOpenDF *** FSMakeFSSpec -> (fill in spec by hand.) (Use HOpen instead of HOpenDF. HOpen is just a glue-interface to PBHOpen, which is on all HFS macs. HOpenDF is a System 7 addition which avoids the ages-old problem of names starting with a period.) Contributed by Sam Bushell (jsam@iagu.on.net) and Dan Gildor (gyld@in-touch.com). ## Files: jpeg/jmemmgr.c jmemmgr.c Copyright (C) 1991-1997, Thomas G. Lane. Modified 2011-2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains the JPEG system-independent memory management routines. This code is usable across a wide variety of machines; most of the system dependencies have been isolated in a separate file. The major functions provided here are: * pool-based allocation and freeing of memory; * policy decisions about how to divide available memory among the virtual arrays; * control logic for swapping virtual arrays between main memory and backing storage. The separate system-dependent file provides the actual backing-storage access code, and it contains the policy decision about how much total main memory to use. This file is system-dependent in the sense that some of its functions are unnecessary in some systems. For example, if there is enough virtual memory so that backing storage will never be used, much of the virtual array control logic could be removed. (Of course, if you have that much memory then you shouldn't care about a little bit of unused code...) ## Files: jpeg/jmemname.c jmemname.c Copyright (C) 1992-1997, Thomas G. Lane. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file provides a generic implementation of the system-dependent portion of the JPEG memory manager. This implementation assumes that you must explicitly construct a name for each temp file. Also, the problem of determining the amount of memory available is shoved onto the user. ## Files: jpeg/jmemnobs.c jmemnobs.c Copyright (C) 1992-1996, Thomas G. Lane. Modified 2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file provides a really simple implementation of the system- dependent portion of the JPEG memory manager. This implementation assumes that no backing-store files are needed: all required space can be obtained from malloc(). This is very portable in the sense that it'll compile on almost anything, but you'd better have lots of main memory (or virtual memory) if you want to process big images. Note that the max_memory_to_use option is respected by this implementation. ## Files: jpeg/jmemsys.h jmemsys.h Copyright (C) 1992-1997, Thomas G. Lane. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This include file defines the interface between the system-independent and system-dependent portions of the JPEG memory manager. No other modules need include it. (The system-independent portion is jmemmgr.c; there are several different versions of the system-dependent portion.) This file works as-is for the system-dependent memory managers supplied in the IJG distribution. You may need to modify it if you write a custom memory manager. If system-dependent changes are needed in this file, the best method is to #ifdef them based on a configuration symbol supplied in jconfig.h, as we have done with USE_MSDOS_MEMMGR and USE_MAC_MEMMGR. ## Files: jpeg/jmorecfg.h jmorecfg.h Copyright (C) 1991-1997, Thomas G. Lane. Modified 1997-2013 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains additional configuration options that customize the JPEG software for special applications or support machine-dependent optimizations. Most users will not need to touch this file. ## Files: jpeg/jpegint.h jpegint.h Copyright (C) 1991-1997, Thomas G. Lane. Modified 1997-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file provides common declarations for the various JPEG modules. These declarations are considered internal to the JPEG library; most applications using the library shouldn't need to include this file. ## Files: jpeg/jpeglib.h jpeglib.h Copyright (C) 1991-1998, Thomas G. Lane. Modified 2002-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file defines the application interface for the JPEG library. Most applications using the library need only include this file, and perhaps jerror.h if they want to know the exact error codes. ## Files: jpeg/jpegtran.c jpegtran.c Copyright (C) 1995-2019, Thomas G. Lane, Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains a command-line user interface for JPEG transcoding. It is very similar to cjpeg.c, and partly to djpeg.c, but provides lossless transcoding between different JPEG file formats. It also provides some lossless and sort-of-lossless transformations of JPEG data. ## Files: jpeg/jquant1.c jquant1.c Copyright (C) 1991-1996, Thomas G. Lane. Modified 2011-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains 1-pass color quantization (color mapping) routines. These routines provide mapping to a fixed color map using equally spaced color values. Optional Floyd-Steinberg or ordered dithering is available. ## Files: jpeg/jquant2.c jquant2.c Copyright (C) 1991-1996, Thomas G. Lane. Modified 2011-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains 2-pass color quantization (color mapping) routines. These routines provide selection of a custom color map for an image, followed by mapping of the image to that color map, with optional Floyd-Steinberg dithering. It is also possible to use just the second pass to map to an arbitrary externally-given color map. Note: ordered dithering is not supported, since there isn't any fast way to compute intercolor distances; it's unclear that ordered dither's fundamental assumptions even hold with an irregularly spaced color map. ## Files: jpeg/jutils.c jutils.c Copyright (C) 1991-1996, Thomas G. Lane. Modified 2009-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains tables and miscellaneous utility routines needed for both compression and decompression. Note we prefix all global names with "j" to minimize conflicts with a surrounding application. ## Files: jpeg/jversion.h jversion.h Copyright (C) 1991-2022, Thomas G. Lane, Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains software version identification. ## Files: jpeg/rdbmp.c rdbmp.c Copyright (C) 1994-1996, Thomas G. Lane. Modified 2009-2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains routines to read input images in Microsoft "BMP" format (MS Windows 3.x, OS/2 1.x, and OS/2 2.x flavors). Currently, only 8-, 24-, and 32-bit images are supported, not 1-bit or 4-bit (feeding such low-depth images into JPEG would be silly anyway). Also, we don't support RLE-compressed files. These routines may need modification for non-Unix environments or specialized applications. As they stand, they assume input from an ordinary stdio stream. They further assume that reading begins at the start of the file; start_input may need work if the user interface has already read some data (e.g., to determine that the file is indeed BMP format). This code contributed by James Arthur Boucher. ## Files: jpeg/rdcolmap.c jpeg/rdppm.c Portions of this code are based on the PBMPLUS library, which is: * * Copyright (C) 1988 by Jef Poskanzer. * * Permission to use, copy, modify, and distribute this software and its * documentation for any purpose and without fee is hereby granted, provided * that the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation. This software is provided "as is" without express or * implied warranty. ## Files: jpeg/rdcolmap.c rdcolmap.c Copyright (C) 1994-1996, Thomas G. Lane. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file implements djpeg's "-map file" switch. It reads a source image and constructs a colormap to be supplied to the JPEG decompressor. Currently, these file formats are supported for the map file: GIF: the contents of the GIF's global colormap are used. PPM (either text or raw flavor): the entire file is read and each unique pixel value is entered in the map. Note that reading a large PPM file will be horrendously slow. Typically, a PPM-format map file should contain just one pixel of each desired color. Such a file can be extracted from an ordinary image PPM file with ppmtomap(1). Rescaling a PPM that has a maxval unequal to MAXJSAMPLE is not currently implemented. ## Files: jpeg/rdgif.c rdgif.c Copyright (C) 1991-1996, Thomas G. Lane. Modified 2019-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains routines to read input images in GIF format. These routines may need modification for non-Unix environments or specialized applications. As they stand, they assume input from an ordinary stdio stream. They further assume that reading begins at the start of the file; start_input may need work if the user interface has already read some data (e.g., to determine that the file is indeed GIF format). ## Files: jpeg/rdgif.c This code is loosely based on giftoppm from the PBMPLUS distribution of Feb. 1991. That file contains the following copyright notice: +-------------------------------------------------------------------+ | Copyright 1990, David Koblas. | | Permission to use, copy, modify, and distribute this software | | and its documentation for any purpose and without fee is hereby | | granted, provided that the above copyright notice appear in all | | copies and that both that copyright notice and this permission | | notice appear in supporting documentation. This software is | | provided "as is" without express or implied warranty. | +-------------------------------------------------------------------+ ## Files: jpeg/rdjpgcom.c rdjpgcom.c Copyright (C) 1994-1997, Thomas G. Lane. Modified 2009 by Bill Allombert, Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains a very simple stand-alone application that displays the text in COM (comment) markers in a JFIF file. This may be useful as an example of the minimum logic needed to parse JPEG markers. ## Files: jpeg/rdppm.c rdppm.c Copyright (C) 1991-1997, Thomas G. Lane. Modified 2009-2020 by Bill Allombert, Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains routines to read input images in PPM/PGM format. The extended 2-byte-per-sample raw PPM/PGM formats are supported. The PBMPLUS library is NOT required to compile this software (but it is highly useful as a set of PPM image manipulation programs). These routines may need modification for non-Unix environments or specialized applications. As they stand, they assume input from an ordinary stdio stream. They further assume that reading begins at the start of the file; start_input may need work if the user interface has already read some data (e.g., to determine that the file is indeed PPM format). ## Files: jpeg/rdrle.c rdrle.c Copyright (C) 1991-1996, Thomas G. Lane. Modified 2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains routines to read input images in Utah RLE format. The Utah Raster Toolkit library is required (version 3.1 or later). These routines may need modification for non-Unix environments or specialized applications. As they stand, they assume input from an ordinary stdio stream. They further assume that reading begins at the start of the file; start_input may need work if the user interface has already read some data (e.g., to determine that the file is indeed RLE format). Based on code contributed by Mike Lijewski, with updates from Robert Hutchinson. ## Files: jpeg/rdswitch.c rdswitch.c Copyright (C) 1991-1996, Thomas G. Lane. Modified 2003-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains routines to process some of cjpeg's more complicated command-line switches. Switches processed here are: -qtables file Read quantization tables from text file -scans file Read scan script from text file -quality N[,N,...] Set quality ratings -qslots N[,N,...] Set component quantization table selectors -sample HxV[,HxV,...] Set component sampling factors ## Files: jpeg/rdtarga.c rdtarga.c Copyright (C) 1991-1996, Thomas G. Lane. Modified 2017-2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains routines to read input images in Targa format. These routines may need modification for non-Unix environments or specialized applications. As they stand, they assume input from an ordinary stdio stream. They further assume that reading begins at the start of the file; start_input may need work if the user interface has already read some data (e.g., to determine that the file is indeed Targa format). Based on code contributed by Lee Daniel Crocker. ## Files: jpeg/transupp.c transupp.c Copyright (C) 1997-2019, Thomas G. Lane, Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains image transformation routines and other utility code used by the jpegtran sample application. These are NOT part of the core JPEG library. But we keep these routines separate from jpegtran.c to ease the task of maintaining jpegtran-like programs that have other user interfaces. ## Files: jpeg/transupp.h transupp.h Copyright (C) 1997-2019, Thomas G. Lane, Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains declarations for image transformation routines and other utility code used by the jpegtran sample application. These are NOT part of the core JPEG library. But we keep these routines separate from jpegtran.c to ease the task of maintaining jpegtran-like programs that have other user interfaces. NOTE: all the routines declared here have very specific requirements about when they are to be executed during the reading and writing of the source and destination files. See the comments in transupp.c, or see jpegtran.c for an example of correct usage. ## Files: jpeg/wrbmp.c wrbmp.c Copyright (C) 1994-1996, Thomas G. Lane. Modified 2017-2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains routines to write output images in Microsoft "BMP" format (MS Windows 3.x and OS/2 1.x flavors). Either 8-bit colormapped or 24-bit full-color format can be written. No compression is supported. These routines may need modification for non-Unix environments or specialized applications. As they stand, they assume output to an ordinary stdio stream. This code contributed by James Arthur Boucher. ## Files: jpeg/wrgif.c wrgif.c Copyright (C) 1991-1996, Thomas G. Lane. Modified 2015-2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains routines to write output images in GIF format. These routines may need modification for non-Unix environments or specialized applications. As they stand, they assume output to an ordinary stdio stream. ## Files: jpeg/wrgif.c This code is loosely based on ppmtogif from the PBMPLUS distribution of Feb. 1991. That file contains the following copyright notice: Based on GIFENCODE by David Rowley . Lempel-Ziv compression based on "compress" by Spencer W. Thomas et al. Copyright (C) 1989 by Jef Poskanzer. Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. This software is provided "as is" without express or implied warranty. ## Files: jpeg/wrjpgcom.c wrjpgcom.c Copyright (C) 1994-1997, Thomas G. Lane. Modified 2015-2017 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains a very simple stand-alone application that inserts user-supplied text as a COM (comment) marker in a JFIF file. This may be useful as an example of the minimum logic needed to parse JPEG markers. ## Files: jpeg/wrppm.c wrppm.c Copyright (C) 1991-1996, Thomas G. Lane. Modified 2009-2020 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains routines to write output images in PPM/PGM format. The extended 2-byte-per-sample raw PPM/PGM formats are supported. The PBMPLUS library is NOT required to compile this software (but it is highly useful as a set of PPM image manipulation programs). These routines may need modification for non-Unix environments or specialized applications. As they stand, they assume output to an ordinary stdio stream. ## Files: jpeg/wrrle.c wrrle.c Copyright (C) 1991-1996, Thomas G. Lane. Modified 2017-2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains routines to write output images in RLE format. The Utah Raster Toolkit library is required (version 3.1 or later). These routines may need modification for non-Unix environments or specialized applications. As they stand, they assume output to an ordinary stdio stream. Based on code contributed by Mike Lijewski, with updates from Robert Hutchinson. ## Files: jpeg/wrtarga.c wrtarga.c Copyright (C) 1991-1996, Thomas G. Lane. Modified 2015-2019 by Guido Vollbeding. This file is part of the Independent JPEG Group's software. For conditions of distribution and use, see the accompanying README file. This file contains routines to write output images in Targa format. These routines may need modification for non-Unix environments or specialized applications. As they stand, they assume output to an ordinary stdio stream. Based on code contributed by Lee Daniel Crocker. ## Files: lcms2mt/plugins/fast_float/include/lcms2mt_fast_float.h lcms2mt/plugins/fast_float/src/fast_16_tethra.c lcms2mt/plugins/fast_float/src/fast_8_curves.c lcms2mt/plugins/fast_float/src/fast_8_matsh.c lcms2mt/plugins/fast_float/src/fast_8_matsh_sse.c lcms2mt/plugins/fast_float/src/fast_8_tethra.c lcms2mt/plugins/fast_float/src/fast_float_15bits.c lcms2mt/plugins/fast_float/src/fast_float_15mats.c lcms2mt/plugins/fast_float/src/fast_float_cmyk.c lcms2mt/plugins/fast_float/src/fast_float_curves.c lcms2mt/plugins/fast_float/src/fast_float_internal.h lcms2mt/plugins/fast_float/src/fast_float_lab.c lcms2mt/plugins/fast_float/src/fast_float_matsh.c lcms2mt/plugins/fast_float/src/fast_float_separate.c lcms2mt/plugins/fast_float/src/fast_float_sup.c lcms2mt/plugins/fast_float/src/fast_float_tethra.c lcms2mt/plugins/fast_float/testbed/fast_float_testbed.c Little Color Management System, fast floating point extensions Copyright (c) 1998-2020 Marti Maria Saguer, all rights reserved This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . ## Files: lcms2mt/src/cmssm.c Closest point in sector line1 to sector line2 (both are defined as 0 <=t <= 1) http://softsurfer.com/Archive/algorithm_0106/algorithm_0106.htm Copyright 2001, softSurfer (www.softsurfer.com) This code may be freely used and modified for any purpose providing that this copyright notice is included with it. SoftSurfer makes no warranty for this code, and cannot be held liable for any real or imagined damage resulting from its use. Users of this code must verify correctness for their application. ## Files: lcms2mt/testbed/testcms2.c Add description and copyright only in english/US ## Files: lcms2mt/testbed/testcms2.c In 2.11: When I create a RGB profile, set the copyright data with an empty string, then call cmsMD5computeID on said profile, the program crashes. ## Files: lcms2mt/testbed/testcms2.c Set an empty copyright tag. This should log an error. ## Files: lcms2mt/utils/linkicc/linkicc.c Doing that is correct and safe: Description points to memory allocated in the command line. same for Copyright and output devicelink. ## Files: lcms2mt/utils/linkicc/linkicc.c lcms2mt/utils/samples/mktiff8.c Set the copyright and description ## Files: lcms2mt/utils/samples/mkcmy.c Little cms Copyright (C) 1998-2003 Marti Maria Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THIS SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MARTI MARIA BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. Version 1.12 ## Files: leptonica/README.html leptonica/version-notes.html ## Files: leptonica/README.html leptonica/version-notes.html ## Files: leptonica/README.html leptonica/version-notes.html ## Files: leptonica/src/encoding.c ====================================================================* - Copyright (C) 2001 Leptonica. All rights reserved. - This software is distributed in the hope that it will be - useful, but with NO WARRANTY OF ANY KIND. - No author or distributor accepts responsibility to anyone for the - consequences of using this software, or for whether it serves any - particular purpose or works at all, unless he or she says so in - writing. Everyone is granted permission to copy, modify and - redistribute this source code, for commercial or non-commercial - purposes, with the following restrictions: (1) the origin of this - source code must not be misrepresented; (2) modified versions must - be plainly marked as such; and (3) this notice may not be removed - or altered from any source or modified source distribution. *==================================================================== ## Files: leptonica/src/fhmtauto.c leptonica/src/fmorphauto.c Copyright notice and info header ## Files: leptonica/src/pngio.c Memio utility * libpng read/write callback replacements for performing memory I/O * * Copyright (C) 2017 Milner Technologies, Inc. This content is a * component of leptonica and is provided under the terms of the * Leptonica license. * ## Files: leptonica/src/stringcode.c Copyright notice ## Files: lib/afmdiff.awk ##===================================================================== ## Read two Adobe Font Metric files, and compute tables of the ## differences in character repertoire, declared widths (WX), and ## bounding boxes. ## ## Usage: ## awk -f afmdiff.awk file1.afm file2.afm ## ## Author: ## Nelson H. F. Beebe ## Center for Scientific Computing ## University of Utah ## Department of Mathematics, 322 INSCC ## 155 S 1400 E RM 233 ## Salt Lake City, UT 84112-0090 ## USA ## Email: beebe@math.utah.edu, beebe@acm.org, beebe@computer.org, ## beebe@ieee.org (Internet) ## WWW URL: http://www.math.utah.edu/~beebe ## Telephone: +1 801 581 5254 ## FAX: +1 801 585 1640, +1 801 581 4148 ## ####################################################################### ####################################################################### ####################################################################### ## ### ## awkdiff.awk: compare two Adobe Font Metric files ### ## ### ## Copyright (C) 2000 Nelson H. F. Beebe ### ## ### ## This program is covered by the GNU General Public License (GPL), ### ## version 2 or later, available as the file COPYING in the program ### ## source distribution, and on the Internet at ### ## ### ## ftp://ftp.gnu.org/gnu/GPL ### ## ### ## http://www.gnu.org/copyleft/gpl.html ### ## ### ## This program is free software; you can redistribute it and/or ### ## modify it under the terms of the GNU General Public License as ### ## published by the Free Software Foundation; either version 2 of ### ## the License, or (at your option) any later version. ### ## ### ## This program is distributed in the hope that it will be useful, ### ## but WITHOUT ANY WARRANTY; without even the implied warranty of ### ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ### ## GNU General Public License for more details. ### ## ### ## You should have received a copy of the GNU General Public ### ## License along with this program; if not, write to the Free ### ## Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, ### ## MA 02111-1307 USA ### ## ### ## This program may also be distributed as part of AFPL ### ## Ghostscript, under the terms of the Aladdin Free Public License ### ## (the "License"). ### ## ### ## Every copy of AFPL Ghostscript must include a copy of the ### ## License, normally in a plain ASCII text file named PUBLIC. The ### ## License grants you the right to copy, modify and redistribute ### ## AFPL Ghostscript, but only under certain conditions ### ## described in the License. Among other things, the License ### ## requires that the copyright notice and this notice be preserved ### ## on all copies. ### ## ### ####################################################################### ####################################################################### ####################################################################### [29-Apr-2000] ======================================================================= ## Files: libpng/arm/arm_init.c arm_init.c - NEON optimised filter functions Copyright (c) 2018-2022 Cosmin Truta Copyright (c) 2014,2016 Glenn Randers-Pehrson Written by Mans Rullgard, 2011. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/arm/filter_neon_intrinsics.c filter_neon_intrinsics.c - NEON optimised filter functions Copyright (c) 2018 Cosmin Truta Copyright (c) 2014,2016 Glenn Randers-Pehrson Written by James Yu , October 2013. Based on filter_neon.S, written by Mans Rullgard, 2011. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/arm/palette_neon_intrinsics.c palette_neon_intrinsics.c - NEON optimised palette expansion functions Copyright (c) 2018-2019 Cosmin Truta Copyright (c) 2017-2018 Arm Holdings. All rights reserved. Written by Richard Townsend , February 2017. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/ci/ci_autotools.sh ci_autotools.sh Continuously integrate libpng using the GNU Autotools. Copyright (c) 2019-2022 Cosmin Truta. This software is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h. ## Files: libpng/ci/ci_cmake.sh ci_cmake.sh Continuously integrate libpng using CMake. Copyright (c) 2019-2022 Cosmin Truta. This software is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h. ## Files: libpng/ci/ci_legacy.sh ci_legacy.sh Continuously integrate libpng using the legacy makefiles. Copyright (c) 2019-2022 Cosmin Truta. This software is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h. ## Files: libpng/contrib/arm-neon/android-ndk.c contrib/arm-neon/android-ndk.c Copyright (c) 2014 Glenn Randers-Pehrson Written by John Bowler, 2014. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h SEE contrib/arm-neon/README before reporting bugs STATUS: COMPILED, UNTESTED BUG REPORTS: png-mng-implement@sourceforge.net png_have_neon implemented for the Android NDK, see: Documentation: http://www.kandroid.org/ndk/docs/CPU-ARM-NEON.html https://code.google.com/p/android/issues/detail?id=49065 NOTE: this requires that libpng is built against the Android NDK and linked with an implementation of the Android ARM 'cpu-features' library. The code has been compiled only, not linked: no version of the library has been found, only the header files exist in the NDK. ## Files: libpng/contrib/arm-neon/linux-auxv.c contrib/arm-neon/linux-auxv.c Copyright (c) 2014 Glenn Randers-Pehrson Written by Mans Rullgard, 2011. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h SEE contrib/arm-neon/README before reporting bugs STATUS: COMPILED, TESTED BUG REPORTS: png-mng-implement@sourceforge.net png_have_neon implemented for Linux versions which allow access to /proc/self/auxv. This is probably faster, cleaner and safer than the code to read /proc/cpuinfo in contrib/arm-neon/linux, however it is yet another piece of potentially untested code and has more complex dependencies than the code to read cpuinfo. This generic __linux__ implementation requires reading /proc/self/auxv and looking at each element for one that records NEON capabilities. ## Files: libpng/contrib/arm-neon/linux.c contrib/arm-neon/linux.c Copyright (c) 2014, 2017 Glenn Randers-Pehrson Written by John Bowler, 2014, 2017. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h SEE contrib/arm-neon/README before reporting bugs STATUS: SUPPORTED BUG REPORTS: png-mng-implement@sourceforge.net png_have_neon implemented for Linux by reading the widely available pseudo-file /proc/cpuinfo. This code is strict ANSI-C and is probably moderately portable; it does however use and it assumes that /proc/cpuinfo is never localized. ## Files: libpng/contrib/examples/iccfrompng.c - iccfrompng COPYRIGHT: Written by John Cunningham Bowler, 2011. To the extent possible under law, the author has waived all copyright and related or neighboring rights to this work. This work is published from: United States. Extract any icc profiles found in the given PNG files. This is a simple example of a program that extracts information from the header of a PNG file without processing the image. Notice that some header information may occur after the image data. Textual data and comments are an example; the approach in this file won't work reliably for such data because it only looks for the information in the section of the file that precedes the image data. Compile and link against libpng and zlib, plus anything else required on the system you use. To use supply a list of PNG files containing iCCP chunks, the chunks will be extracted to a similarly named file with the extension replaced by 'icc', which will be overwritten without warning. ## Files: libpng/contrib/examples/pngpixel.c - pngpixel COPYRIGHT: Written by John Cunningham Bowler, 2011. To the extent possible under law, the author has waived all copyright and related or neighboring rights to this work. This work is published from: United States. Read a single pixel value from a PNG file. This code illustrates basic 'by-row' reading of a PNG file using libpng. Rows are read until a particular pixel is found; the value of this pixel is then printed on stdout. The code illustrates how to do this on interlaced as well as non-interlaced images. Normally you would call png_set_interlace_handling() to have libpng deal with the interlace for you, but that obliges you to buffer half of the image to assemble the interlaced rows. In this code png_set_interlace_handling() is not called and, instead, the code handles the interlace passes directly looking for the required pixel. ## Files: libpng/contrib/examples/pngtopng.c - pngtopng COPYRIGHT: Written by John Cunningham Bowler, 2011, 2017. To the extent possible under law, the author has waived all copyright and related or neighboring rights to this work. This work is published from: United States. Read a PNG and write it out in a fixed format, using the 'simplified API' that was introduced in libpng-1.6.0. This sample code is just the code from the top of 'example.c' with some error handling added. See example.c for more comments. ## Files: libpng/contrib/examples/simpleover.c - simpleover COPYRIGHT: Written by John Cunningham Bowler, 2015. To the extent possible under law, the author has waived all copyright and related or neighboring rights to this work. This work is published from: United States. Read several PNG files, which should have an alpha channel or transparency information, and composite them together to produce one or more 16-bit linear RGBA intermediates. This involves doing the correct 'over' composition to combine the alpha channels and corresponding data. Finally read an output (background) PNG using the 24-bit RGB format (the PNG will be composited on green (#00ff00) by default if it has an alpha channel), and apply the intermediate image generated above to specified locations in the image. The command line has the general format: simpleover [output.png] {--sprite=width,height,name {[--at=x,y] {sprite.png}}} {--add=name {x,y}} The --sprite and --add options may occur multiple times. They are executed in order. --add may refer to any sprite already read. This code is intended to show how to composite multiple images together correctly. Apart from the libpng Simplified API the only work done in here is to combine multiple input PNG images into a single sprite; this involves a Porter-Duff 'over' operation and the input PNG images may, as a result, be regarded as being layered one on top of the other with the first (leftmost on the command line) being at the bottom and the last on the top. ## Files: libpng/contrib/gregbook/readpng.c rpng - simple PNG display program readpng.c --------------------------------------------------------------------------- Copyright (c) 1998-2007,2017 Greg Roelofs. All rights reserved. This software is provided "as is," without warranty of any kind, express or implied. In no event shall the author or contributors be held liable for any damages arising in any way from the use of this software. The contents of this file are DUAL-LICENSED. You may modify and/or redistribute this software according to the terms of one of the following two licenses (at your option): LICENSE 1 ("BSD-like with advertising clause"): Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. Redistributions of source code must retain the above copyright notice, disclaimer, and this list of conditions. 2. Redistributions in binary form must reproduce the above copyright notice, disclaimer, and this list of conditions in the documenta- tion and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Greg Roelofs and contributors for the book, "PNG: The Definitive Guide," published by O'Reilly and Associates. LICENSE 2 (GNU GPL v2 or later): This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ## Files: libpng/contrib/gregbook/readpng.h rpng - simple PNG display program readpng.h --------------------------------------------------------------------------- Copyright (c) 1998-2007 Greg Roelofs. All rights reserved. This software is provided "as is," without warranty of any kind, express or implied. In no event shall the author or contributors be held liable for any damages arising in any way from the use of this software. The contents of this file are DUAL-LICENSED. You may modify and/or redistribute this software according to the terms of one of the following two licenses (at your option): LICENSE 1 ("BSD-like with advertising clause"): Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. Redistributions of source code must retain the above copyright notice, disclaimer, and this list of conditions. 2. Redistributions in binary form must reproduce the above copyright notice, disclaimer, and this list of conditions in the documenta- tion and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Greg Roelofs and contributors for the book, "PNG: The Definitive Guide," published by O'Reilly and Associates. LICENSE 2 (GNU GPL v2 or later): This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ## Files: libpng/contrib/gregbook/readpng2.c rpng2 - progressive-model PNG display program readpng2.c --------------------------------------------------------------------------- Copyright (c) 1998-2015 Greg Roelofs. All rights reserved. This software is provided "as is," without warranty of any kind, express or implied. In no event shall the author or contributors be held liable for any damages arising in any way from the use of this software. The contents of this file are DUAL-LICENSED. You may modify and/or redistribute this software according to the terms of one of the following two licenses (at your option): LICENSE 1 ("BSD-like with advertising clause"): Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. Redistributions of source code must retain the above copyright notice, disclaimer, and this list of conditions. 2. Redistributions in binary form must reproduce the above copyright notice, disclaimer, and this list of conditions in the documenta- tion and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Greg Roelofs and contributors for the book, "PNG: The Definitive Guide," published by O'Reilly and Associates. LICENSE 2 (GNU GPL v2 or later): This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA --------------------------------------------------------------------------- Changelog: 2015-11-12 - Check return value of png_get_bKGD() (Glenn R-P) 2017-04-22 - Guard against integer overflow (Glenn R-P) ## Files: libpng/contrib/gregbook/readpng2.h rpng2 - progressive-model PNG display program readpng2.h --------------------------------------------------------------------------- Copyright (c) 1998-2008 Greg Roelofs. All rights reserved. This software is provided "as is," without warranty of any kind, express or implied. In no event shall the author or contributors be held liable for any damages arising in any way from the use of this software. The contents of this file are DUAL-LICENSED. You may modify and/or redistribute this software according to the terms of one of the following two licenses (at your option): LICENSE 1 ("BSD-like with advertising clause"): Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. Redistributions of source code must retain the above copyright notice, disclaimer, and this list of conditions. 2. Redistributions in binary form must reproduce the above copyright notice, disclaimer, and this list of conditions in the documenta- tion and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Greg Roelofs and contributors for the book, "PNG: The Definitive Guide," published by O'Reilly and Associates. LICENSE 2 (GNU GPL v2 or later): This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ## Files: libpng/contrib/gregbook/readppm.c rpng - simple PNG display program readppm.c --------------------------------------------------------------------------- This is a special-purpose replacement for readpng.c that allows binary PPM files to be used in place of PNG images. --------------------------------------------------------------------------- Copyright (c) 1998-2007,2017 Greg Roelofs. All rights reserved. This software is provided "as is," without warranty of any kind, express or implied. In no event shall the author or contributors be held liable for any damages arising in any way from the use of this software. The contents of this file are DUAL-LICENSED. You may modify and/or redistribute this software according to the terms of one of the following two licenses (at your option): LICENSE 1 ("BSD-like with advertising clause"): Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. Redistributions of source code must retain the above copyright notice, disclaimer, and this list of conditions. 2. Redistributions in binary form must reproduce the above copyright notice, disclaimer, and this list of conditions in the documenta- tion and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Greg Roelofs and contributors for the book, "PNG: The Definitive Guide," published by O'Reilly and Associates. LICENSE 2 (GNU GPL v2 or later): This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ## Files: libpng/contrib/gregbook/rpng-win.c rpng - simple PNG display program rpng-win.c This program decodes and displays PNG images, with gamma correction and optionally with a user-specified background color (in case the image has transparency). It is very nearly the most basic PNG viewer possible. This version is for 32-bit Windows; it may compile under 16-bit Windows with a little tweaking (or maybe not). to do: - handle quoted command-line args (especially filenames with spaces) - have minimum window width: oh well - use %.1023s to simplify truncation of title-bar string? --------------------------------------------------------------------------- Changelog: - 1.00: initial public release - 1.01: modified to allow abbreviated options; fixed long/ulong mis- match; switched to png_jmpbuf() macro - 1.02: added extra set of parentheses to png_jmpbuf() macro; fixed command-line parsing bug - 1.10: enabled "message window"/console (thanks to David Geldreich) - 2.00: dual-licensed (added GNU GPL) - 2.01: fixed improper display of usage screen on PNG error(s) - 2.02: check for integer overflow (Glenn R-P) --------------------------------------------------------------------------- Copyright (c) 1998-2008, 2017 Greg Roelofs. All rights reserved. This software is provided "as is," without warranty of any kind, express or implied. In no event shall the author or contributors be held liable for any damages arising in any way from the use of this software. The contents of this file are DUAL-LICENSED. You may modify and/or redistribute this software according to the terms of one of the following two licenses (at your option): LICENSE 1 ("BSD-like with advertising clause"): Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. Redistributions of source code must retain the above copyright notice, disclaimer, and this list of conditions. 2. Redistributions in binary form must reproduce the above copyright notice, disclaimer, and this list of conditions in the documenta- tion and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Greg Roelofs and contributors for the book, "PNG: The Definitive Guide," published by O'Reilly and Associates. LICENSE 2 (GNU GPL v2 or later): This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ## Files: libpng/contrib/gregbook/rpng-x.c rpng - simple PNG display program rpng-x.c This program decodes and displays PNG images, with gamma correction and optionally with a user-specified background color (in case the image has transparency). It is very nearly the most basic PNG viewer possible. This version is for the X Window System (tested by author under Unix and by Martin Zinser under OpenVMS; may work under OS/2 with some tweaking). to do: - 8-bit (colormapped) X support - use %.1023s to simplify truncation of title-bar string? --------------------------------------------------------------------------- Changelog: - 1.01: initial public release - 1.02: modified to allow abbreviated options; fixed long/ulong mis- match; switched to png_jmpbuf() macro - 1.10: added support for non-default visuals; fixed X pixel-conversion - 1.11: added extra set of parentheses to png_jmpbuf() macro; fixed command-line parsing bug - 1.12: fixed some small X memory leaks (thanks to Fran�ois Petitjean) - 1.13: fixed XFreeGC() crash bug (thanks to Patrick Welche) - 1.14: added support for X resources (thanks to Gerhard Niklasch) - 2.00: dual-licensed (added GNU GPL) - 2.01: fixed improper display of usage screen on PNG error(s) - 2.02: Added "void(argc);" statement to quiet pedantic compiler warnings about unused variable (GR-P) - 2.03: check for integer overflow (Glenn R-P) --------------------------------------------------------------------------- Copyright (c) 1998-2008, 2017 Greg Roelofs. All rights reserved. This software is provided "as is," without warranty of any kind, express or implied. In no event shall the author or contributors be held liable for any damages arising in any way from the use of this software. The contents of this file are DUAL-LICENSED. You may modify and/or redistribute this software according to the terms of one of the following two licenses (at your option): LICENSE 1 ("BSD-like with advertising clause"): Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. Redistributions of source code must retain the above copyright notice, disclaimer, and this list of conditions. 2. Redistributions in binary form must reproduce the above copyright notice, disclaimer, and this list of conditions in the documenta- tion and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Greg Roelofs and contributors for the book, "PNG: The Definitive Guide," published by O'Reilly and Associates. LICENSE 2 (GNU GPL v2 or later): This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ## Files: libpng/contrib/gregbook/rpng2-win.c rpng2 - progressive-model PNG display program rpng2-win.c This program decodes and displays PNG files progressively, as if it were a web browser (though the front end is only set up to read from files). It supports gamma correction, user-specified background colors, and user- specified background patterns (for transparent images). This version is for 32-bit Windows; it may compile under 16-bit Windows with a little tweaking (or maybe not). Thanks to Adam Costello and Pieter S. van der Meulen for the "diamond" and "radial waves" patterns, respectively. to do (someday, maybe): - handle quoted command-line args (especially filenames with spaces) - finish resizable checkerboard-gradient (sizes 4-128?) - use %.1023s to simplify truncation of title-bar string? - have minimum window width: oh well --------------------------------------------------------------------------- Changelog: - 1.01: initial public release - 1.02: fixed cut-and-paste error in usage screen (oops...) - 1.03: modified to allow abbreviated options - 1.04: removed bogus extra argument from usage fprintf() [Glenn R-P?]; fixed command-line parsing bug - 1.10: enabled "message window"/console (thanks to David Geldreich) - 1.20: added runtime MMX-enabling/disabling and new -mmx* options - 1.21: made minor tweak to usage screen to fit within 25-line console - 1.22: added AMD64/EM64T support (__x86_64__) - 2.00: dual-licensed (added GNU GPL) - 2.01: fixed 64-bit typo in readpng2.c - 2.02: fixed improper display of usage screen on PNG error(s); fixed unexpected-EOF and file-read-error cases - 2.03: removed runtime MMX-enabling/disabling and obsolete -mmx* options - 2.04: check for integer overflow (Glenn R-P) --------------------------------------------------------------------------- Copyright (c) 1998-2008, 2017 Greg Roelofs. All rights reserved. This software is provided "as is," without warranty of any kind, express or implied. In no event shall the author or contributors be held liable for any damages arising in any way from the use of this software. The contents of this file are DUAL-LICENSED. You may modify and/or redistribute this software according to the terms of one of the following two licenses (at your option): LICENSE 1 ("BSD-like with advertising clause"): Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. Redistributions of source code must retain the above copyright notice, disclaimer, and this list of conditions. 2. Redistributions in binary form must reproduce the above copyright notice, disclaimer, and this list of conditions in the documenta- tion and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Greg Roelofs and contributors for the book, "PNG: The Definitive Guide," published by O'Reilly and Associates. LICENSE 2 (GNU GPL v2 or later): This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ## Files: libpng/contrib/gregbook/rpng2-x.c rpng2 - progressive-model PNG display program rpng2-x.c This program decodes and displays PNG files progressively, as if it were a web browser (though the front end is only set up to read from files). It supports gamma correction, user-specified background colors, and user- specified background patterns (for transparent images). This version is for the X Window System (tested by the author under Unix and by Martin Zinser under OpenVMS; may work under OS/2 with a little tweaking). Thanks to Adam Costello and Pieter S. van der Meulen for the "diamond" and "radial waves" patterns, respectively. to do (someday, maybe): - fix expose/redraw code: don't draw entire row if only part exposed - 8-bit (colormapped) X support - finish resizable checkerboard-gradient (sizes 4-128?) - use %.1023s to simplify truncation of title-bar string? --------------------------------------------------------------------------- Changelog: - 1.01: initial public release - 1.02: modified to allow abbreviated options; fixed char/uchar mismatch - 1.10: added support for non-default visuals; fixed X pixel-conversion - 1.11: added -usleep option for demos; fixed command-line parsing bug - 1.12: added -pause option for demos and testing - 1.20: added runtime MMX-enabling/disabling and new -mmx* options - 1.21: fixed some small X memory leaks (thanks to Fran�ois Petitjean) - 1.22: fixed XFreeGC() crash bug (thanks to Patrick Welche) - 1.23: added -bgpat 0 mode (std white/gray checkerboard, 8x8 squares) - 1.30: added -loop option for -bgpat (ifdef FEATURE_LOOP); fixed bpp = 24; added support for X resources (thanks to Gerhard Niklasch) - 1.31: added code to skip unused chunks (thanks to Glenn Randers-Pehrson) - 1.32: added AMD64/EM64T support (__x86_64__); added basic expose/redraw handling - 2.00: dual-licensed (added GNU GPL) - 2.01: fixed 64-bit typo in readpng2.c; fixed -pause usage description - 2.02: fixed improper display of usage screen on PNG error(s); fixed unexpected-EOF and file-read-error cases; fixed Trace() cut-and- paste bugs - 2.03: deleted runtime MMX-enabling/disabling and obsolete -mmx* options - 2.04: Added "void(foo);" statements to quiet pedantic compiler warnings about unused variables (GR-P) - 2.05: Use nanosleep() instead of usleep(), which is deprecated (GR-P). - 2.06: check for integer overflow (Glenn R-P) --------------------------------------------------------------------------- Copyright (c) 1998-2010, 2014-2015, 2017 Greg Roelofs. All rights reserved. This software is provided "as is," without warranty of any kind, express or implied. In no event shall the author or contributors be held liable for any damages arising in any way from the use of this software. The contents of this file are DUAL-LICENSED. You may modify and/or redistribute this software according to the terms of one of the following two licenses (at your option): LICENSE 1 ("BSD-like with advertising clause"): Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. Redistributions of source code must retain the above copyright notice, disclaimer, and this list of conditions. 2. Redistributions in binary form must reproduce the above copyright notice, disclaimer, and this list of conditions in the documenta- tion and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Greg Roelofs and contributors for the book, "PNG: The Definitive Guide," published by O'Reilly and Associates. LICENSE 2 (GNU GPL v2 or later): This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ## Files: libpng/contrib/gregbook/wpng.c wpng - simple PNG-writing program wpng.c This program converts certain NetPBM binary files (grayscale and RGB, maxval = 255) to PNG. Non-interlaced PNGs are written progressively; interlaced PNGs are read and written in one memory-intensive blast. Thanks to Jean-loup Gailly for providing the necessary trick to read interactive text from the keyboard while stdin is redirected. Thanks to Cosmin Truta for Cygwin fixes. NOTE: includes provisional support for PNM type "8" (portable alphamap) images, presumed to be a 32-bit interleaved RGBA format; no pro- vision for possible interleaved grayscale+alpha (16-bit) format. THIS IS UNLIKELY TO BECOME AN OFFICIAL NETPBM ALPHA FORMAT! to do: - delete output file if quit before calling any writepng routines - process backspace with -text option under DOS/Win? (currently get ^H) --------------------------------------------------------------------------- Changelog: - 1.01: initial public release - 1.02: modified to allow abbreviated options - 1.03: removed extraneous character from usage screen; fixed bug in command-line parsing - 1.04: fixed DOS/OS2/Win32 detection, including partial Cygwin fix (see http://home.att.net/~perlspinr/diffs/GregBook_cygwin.diff) - 2.00: dual-licensed (added GNU GPL) - 2.01: check for integer overflow (Glenn R-P) [REPORTED BUG (win32 only): "contrib/gregbook/wpng.c - cmd line dose not work! In order to do something useful I needed to redirect both input and output, with cygwin and with bcc32 as well. Under Linux, the same wpng appears to work fine. I don't know what is the problem."] --------------------------------------------------------------------------- Copyright (c) 1998-2007, 2017 Greg Roelofs. All rights reserved. This software is provided "as is," without warranty of any kind, express or implied. In no event shall the author or contributors be held liable for any damages arising in any way from the use of this software. The contents of this file are DUAL-LICENSED. You may modify and/or redistribute this software according to the terms of one of the following two licenses (at your option): LICENSE 1 ("BSD-like with advertising clause"): Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. Redistributions of source code must retain the above copyright notice, disclaimer, and this list of conditions. 2. Redistributions in binary form must reproduce the above copyright notice, disclaimer, and this list of conditions in the documenta- tion and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Greg Roelofs and contributors for the book, "PNG: The Definitive Guide," published by O'Reilly and Associates. LICENSE 2 (GNU GPL v2 or later): This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ## Files: libpng/contrib/gregbook/writepng.c wpng - simple PNG-writing program writepng.c --------------------------------------------------------------------------- Copyright (c) 1998-2007, 2017 Greg Roelofs. All rights reserved. This software is provided "as is," without warranty of any kind, express or implied. In no event shall the author or contributors be held liable for any damages arising in any way from the use of this software. The contents of this file are DUAL-LICENSED. You may modify and/or redistribute this software according to the terms of one of the following two licenses (at your option): LICENSE 1 ("BSD-like with advertising clause"): Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. Redistributions of source code must retain the above copyright notice, disclaimer, and this list of conditions. 2. Redistributions in binary form must reproduce the above copyright notice, disclaimer, and this list of conditions in the documenta- tion and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Greg Roelofs and contributors for the book, "PNG: The Definitive Guide," published by O'Reilly and Associates. LICENSE 2 (GNU GPL v2 or later): This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ## Files: libpng/contrib/gregbook/writepng.h wpng - simple PNG-writing program writepng.h --------------------------------------------------------------------------- Copyright (c) 1998-2007 Greg Roelofs. All rights reserved. This software is provided "as is," without warranty of any kind, express or implied. In no event shall the author or contributors be held liable for any damages arising in any way from the use of this software. The contents of this file are DUAL-LICENSED. You may modify and/or redistribute this software according to the terms of one of the following two licenses (at your option): LICENSE 1 ("BSD-like with advertising clause"): Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. Redistributions of source code must retain the above copyright notice, disclaimer, and this list of conditions. 2. Redistributions in binary form must reproduce the above copyright notice, disclaimer, and this list of conditions in the documenta- tion and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Greg Roelofs and contributors for the book, "PNG: The Definitive Guide," published by O'Reilly and Associates. LICENSE 2 (GNU GPL v2 or later): This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ## Files: libpng/contrib/libtests/fakepng.c Fake a PNG - just write it out directly. COPYRIGHT: Written by John Cunningham Bowler, 2014. To the extent possible under law, the author has waived all copyright and related or neighboring rights to this work. This work is published from: United States. ## Files: libpng/contrib/libtests/gentests.sh Copyright (c) 2013 John Cunningham Bowler This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Generate a set of PNG test images. The images are generated in a sub-directory called 'tests' by default, however a command line argument will change that name. The generation requires a built version of makepng in the current directory. ## Files: libpng/contrib/libtests/makepng.c Copyright: ## Files: libpng/contrib/libtests/makepng.c This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Make a test PNG image. The arguments are as follows: makepng [--sRGB|--linear|--1.8] [--tRNS] [--nofilters] \ color-type bit-depth [file-name] The color-type may be numeric (and must match the numbers used by the PNG specification) or one of the format names listed below. The bit-depth is the component bit depth, or the pixel bit-depth for a color-mapped image. Without any options no color-space information is written, with the options an sRGB or the appropriate gAMA chunk is written. "1.8" refers to the display system used on older Apple computers to correct for high ambient light levels in the viewing environment; it applies a transform of approximately value^(1/1.45) to the color values and so a gAMA chunk of 65909 is written (1.45/2.2). The image data is generated internally. Unless --color is given the images used are as follows: 1 channel: a square image with a diamond, the least luminous colors are on the edge of the image, the most luminous in the center. 2 channels: the color channel increases in luminosity from top to bottom, the alpha channel increases in opacity from left to right. 3 channels: linear combinations of, from the top-left corner clockwise, black, green, white, red. 4 channels: linear combinations of, from the top-left corner clockwise, transparent, red, green, blue. For color-mapped images a four channel color-map is used and if --tRNS is given the PNG file has a tRNS chunk, as follows: 1-bit: entry 0 is transparent-red, entry 1 is opaque-white 2-bit: entry 0: transparent-green entry 1: 40%-red entry 2: 80%-blue entry 3: opaque-white 4-bit: the 16 combinations of the 2-bit case 8-bit: the 256 combinations of the 4-bit case The palette always has 2^bit-depth entries and the tRNS chunk one fewer. The image is the 1-channel diamond, but using palette index, not luminosity. For formats other than color-mapped ones if --tRNS is specified a tRNS chunk is generated with all channels equal to the low bits of 0x0101. Image size is determined by the final pixel depth in bits, i.e. channels x bit-depth, as follows: 8 bits or less: 64x64 16 bits: 256x256 More than 16 bits: 1024x1024 Row filtering is the libpng default but may be turned off (the 'none' filter is used on every row) with the --nofilters option. The images are not interlaced. If file-name is given then the PNG is written to that file, else it is written to stdout. Notice that stdout is not supported on systems where, by default, it assumes text output; this program makes no attempt to change the text mode of stdout! makepng --color= ... If --color is given then the whole image has that color, color-mapped images will have exactly one palette entry and all image files with be 16x16 in size. The color value is 1 to 4 decimal numbers as appropriate for the color type. makepng --small ... If --small is given the images are no larger than required to include every possible pixel value for the format. For formats with pixels 8 bits or fewer in size the images consist of a single row with 2^pixel-depth pixels, one of every possible value. For formats with 16-bit pixels a 256x256 image is generated containing every possible pixel value. For larger pixel sizes a 256x256 image is generated where the first row consists of each pixel that has identical byte values throughout the pixel followed by rows where the byte values differ within the pixel. In all cases the pixel values are arranged in such a way that the SUB and UP filters give byte sequences for maximal zlib compression. By default (if --nofilters is not given) the SUB filter is used on the first row and the UP filter on all following rows. The --small option is meant to provide good test-case coverage, however the images are not easy to examine visually. Without the --small option the images contain identical color values; the pixel values are adjusted according to the gamma encoding with no gamma encoding being interpreted as sRGB. LICENSING ========= This code is copyright of the authors, see the COPYRIGHT define above. The code is licensed as above, using the libpng license. The code generates images which are solely the product of the code; the options choose which of the many possibilities to generate. The images that result (but not the code which generates them) are licensed as defined here: IMPORTANT: the COPYRIGHT #define must contain ISO-Latin-1 characters, the IMAGE_LICENSING #define must contain UTF-8 characters. The 'copyright' symbol 0xA9U (\251) in ISO-Latin-1 encoding and 0xC20xA9 (\302\251) in UTF-8. ## Files: libpng/contrib/libtests/makepng.c Max out the text compression level in an attempt to make the license small. If --small then do the same for the IDAT. ## Files: libpng/contrib/libtests/makepng.c These are used to insert Copyright and Licence fields, they allow the text to have \n unlike the --insert option. ## Files: libpng/contrib/libtests/makepng.c Insert standard copyright and licence text. ## Files: libpng/contrib/libtests/pngimage.c pngimage.c Copyright (c) 2021 Cosmin Truta Copyright (c) 2015,2016 John Cunningham Bowler This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Test the png_read_png and png_write_png interfaces. Given a PNG file load it using png_read_png and then write with png_write_png. Test all possible transforms. ## Files: libpng/contrib/libtests/pngstest-errors.h contrib/libtests/pngstest-errors.h BUILT USING: libpng version 1.6.19beta03 - September 25, 2015 This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h THIS IS A MACHINE GENERATED FILE: do not edit it directly! Instead run: pngstest --accumulate on as many PNG files as possible; at least PNGSuite and contrib/libtests/testpngs. ## Files: libpng/contrib/libtests/pngstest.c pngstest.c Copyright (c) 2021 Cosmin Truta Copyright (c) 2013-2017 John Cunningham Bowler This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Test for the PNG 'simplified' APIs. ## Files: libpng/contrib/libtests/pngunknown.c pngunknown.c - test the read side unknown chunk handling Copyright (c) 2021 Cosmin Truta Copyright (c) 2015,2017 Glenn Randers-Pehrson Written by John Cunningham Bowler This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h NOTES: This is a C program that is intended to be linked against libpng. It allows the libpng unknown handling code to be tested by interpreting arguments to save or discard combinations of chunks. The program is currently just a minimal validation for the built-in libpng facilities. ## Files: libpng/contrib/libtests/pngvalid.c pngvalid.c - validate libpng by constructing then reading png files. Copyright (c) 2021 Cosmin Truta Copyright (c) 2014-2017 John Cunningham Bowler This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h NOTES: This is a C program that is intended to be linked against libpng. It generates bitmaps internally, stores them as PNG files (using the sequential write code) then reads them back (using the sequential read code) and validates that the result has the correct data. The program can be modified and extended to test the correctness of transformations performed by libpng. ## Files: libpng/contrib/libtests/readpng.c readpng.c Copyright (c) 2013 John Cunningham Bowler This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Load an arbitrary number of PNG files (from the command line, or, if there are no arguments on the command line, from stdin) then run a time test by reading each file by row. The test does nothing with the read result and does no transforms. The only output is a time as a floating point number of seconds with 9 decimal digits. ## Files: libpng/contrib/libtests/tarith.c tarith.c Copyright (c) 2021 Cosmin Truta Copyright (c) 2011-2013 John Cunningham Bowler This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Test internal arithmetic functions of libpng. This code must be linked against a math library (-lm), but does not require libpng or zlib to work. Because it includes the complete source of 'png.c' it tests the code with whatever compiler options are used to build it. Changing these options can substantially change the errors in the calculations that the compiler chooses! ## Files: libpng/contrib/libtests/timepng.c timepng.c Copyright (c) 2013,2016 John Cunningham Bowler This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Load an arbitrary number of PNG files (from the command line, or, if there are no arguments on the command line, from stdin) then run a time test by reading each file by row or by image (possibly with transforms in the latter case). The only output is a time as a floating point number of seconds with 9 decimal digits. ## Files: libpng/contrib/mips-msa/linux.c contrib/mips-msa/linux.c Copyright (c) 2020 Cosmin Truta Copyright (c) 2016 Glenn Randers-Pehrson Written by Mandar Sahastrabuddhe, 2016. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h SEE contrib/mips-msa/README before reporting bugs STATUS: SUPPORTED BUG REPORTS: png-mng-implement@sourceforge.net png_have_msa implemented for Linux by reading the widely available pseudo-file /proc/cpuinfo. This code is strict ANSI-C and is probably moderately portable; it does however use and it assumes that /proc/cpuinfo is never localized. ## Files: libpng/contrib/oss-fuzz/build.sh Copyright 2017-2018 Glenn Randers-Pehrson Copyright 2016 Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Revisions by Glenn Randers-Pehrson, 2017: 1. Build only the library, not the tools (changed "make -j$(nproc) all" to "make -j$(nproc) libpng16.la"). 2. Disabled WARNING and WRITE options in pnglibconf.dfa. 3. Build zlib alongside libpng ############################################################################### ## Files: libpng/contrib/oss-fuzz/libpng_read_fuzzer.cc libpng_read_fuzzer.cc Copyright 2017-2018 Glenn Randers-Pehrson Copyright 2015 The Chromium Authors. All rights reserved. Use of this source code is governed by a BSD-style license that may be found in the LICENSE file https://cs.chromium.org/chromium/src/LICENSE ## Files: libpng/contrib/pngminim/decoder/pngusr.h minrdpngconf.h: headers to make a minimal png-read-only library Copyright (c) 2007, 2010-2013 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Derived from pngcrush.h, Copyright 1998-2007, Glenn Randers-Pehrson ## Files: libpng/contrib/pngminim/encoder/pngusr.h minwrpngconf.h: headers to make a minimal png-write-only library Copyright (c) 2007, 2010-2013 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Derived from pngcrush.h, Copyright 1998-2007, Glenn Randers-Pehrson ## Files: libpng/contrib/pngminim/preader/pngusr.h minrdpngconf.h: headers to make a minimal png-read-only library Copyright (c) 2009, 2010-2013 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Derived from pngcrush.h, Copyright 1998-2007, Glenn Randers-Pehrson ## Files: libpng/contrib/pngminus/png2pnm.c png2pnm.c --- conversion from PNG-file to PGM/PPM-file copyright (C) 1999-2019 by Willem van Schaik This software is released under the MIT license. For conditions of distribution and use, see the LICENSE file part of this package. ## Files: libpng/contrib/pngminus/pnm2png.c pnm2png.c --- conversion from PBM/PGM/PPM-file to PNG-file copyright (C) 1999-2019 by Willem van Schaik This software is released under the MIT license. For conditions of distribution and use, see the LICENSE file part of this package. ## Files: libpng/contrib/powerpc-vsx/linux.c contrib/powerpc-vsx/linux.c Copyright (c) 2017 Glenn Randers-Pehrson Written by Vadim Barkov, 2017. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h STATUS: TESTED BUG REPORTS: png-mng-implement@sourceforge.net png_have_vsx implemented for Linux by reading the widely available pseudo-file /proc/cpuinfo. This code is strict ANSI-C and is probably moderately portable; it does however use and it assumes that /proc/cpuinfo is never localized. ## Files: libpng/contrib/powerpc-vsx/linux_aux.c contrib/powerpc-vsx/linux_aux.c Copyright (c) 2017 Glenn Randers-Pehrson Written by Vadim Barkov, 2017. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h STATUS: TESTED BUG REPORTS: png-mng-implement@sourceforge.net png_have_vsx implemented for Linux by using the auxiliary vector mechanism. This code is strict ANSI-C and is probably moderately portable; it does however use and it assumes that /proc/cpuinfo is never localized. ## Files: libpng/contrib/testpngs/makepngs.sh Copyright (c) 2015 John Cunningham Bowler ## Files: libpng/contrib/testpngs/makepngs.sh This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/contrib/tools/checksum-icc.c checksum-icc.c Copyright (c) 2013 John Cunningham Bowler This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Generate crc32 and adler32 checksums of the given input files, used to generate check-codes for use when matching ICC profiles within libpng. ## Files: libpng/contrib/tools/chkfmt.sh chkfmt.sh COPYRIGHT: Written by John Cunningham Bowler, 2010. Revised by Cosmin Truta, 2022. To the extent possible under law, the author has waived all copyright and related or neighboring rights to this work. The author published this work from the United States. Check the format of the source files in the current directory: * The lines should not exceed a predefined maximum length. * Tab characters should appear only where necessary (e.g. in makefiles). Optionally arguments are files or directories to check. -v: output the long lines (makes fixing them easier) -e: spawn an editor for each file that needs a change ($EDITOR must be defined). When using -e the script MUST be run from an interactive command line. ## Files: libpng/contrib/tools/cvtcolor.c convert.c COPYRIGHT: Written by John Cunningham Bowler, 2013. To the extent possible under law, the author has waived all copyright and related or neighboring rights to this work. This work is published from: United States. Convert 8-bit sRGB or 16-bit linear values to another format. ## Files: libpng/contrib/tools/genpng.c genpng COPYRIGHT: Written by John Cunningham Bowler, 2015. Revised by Glenn Randers-Pehrson, 2017, to add buffer-size check. To the extent possible under law, the authors have waived all copyright and related or neighboring rights to this work. This work is published from: United States. Generate a PNG with an alpha channel, correctly. This is a test case generator; the resultant PNG files are only of interest to those of us who care about whether the edges of circles are green, red, or yellow. The program generates an RGB+Alpha PNG of a given size containing the given shapes on a transparent background: genpng width height { shape } shape ::= color width shape x1 y1 x2 y2 'color' is: black white red green yellow blue brown purple pink orange gray cyan The point is to have colors that are linguistically meaningful plus that old bugbear of the department store dress murders, Cyan, the only color we argue about. 'shape' is: circle: an ellipse square: a rectangle line: a straight line Each shape is followed by four numbers, these are two points in the output coordinate space (as real numbers) which describe the circle, square, or line. The shape is filled if it is preceded by 'filled' (not valid for 'line') or is drawn with a line, in which case the width of the line must precede the shape. The whole set of information can be repeated as many times as desired: shape ::= color width shape x1 y1 x2 y2 color ::= black|white|red|green|yellow|blue color ::= brown|purple|pink|orange|gray|cyan width ::= filled width ::= shape ::= circle|square|line x1 ::= x2 ::= y1 ::= y2 ::= The output PNG is generated by down-sampling a 4x supersampled image using a bi-cubic filter. The bi-cubic has a 2 (output) pixel width, so an 8x8 array of super-sampled points contribute to each output pixel. The value of a super-sampled point is found using an unfiltered, aliased, infinite precision image: Each shape from the last to the first is checked to see if the point is in the drawn area and, if it is, the color of the point is the color of the shape and the alpha is 1, if not the previous shape is checked. This is an aliased algorithm because no filtering is done; a point is either inside or outside each shape and 'close' points do not contribute to the sample. The down-sampling is relied on to correct the error of not using a filter. The line end-caps are 'flat'; they go through the points. The square line joins are mitres; the outside of the lines are continued to the point of intersection. ## Files: libpng/contrib/tools/intgamma.sh intgamma.sh COPYRIGHT: Written by John Cunningham Bowler, 2013. To the extent possible under law, the author has waived all copyright and related or neighboring rights to this work. The author published this work from the United States. Shell script to generate png.c 8-bit and 16-bit log tables (see the code in png.c for details). This script uses the "bc" arbitrary precision calculator to calculate 32-bit fixed point values of logarithms appropriate to finding the log of an 8-bit (0..255) value and a similar table for the exponent calculation. "bc" must be on the path when the script is executed, and the math library (-lm) must be available. ## Files: libpng/contrib/tools/makesRGB.c makesRGB.c -- build sRGB-to-linear and linear-to-sRGB conversion tables COPYRIGHT: Written by John Cunningham Bowler, 2013. To the extent possible under law, the author has waived all copyright and related or neighboring rights to this work. This work is published from: United States. Make a table to convert 8-bit sRGB encoding values into the closest 16-bit linear value. Make two tables to take a linear value scaled to 255*65535 and return an approximation to the 8-bit sRGB encoded value. Calculate the error in these tables and display it. ## Files: libpng/contrib/tools/png-fix-itxt.c png-fix-itxt Copyright 2015 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Usage: png-fix-itxt < bad.png > good.png Fixes a PNG file written with libpng-1.6.0 or 1.6.1 that has one or more uncompressed iTXt chunks. Assumes that the actual length is greater than or equal to the value in the length byte, and that the CRC is correct for the actual length. This program hunts for the CRC and adjusts the length byte accordingly. It is not an error to process a PNG file that has no iTXt chunks or one that has valid iTXt chunks; such files will simply be copied. Requires zlib (for crc32 and Z_NULL); build with gcc -O -o png-fix-itxt png-fix-itxt.c -lz If you need to handle iTXt chunks larger than 500000 kbytes you must rebuild png-fix-itxt with a larger values of MAX_LENGTH (or a smaller value if you know you will never encounter such huge iTXt chunks). ## Files: libpng/contrib/tools/pngcp.c pngcp.c Copyright (c) 2016,2022 John Cunningham Bowler This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h This is an example of copying a PNG without changes using the png_read_png and png_write_png interfaces. A considerable number of options are provided to manipulate the compression of the PNG data and other compressed chunks. For a more extensive example that uses the transforms see contrib/libtests/pngimage.c in the libpng distribution. This code is not intended for installation in a release system; the command line options are not documented and most of the behavior is intended for testing libpng performance, both speed and compression. ## Files: libpng/contrib/tools/pngfix.c pngfix.c Copyright (c) 2014-2017 John Cunningham Bowler This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Tool to check and fix the zlib inflate 'too far back' problem. See the usage message for more information. ## Files: libpng/contrib/tools/sRGB.h sRGB.h COPYRIGHT: Written by John Cunningham Bowler, 2013. To the extent possible under law, the author has waived all copyright and related or neighboring rights to this work. This work is published from: United States. Utility file; not actually a header, this contains definitions of sRGB calculation functions for inclusion in those test programs that need them. All routines take and return a floating point value in the range 0 to 1.0, doing a calculation according to the sRGB specification (in fact the source of the numbers is the wikipedia article at https://en.wikipedia.org/wiki/SRGB). ## Files: libpng/contrib/visupng/PngFile.c PNGFILE.C -- Image File Functions ------------------------------------- Copyright 2000,2017 Willem van Schaik. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/contrib/visupng/PngFile.h Copyright 2000, Willem van Schaik. ## Files: libpng/contrib/visupng/PngFile.h This code is released under the libpng license. ## Files: libpng/contrib/visupng/VisualPng.c VisualPng.C -- Shows a PNG image ------------------------------------ Copyright 2000,2017 Willem van Schaik. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/contrib/visupng/cexcept.h === cexcept.h 2.0.1 (2008-Jul-19-Sat) http://www.nicemice.net/cexcept/ Adam M. Costello http://www.nicemice.net/amc/ An interface for exception-handling in ANSI C (C89 and subsequent ISO standards), developed jointly with Cosmin Truta. Copyright (c) 2000-2008 Adam M. Costello and Cosmin Truta. This software may be modified only if its author and version information is updated accurately, and may be redistributed only if accompanied by this unaltered notice. Subject to those restrictions, permission is granted to anyone to do anything with this software. The copyright holders make no guarantees regarding this software, and are not responsible for any damage resulting from its use. The cexcept interface is not compatible with and cannot interact with system exceptions (like division by zero or memory segmentation violation), compiler-generated exceptions (like C++ exceptions), or other exception-handling interfaces. When using this interface across multiple .c files, do not include this header file directly. Instead, create a wrapper header file that includes this header file and then invokes the define_exception_type macro (see below). The .c files should then include that header file. The interface consists of one type, one well-known name, and six macros. define_exception_type(type_name); This macro is used like an external declaration. It specifies the type of object that gets copied from the exception thrower to the exception catcher. The type_name can be any type that can be assigned to, that is, a non-constant arithmetic type, struct, union, or pointer. Examples: define_exception_type(int); enum exception { out_of_memory, bad_arguments, disk_full }; define_exception_type(enum exception); struct exception { int code; const char *msg; }; define_exception_type(struct exception); Because throwing an exception causes the object to be copied (not just once, but twice), programmers may wish to consider size when choosing the exception type. struct exception_context; This type may be used after the define_exception_type() macro has been invoked. A struct exception_context must be known to both the thrower and the catcher. It is expected that there be one context for each thread that uses exceptions. It would certainly be dangerous for multiple threads to access the same context. One thread can use multiple contexts, but that is likely to be confusing and not typically useful. The application can allocate this structure in any way it pleases--automatic, static, or dynamic. The application programmer should pretend not to know the structure members, which are subject to change. struct exception_context *the_exception_context; The Try/Catch and Throw statements (described below) implicitly refer to a context, using the name the_exception_context. It is the application's responsibility to make sure that this name yields the address of a mutable (non-constant) struct exception_context wherever those statements are used. Subject to that constraint, the application may declare a variable of this name anywhere it likes (inside a function, in a parameter list, or externally), and may use whatever storage class specifiers (static, extern, etc) or type qualifiers (const, volatile, etc) it likes. Examples: static struct exception_context * const the_exception_context = &foo; { struct exception_context *the_exception_context = bar; ... } int blah(struct exception_context *the_exception_context, ...); extern struct exception_context the_exception_context[1]; The last example illustrates a trick that avoids creating a pointer object separate from the structure object. The name could even be a macro, for example: struct exception_context ec_array[numthreads]; #define the_exception_context (ec_array + thread_id) Be aware that the_exception_context is used several times by the Try/Catch/Throw macros, so it shouldn't be expensive or have side effects. The expansion must be a drop-in replacement for an identifier, so it's safest to put parentheses around it. void init_exception_context(struct exception_context *ec); For context structures allocated statically (by an external definition or using the "static" keyword), the implicit initialization to all zeros is sufficient, but contexts allocated by other means must be initialized using this macro before they are used by a Try/Catch statement. It does no harm to initialize a context more than once (by using this macro on a statically allocated context, or using this macro twice on the same context), but a context must not be re-initialized after it has been used by a Try/Catch statement. Try statement Catch (expression) statement The Try/Catch/Throw macros are capitalized in order to avoid confusion with the C++ keywords, which have subtly different semantics. A Try/Catch statement has a syntax similar to an if/else statement, except that the parenthesized expression goes after the second keyword rather than the first. As with if/else, there are two clauses, each of which may be a simple statement ending with a semicolon or a brace-enclosed compound statement. But whereas the else clause is optional, the Catch clause is required. The expression must be a modifiable lvalue (something capable of being assigned to) of the same type (disregarding type qualifiers) that was passed to define_exception_type(). If a Throw that uses the same exception context as the Try/Catch is executed within the Try clause (typically within a function called by the Try clause), and the exception is not caught by a nested Try/Catch statement, then a copy of the exception will be assigned to the expression, and control will jump to the Catch clause. If no such Throw is executed, then the assignment is not performed, and the Catch clause is not executed. The expression is not evaluated unless and until the exception is caught, which is significant if it has side effects, for example: Try foo(); Catch (p[++i].e) { ... } IMPORTANT: Jumping into or out of a Try clause (for example via return, break, continue, goto, longjmp) is forbidden--the compiler will not complain, but bad things will happen at run-time. Jumping into or out of a Catch clause is okay, and so is jumping around inside a Try clause. In many cases where one is tempted to return from a Try clause, it will suffice to use Throw, and then return from the Catch clause. Another option is to set a flag variable and use goto to jump to the end of the Try clause, then check the flag after the Try/Catch statement. IMPORTANT: The values of any non-volatile automatic variables changed within the Try clause are undefined after an exception is caught. Therefore, variables modified inside the Try block whose values are needed later outside the Try block must either use static storage or be declared with the "volatile" type qualifier. Throw expression; A Throw statement is very much like a return statement, except that the expression is required. Whereas return jumps back to the place where the current function was called, Throw jumps back to the Catch clause of the innermost enclosing Try clause. The expression must be compatible with the type passed to define_exception_type(). The exception must be caught, otherwise the program may crash. Slight limitation: If the expression is a comma-expression, it must be enclosed in parentheses. Try statement Catch_anonymous statement When the value of the exception is not needed, a Try/Catch statement can use Catch_anonymous instead of Catch (expression). Everything below this point is for the benefit of the compiler. The application programmer should pretend not to know any of it, because it is subject to change. === ## Files: libpng/example.c example.c - an example of using libpng Maintained 2018 Cosmin Truta Maintained 1998-2016 Glenn Randers-Pehrson Maintained 1996-1997 Andreas Dilger Written 1995-1996 Guy Eric Schalnat, Group 42, Inc. To the extent possible under law, the authors have waived all copyright and related or neighboring rights to this file. This work is published from: United States, Canada. ## Files: libpng/example.c This is an example of how to use libpng to read and write PNG files. The file libpng-manual.txt is much more verbose then this. If you have not read it, do so first. This was designed to be a starting point of an implementation. This is not officially part of libpng, is hereby placed in the public domain, and therefore does not require a copyright notice. This file does not currently compile, because it is missing certain parts, like allocating memory to hold an image. You will have to supply these parts to get it to compile. For an example of a minimal working PNG reader/writer, see pngtest.c, included in this distribution; see also the programs in the contrib directory. ## Files: libpng/intel/filter_sse2_intrinsics.c filter_sse2_intrinsics.c - SSE2 optimized filter functions Copyright (c) 2018 Cosmin Truta Copyright (c) 2016-2017 Glenn Randers-Pehrson Written by Mike Klein and Matt Sarett Derived from arm/filter_neon_intrinsics.c This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/intel/intel_init.c intel_init.c - SSE2 optimized filter functions Copyright (c) 2018 Cosmin Truta Copyright (c) 2016-2017 Glenn Randers-Pehrson Written by Mike Klein and Matt Sarett, Google, Inc. Derived from arm/arm_init.c This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/mips/filter_msa_intrinsics.c filter_msa_intrinsics.c - MSA optimised filter functions Copyright (c) 2018 Cosmin Truta Copyright (c) 2016 Glenn Randers-Pehrson Written by Mandar Sahastrabuddhe, August 2016. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/mips/mips_init.c mips_init.c - MSA optimised filter functions Copyright (c) 2018 Cosmin Truta Copyright (c) 2016 Glenn Randers-Pehrson Written by Mandar Sahastrabuddhe, 2016. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/png.c png.c - location for general purpose libpng functions Copyright (c) 2018-2022 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/png.h png.h - header file for PNG reference library libpng version 1.6.39 - November 20, 2022 Copyright (c) 2018-2022 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. (See LICENSE, below.) Authors and maintainers: libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat libpng versions 0.89, June 1996, through 0.96, May 1997: Andreas Dilger libpng versions 0.97, January 1998, through 1.6.35, July 2018: Glenn Randers-Pehrson libpng versions 1.6.36, December 2018, through 1.6.39, November 2022: Cosmin Truta See also "Contributing Authors", below. ## Files: libpng/png.h COPYRIGHT NOTICE, DISCLAIMER, and LICENSE ========================================= PNG Reference Library License version 2 --------------------------------------- * Copyright (c) 1995-2022 The PNG Reference Library Authors. * Copyright (c) 2018-2022 Cosmin Truta. * Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson. * Copyright (c) 1996-1997 Andreas Dilger. * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. The software is supplied "as is", without warranty of any kind, express or implied, including, without limitation, the warranties of merchantability, fitness for a particular purpose, title, and non-infringement. In no event shall the Copyright owners, or anyone distributing the software, be liable for any damages or other liability, whether in contract, tort or otherwise, arising from, out of, or in connection with the software, or the use or other dealings in the software, even if advised of the possibility of such damage. Permission is hereby granted to use, copy, modify, and distribute this software, or portions hereof, for any purpose, without fee, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated, but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This Copyright notice may not be removed or altered from any source or altered source distribution. PNG Reference Library License version 1 (for libpng 0.5 through 1.6.35) ----------------------------------------------------------------------- libpng versions 1.0.7, July 1, 2000, through 1.6.35, July 15, 2018 are Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson, are derived from libpng-1.0.6, and are distributed according to the same disclaimer and license as libpng-1.0.6 with the following individuals added to the list of Contributing Authors: Simon-Pierre Cadieux Eric S. Raymond Mans Rullgard Cosmin Truta Gilles Vollant James Yu Mandar Sahastrabuddhe Google Inc. Vadim Barkov and with the following additions to the disclaimer: There is no warranty against interference with your enjoyment of the library or against infringement. There is no warranty that our efforts or the library will fulfill any of your particular purposes or needs. This library is provided with all faults, and the entire risk of satisfactory quality, performance, accuracy, and effort is with the user. Some files in the "contrib" directory and some configure-generated files that are distributed with libpng have other copyright owners, and are released under other open source licenses. libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are Copyright (c) 1998-2000 Glenn Randers-Pehrson, are derived from libpng-0.96, and are distributed according to the same disclaimer and license as libpng-0.96, with the following individuals added to the list of Contributing Authors: Tom Lane Glenn Randers-Pehrson Willem van Schaik libpng versions 0.89, June 1996, through 0.96, May 1997, are Copyright (c) 1996-1997 Andreas Dilger, are derived from libpng-0.88, and are distributed according to the same disclaimer and license as libpng-0.88, with the following individuals added to the list of Contributing Authors: John Bowler Kevin Bracey Sam Bushell Magnus Holmgren Greg Roelofs Tom Tanner Some files in the "scripts" directory have other copyright owners, but are released under this license. libpng versions 0.5, May 1995, through 0.88, January 1996, are Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. For the purposes of this copyright and license, "Contributing Authors" is defined as the following set of individuals: Andreas Dilger Dave Martindale Guy Eric Schalnat Paul Schmidt Tim Wegner The PNG Reference Library is supplied "AS IS". The Contributing Authors and Group 42, Inc. disclaim all warranties, expressed or implied, including, without limitation, the warranties of merchantability and of fitness for any purpose. The Contributing Authors and Group 42, Inc. assume no liability for direct, indirect, incidental, special, exemplary, or consequential damages, which may result from the use of the PNG Reference Library, even if advised of the possibility of such damage. Permission is hereby granted to use, copy, modify, and distribute this source code, or portions hereof, for any purpose, without fee, subject to the following restrictions: 1. The origin of this source code must not be misrepresented. 2. Altered versions must be plainly marked as such and must not be misrepresented as being the original source. 3. This Copyright notice may not be removed or altered from any source or altered source distribution. The Contributing Authors and Group 42, Inc. specifically permit, without fee, and encourage the use of this source code as a component to supporting the PNG file format in commercial products. If you use this source code in a product, acknowledgment is not required but would be appreciated. END OF COPYRIGHT NOTICE, DISCLAIMER, and LICENSE. TRADEMARK ========= The name "libpng" has not been registered by the Copyright owners as a trademark in any jurisdiction. However, because libpng has been distributed and maintained world-wide, continually since 1995, the Copyright owners claim "common-law trademark protection" in any jurisdiction where common-law trademark is recognized. ## Files: libpng/png.h A "png_get_copyright" function is available, for convenient use in "about" boxes and the like: printf("%s", png_get_copyright(NULL)); Also, the PNG logo (in PNG format, of course) is supplied in the files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31). ## Files: libpng/png.h With all write APIs if image is in one of the linear formats with 16-bit data then setting convert_to_8_bit will cause the output to be an 8-bit PNG gamma encoded according to the sRGB specification, otherwise a 16-bit linear encoded PNG file is written. With color-mapped data formats the colormap parameter point to a color-map with at least image->colormap_entries encoded in the specified format. If the format is linear the written PNG color-map will be converted to sRGB regardless of the convert_to_8_bit flag. With all APIs row_stride is handled as in the read APIs - it is the spacing from one row to the next in component sized units (1 or 2 bytes) and if negative indicates a bottom-up row layout in the buffer. If row_stride is zero, libpng will calculate it for you from the image width and number of channels. Note that the write API does not support interlacing, sub-8-bit pixels or most ancillary chunks. If you need to write text chunks (e.g. for copyright notices) you need to use one of the other APIs. ## Files: libpng/pngconf.h pngconf.h - machine-configurable file for libpng libpng version 1.6.39 Copyright (c) 2018-2022 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2016,2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Any machine specific code is near the front of this file, so if you are configuring libpng for a machine, you may want to read the section starting here down to where it starts to typedef png_color, png_text, and png_info. ## Files: libpng/pngdebug.h pngdebug.h - Debugging macros for libpng, also used in pngtest.c Copyright (c) 2018 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2013 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/pngerror.c pngerror.c - stub functions for i/o and memory allocation Copyright (c) 2018 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2017 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h This file provides a location for all error handling. Users who need special error handling are expected to write replacement functions and use png_set_error_fn() to use those functions. See the instructions at each function. ## Files: libpng/pngget.c pngget.c - retrieval of values from info struct Copyright (c) 2018 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/pnginfo.h pnginfo.h - header file for PNG reference library Copyright (c) 2018 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2013,2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/pngmem.c pngmem.c - stub functions for memory allocation Copyright (c) 2018 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2014,2016 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h This file provides a location for all memory allocation. Users who need special memory handling are expected to supply replacement functions for png_malloc() and png_free(), and to use png_create_read_struct_2() and png_create_write_struct_2() to identify the replacement functions. ## Files: libpng/pngpread.c pngpread.c - read a png file in push mode Copyright (c) 2018 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/pngpriv.h pngpriv.h - private declarations for use inside libpng Copyright (c) 2018-2022 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/pngread.c pngread.c - read a PNG file Copyright (c) 2018-2019 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h This file contains routines that an application calls directly to read a PNG file or stream. ## Files: libpng/pngrio.c pngrio.c - functions for data input Copyright (c) 2018 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2016,2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h This file provides a location for all input. Users who need special handling are expected to write a function that has the same arguments as this and performs a similar function, but that possibly has a different input method. Note that you shouldn't change this function, but rather write a replacement function and then make libpng use it at run time with png_set_read_fn(...). ## Files: libpng/pngrtran.c pngrtran.c - transforms the data in a row for PNG readers Copyright (c) 2018-2019 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h This file contains functions optionally called by an application in order to tell libpng how to handle data when reading a PNG. Transformations that are used in both reading and writing are in pngtrans.c. ## Files: libpng/pngrutil.c pngrutil.c - utilities to read a PNG file Copyright (c) 2018-2022 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h This file contains routines that are only called from within libpng itself during the course of reading an image. ## Files: libpng/pngset.c pngset.c - storage of image information into info struct Copyright (c) 2018-2022 Cosmin Truta Copyright (c) 1998-2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h The functions here are used during reads to store data from the file into the info struct, and during writes to store application data into the info struct for writing into the file. This abstracts the info struct and allows us to change the structure in the future. ## Files: libpng/pngstruct.h pngstruct.h - header file for PNG reference library Copyright (c) 2018-2022 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/pngtest.c pngtest.c - a simple test program to test libpng Copyright (c) 2018-2019 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h This program reads in a PNG image, writes it out again, and then compares the two files. If the files are identical, this shows that the basic chunk handling, filtering, and (de)compression code is working properly. It does not currently test all of the transforms, although it probably should. The program will report "FAIL" in certain legitimate cases: 1) when the compression level or filter selection method is changed. 2) when the maximum IDAT size (PNG_ZBUF_SIZE in pngconf.h) is not 8192. 3) unknown unsafe-to-copy ancillary chunks or unknown critical chunks exist in the input file. 4) others not listed here... In these cases, it is best to check with another tool such as "pngcheck" to see what the differences between the two files are. If a filename is given on the command-line, then this file is used for the input, rather than the default "pngtest.png". This allows testing a wide variety of files easily. You can also test a number of files at once by typing "pngtest -m file1.png file2.png ..." ## Files: libpng/pngtrans.c pngtrans.c - transforms the data in a row (used by both readers and writers) Copyright (c) 2018 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/pngwio.c pngwio.c - functions for data output Copyright (c) 2018 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2014,2016,2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h This file provides a location for all output. Users who need special handling are expected to write functions that have the same arguments as these and perform similar functions, but that possibly use different output methods. Note that you shouldn't change these functions, but rather write replacement functions and then change them at run time with png_set_write_fn(...). ## Files: libpng/pngwrite.c pngwrite.c - general routines to write a PNG file Copyright (c) 2018-2022 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/pngwtran.c pngwtran.c - transforms the data in a row for PNG writers Copyright (c) 2018 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2016,2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/pngwutil.c pngwutil.c - utilities to write a PNG file Copyright (c) 2018-2022 Cosmin Truta Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson Copyright (c) 1996-1997 Andreas Dilger Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/powerpc/filter_vsx_intrinsics.c filter_vsx_intrinsics.c - PowerPC optimised filter functions Copyright (c) 2018 Cosmin Truta Copyright (c) 2017 Glenn Randers-Pehrson Written by Vadim Barkov, 2017. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/powerpc/powerpc_init.c powerpc_init.c - POWERPC optimised filter functions Copyright (c) 2018 Cosmin Truta Copyright (c) 2017 Glenn Randers-Pehrson Written by Vadim Barkov, 2017. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/scripts/dfn.awk scripts/dfn.awk - process a .dfn file Copyright (c) 2013-2014 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/scripts/intprefix.c intprefix.c - generate an unprefixed internal symbol list Copyright (c) 2013-2014 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/scripts/options.awk scripts/options.awk - library build configuration control Copyright (c) 1998-2014 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/scripts/pngwin.rc ifdef PNG_USER_VERSIONINFO_LEGALTRADEMARKS ## Files: libpng/scripts/prefix.c prefix.c - generate an unprefixed symbol list Copyright (c) 2013-2014 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/scripts/sym.c sym.c - define format of libpng.sym Copyright (c) 2011-2014 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/scripts/symbols.c symbols.c - find all exported symbols Copyright (c) 2011-2014 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: libpng/scripts/vers.c vers.c - define format of libpng.vers Copyright (c) 2011-2014 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h ## Files: openjpeg/src/lib/openjp2/ht_dec.c ***************************************************************************/ This software is released under the 2-Clause BSD license, included below. Copyright (c) 2021, Aous Naman Copyright (c) 2021, Kakadu Software Pty Ltd, Australia Copyright (c) 2021, The University of New South Wales, Australia Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ***************************************************************************/ This file is part of the OpenJpeg software implementation. File: ht_dec.c Author: Aous Naman Date: 01 September 2021 ***************************************************************************/ ## Files: openjpeg/src/lib/openjp2/t1_ht_generate_luts.c ***************************************************************************/ This software is released under the 2-Clause BSD license, included below. Copyright (c) 2021, Aous Naman Copyright (c) 2021, Kakadu Software Pty Ltd, Australia Copyright (c) 2021, The University of New South Wales, Australia Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ***************************************************************************/ This file is part of the OpenJpeg software implementation. File: t1_ht_generate_luts.c Author: Aous Naman Date: 01 September 2021 ***************************************************************************/ ## Files: pdf/ghostpdf.c pdf/ghostpdf.h pdf/pdf_colour.c pdf/pdf_dict.c pdf/pdf_dict.h pdf/pdf_file.c pdf/pdf_font.c pdf/pdf_font.h pdf/pdf_func.c pdf/pdf_gstate.c pdf/pdf_gstate.h pdf/pdf_image.c pdf/pdf_int.c pdf/pdf_shading.c pdf/pdf_text.c pdf/pdf_types.h pdf/pdf_xref.c Copyright (C) 2018-2024 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: pdf/pdf_annot.c pdf/pdf_check.c pdf/pdf_device.c pdf/pdf_fapi.c pdf/pdf_font0.c pdf/pdf_font1.c pdf/pdf_font1C.c pdf/pdf_font3.c pdf/pdf_fontTT.c pdf/pdf_font_types.h pdf/pdf_optcontent.c pdf/pdf_page.c pdf/pdf_trans.c Copyright (C) 2019-2024 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: pdf/pdf_annot.h pdf/pdf_check.h pdf/pdf_device.h pdf/pdf_font0.h pdf/pdf_font1.h pdf/pdf_font1C.h pdf/pdf_font3.h pdf/pdf_fontTT.h pdf/pdf_misc.c pdf/pdf_misc.h pdf/pdf_optcontent.h pdf/pdf_page.h pdf/pdf_pattern.c pdf/pdf_pattern.h pdf/pdf_trans.h Copyright (C) 2019-2023 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: pdf/pdf_ciddec.c Copyright (C) 2021-2023 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: pdf/pdf_errors.h pdf/pdf_warnings.h Copyright (C) 2022-2024 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: psi/imainarg.c Print the revision, revision date, and copyright. ## Files: psi/zfont2.c Copyright 12 0 SID -, FontInfo ## Files: tesseract/autogen.sh tesseract/src/opencl/oclkernels.h tesseract/src/opencl/openclwrapper.cpp tesseract/src/opencl/openclwrapper.h tesseract/src/textord/gap_map.cpp tesseract/src/textord/gap_map.h tesseract/src/textord/tospace.cpp tesseract/src/training/classifier_tester.cpp tesseract/src/training/combine_lang_model.cpp tesseract/src/training/common/commandlineflags.cpp tesseract/src/training/set_unicharset_properties.cpp tesseract/src/training/shapeclustering.cpp tesseract/src/training/unicharset/lang_model_helpers.cpp tesseract/src/training/unicharset/lang_model_helpers.h Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/doc/generate_manpages.sh File: generate_manpages.sh Description: Converts .asc files into man pages, etc. for Tesseract. Author: eger@google.com (David Eger) Created: 9 Feb 2012 (C) Copyright 2012 Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/include/tesseract/baseapi.h SPDX-License-Identifier: Apache-2.0 File: baseapi.h Description: Simple API for calling tesseract. Author: Ray Smith (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/include/tesseract/capi.h SPDX-License-Identifier: Apache-2.0 File: capi.h Description: C-API TessBaseAPI (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/include/tesseract/export.h SPDX-License-Identifier: Apache-2.0 File: export.h Description: Place holder (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/include/tesseract/ltrresultiterator.h SPDX-License-Identifier: Apache-2.0 File: ltrresultiterator.h Description: Iterator for tesseract results in strict left-to-right order that avoids using tesseract internal data structures. Author: Ray Smith (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/include/tesseract/ocrclass.h SPDX-License-Identifier: Apache-2.0 ## Files: tesseract/include/tesseract/ocrclass.h File: ocrclass.h Description: Class definitions and constants for the OCR API. Author: Hewlett-Packard Co (C) Copyright 1996, Hewlett-Packard Co. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/include/tesseract/osdetect.h SPDX-License-Identifier: Apache-2.0 File: osdetect.h Description: Orientation and script detection. Author: Samuel Charron Ranjith Unnikrishnan (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/include/tesseract/pageiterator.h SPDX-License-Identifier: Apache-2.0 File: pageiterator.h Description: Iterator for tesseract page structure that avoids using tesseract internal data structures. Author: Ray Smith (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/include/tesseract/publictypes.h SPDX-License-Identifier: Apache-2.0 File: publictypes.h Description: Types used in both the API and internally Author: Ray Smith (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/include/tesseract/renderer.h SPDX-License-Identifier: Apache-2.0 File: renderer.h Description: Rendering interface to inject into TessBaseAPI (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/include/tesseract/resultiterator.h SPDX-License-Identifier: Apache-2.0 File: resultiterator.h Description: Iterator for tesseract results that is capable of iterating in proper reading order over Bi Directional (e.g. mixed Hebrew and English) text. Author: David Eger (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/include/tesseract/unichar.h SPDX-License-Identifier: Apache-2.0 File: unichar.h Description: Unicode character/ligature class. Author: Ray Smith (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/java/com/google/scrollview/ScrollView.java tesseract/java/com/google/scrollview/events/SVEvent.java tesseract/java/com/google/scrollview/events/SVEventHandler.java tesseract/java/com/google/scrollview/events/SVEventType.java tesseract/java/com/google/scrollview/ui/SVAbstractMenuItem.java tesseract/java/com/google/scrollview/ui/SVCheckboxMenuItem.java tesseract/java/com/google/scrollview/ui/SVEmptyMenuItem.java tesseract/java/com/google/scrollview/ui/SVImageHandler.java tesseract/java/com/google/scrollview/ui/SVMenuBar.java tesseract/java/com/google/scrollview/ui/SVMenuItem.java tesseract/java/com/google/scrollview/ui/SVPopupMenu.java tesseract/java/com/google/scrollview/ui/SVSubMenuItem.java tesseract/java/com/google/scrollview/ui/SVWindow.java Copyright 2007 Google Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); You may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/api/altorenderer.cpp (C) Copyright 2018 Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/api/baseapi.cpp File: baseapi.cpp Description: Simple API for calling tesseract. Author: Ray Smith (C) Copyright 2006, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/api/capi.cpp ///////////////////////////////////////////////////////////////////// File: capi.cpp Description: C-API TessBaseAPI (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/api/hocrrenderer.cpp File: hocrrenderer.cpp Description: Simple API for calling tesseract. Author: Ray Smith (original code from baseapi.cpp) Author: Stefan Weil (moved to separate file and cleaned code) (C) Copyright 2006, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/api/lstmboxrenderer.cpp File: lstmboxrenderer.cpp Description: Renderer for creating box file for LSTM training. based on the tsv renderer. (C) Copyright 2019, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/api/pdf_ttf.h ///////////////////////////////////////////////////////////////////// File: pdf_ttf.h Description: pdf.ttf (GlyphLessFont) replacement. Generated with: "bin2cpp pdf.ttf pdf_ttf cpp17" Author: Zdenko Podobny (C) Copyright 2020, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/api/pdfrenderer.cpp ///////////////////////////////////////////////////////////////////// File: pdfrenderer.cpp Description: PDF rendering interface to inject into TessBaseAPI (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/api/renderer.cpp ///////////////////////////////////////////////////////////////////// File: renderer.cpp Description: Rendering interface to inject into TessBaseAPI (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/api/wordstrboxrenderer.cpp File: wordstrboxrenderer.cpp Description: Renderer for creating box file with WordStr strings. based on the tsv renderer. (C) Copyright 2019, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/arch/dotproduct.cpp ///////////////////////////////////////////////////////////////////// File: dotproduct.cpp Description: Native dot product function. (C) Copyright 2018, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/arch/dotproduct.h ///////////////////////////////////////////////////////////////////// File: dotproduct.h Description: Native dot product function. (C) Copyright 2018, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/arch/dotproductavx.cpp ///////////////////////////////////////////////////////////////////// File: dotproductavx.cpp Description: Architecture-specific dot-product function. Author: Ray Smith (C) Copyright 2015, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/arch/dotproductavx512.cpp ///////////////////////////////////////////////////////////////////// File: dotproductavx512.cpp Description: Architecture-specific dot-product function. Author: Stefan Weil (C) Copyright 2022 Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/arch/dotproductfma.cpp ///////////////////////////////////////////////////////////////////// File: dotproductfma.cpp Description: Architecture-specific dot-product function. Author: Stefan Weil (C) Copyright 2015, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/arch/dotproductneon.cpp ///////////////////////////////////////////////////////////////////// File: dotproductneon.cpp Description: Dot product function for ARM NEON. Author: Stefan Weil Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/arch/dotproductsse.cpp ///////////////////////////////////////////////////////////////////// File: dotproductsse.cpp Description: Architecture-specific dot-product function. Author: Ray Smith (C) Copyright 2015, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/arch/intsimdmatrix.cpp ///////////////////////////////////////////////////////////////////// File: intsimdmatrix.cpp Description: Base class for 8-bit int SIMD matrix multipliers. Author: Ray Smith (C) Copyright 2017, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/arch/intsimdmatrix.h ///////////////////////////////////////////////////////////////////// File: intsimdmatrix.h Description: Base class for 8-bit int SIMD matrix multipliers. Author: Ray Smith (C) Copyright 2017, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/arch/intsimdmatrixavx2.cpp ///////////////////////////////////////////////////////////////////// File: intsimdmatrixavx2.cpp Description: matrix-vector product for 8-bit data on avx2. Author: Ray Smith (C) Copyright 2017, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/arch/intsimdmatrixneon.cpp ///////////////////////////////////////////////////////////////////// File: intsimdmatrixneon.cpp Description: matrix-vector product for 8-bit data on neon. Author: Robin Watts (from the AVX2 original by Ray Smith) (C) Copyright 2017, Google Inc. (C) Copyright 2020, Artifex Software Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/arch/intsimdmatrixsse.cpp ///////////////////////////////////////////////////////////////////// File: intsindmatrixsse.cpp Description: SSE implementation of 8-bit int SIMD matrix multiply. Author: Ray Smith (C) Copyright 2017, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/arch/simddetect.cpp ///////////////////////////////////////////////////////////////////// File: simddetect.cpp Description: Architecture detector. Author: Stefan Weil (based on code from Ray Smith) (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/arch/simddetect.h ///////////////////////////////////////////////////////////////////// File: simddetect.h Description: Architecture detector. Author: Stefan Weil (based on code from Ray Smith) (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/adaptions.cpp File: adaptions.cpp (Formerly adaptions.c) Description: Functions used to adapt to blobs already confidently identified Author: Chris Newton (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/applybox.cpp File: applybox.cpp (Formerly applybox.c) Description: Re segment rows according to box file data Author: Phil Cheatle (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/control.cpp File: control.cpp (Formerly control.c) Description: Module-independent matcher controller. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/control.h File: control.h (Formerly control.h) Description: Module-independent matcher controller. Author: Ray Smith Created: Thu Apr 23 11:09:58 BST 1992 (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/docqual.cpp File: docqual.cpp (Formerly docqual.c) Description: Document Quality Metrics Author: Phil Cheatle (C) Copyright 1994, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/docqual.h File: docqual.h (Formerly docqual.h) Description: Document Quality Metrics Author: Phil Cheatle (C) Copyright 1994, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/equationdetect.cpp ///////////////////////////////////////////////////////////////////// File: equationdetect.cpp Description: Helper classes to detect equations. Author: Zongyi (Joe) Liu (joeliu@google.com) (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/equationdetect.h ///////////////////////////////////////////////////////////////////// File: equationdetect.h Description: The equation detection class that inherits equationdetectbase. Author: Zongyi (Joe) Liu (joeliu@google.com) (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/fixspace.cpp File: fixspace.cpp (Formerly fixspace.c) Description: Implements a pass over the page res, exploring the alternative spacing possibilities, trying to use context to improve the word spacing Author: Phil Cheatle (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/fixspace.h File: fixspace.h (Formerly fixspace.h) Description: Implements a pass over the page res, exploring the alternative spacing possibilities, trying to use context to improve the word spacing Author: Phil Cheatle Created: Thu Oct 21 11:38:43 BST 1993 (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/fixxht.cpp File: fixxht.cpp (Formerly fixxht.c) Description: Improve x_ht and look out for case inconsistencies Author: Phil Cheatle Created: Thu Aug 5 14:11:08 BST 1993 (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/linerec.cpp ///////////////////////////////////////////////////////////////////// File: linerec.cpp Description: Top-level line-based recognition module for Tesseract. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/ltrresultiterator.cpp ///////////////////////////////////////////////////////////////////// File: ltrresultiterator.cpp Description: Iterator for tesseract results in strict left-to-right order that avoids using tesseract internal data structures. Author: Ray Smith (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/mutableiterator.cpp tesseract/src/training/unicharset/icuerrorcode.cpp ///////////////////////////////////////////////////////////////////// Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/mutableiterator.h ///////////////////////////////////////////////////////////////////// File: mutableiterator.h Description: Iterator for tesseract results providing access to both high-level API and Tesseract internal data structures. Author: David Eger (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/osdetect.cpp ///////////////////////////////////////////////////////////////////// File: osdetect.cpp Description: Orientation and script detection. Author: Samuel Charron Ranjith Unnikrishnan (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/output.cpp File: output.cpp (Formerly output.c) Description: Output pass Author: Phil Cheatle (C) Copyright 1994, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/output.h File: output.h (Formerly output.h) Description: Output pass Author: Phil Cheatle Created: Thu Aug 4 10:56:08 BST 1994 (C) Copyright 1994, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/pageiterator.cpp ///////////////////////////////////////////////////////////////////// File: pageiterator.cpp Description: Iterator for tesseract page structure that avoids using tesseract internal data structures. Author: Ray Smith (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/pagesegmain.cpp File: pagesegmain.cpp Description: Top-level page segmenter for Tesseract. Author: Ray Smith (C) Copyright 2008, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/pagewalk.cpp File: pagewalk.cpp (Formerly walkers.c) Description: Block list processors Author: Phil Cheatle Created: Thu Oct 10 16:25:24 BST 1991 (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/par_control.cpp ///////////////////////////////////////////////////////////////////// File: par_control.cpp Description: Control code for parallel implementation. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/paragraphs.cpp File: paragraphs.cpp Description: Paragraph detection for tesseract. Author: David Eger (C) Copyright 2011, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/paragraphs.h File: paragraphs.h Description: Paragraph Detection data structures. Author: David Eger Created: 25 February 2011 (C) Copyright 2011, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/paragraphs_internal.h File: paragraphs_internal.h Description: Paragraph Detection internal data structures. Author: David Eger (C) Copyright 2011, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/paramsd.cpp ///////////////////////////////////////////////////////////////////// File: paramsd.cpp Description: Tesseract parameter Editor Author: Joern Wanke (C) Copyright 2007, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// The parameters editor is used to edit all the parameters used within tesseract from the ui. ## Files: tesseract/src/ccmain/paramsd.h ///////////////////////////////////////////////////////////////////// File: paramsd.h Description: Tesseract parameter editor Author: Joern Wanke (C) Copyright 2007, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// Tesseract parameter editor is used to edit all the parameters used within tesseract from the ui. ## Files: tesseract/src/ccmain/pgedit.cpp File: pgedit.cpp (Formerly pgeditor.c) Description: Page structure file editor Author: Phil Cheatle (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0(the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http:// www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/pgedit.h ///////////////////////////////////////////////////////////////////// File: pgedit.h Description: Page structure file editor Author: Joern Wanke (C) Copyright 2007, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/recogtraining.cpp ///////////////////////////////////////////////////////////////////// File: recogtraining.cpp Description: Functions for ambiguity and parameter training. Author: Daria Antonova (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/reject.cpp File: reject.cpp (Formerly reject.c) Description: Rejection functions used in tessedit Author: Phil Cheatle (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/reject.h File: reject.h Description: Rejection functions used in tessedit Author: Phil Cheatle Created: Wed Sep 23 16:50:21 BST 1992 (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/resultiterator.cpp ///////////////////////////////////////////////////////////////////// File: resultiterator.cpp Description: Iterator for tesseract results that is capable of iterating in proper reading order over Bi Directional (e.g. mixed Hebrew and English) text. Author: David Eger (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/superscript.cpp File: superscript.cpp Description: Correction pass to fix superscripts and subscripts. Author: David Eger (C) Copyright 2012, Google, Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/tessbox.cpp File: tessbox.cpp (Formerly tessbox.c) Description: Black boxed Tess for developing a resaljet. Author: Ray Smith Created: Thu Apr 23 11:03:36 BST 1992 (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/tessedit.cpp File: tessedit.cpp (Formerly tessedit.c) Description: (Previously) Main program for merge of tess and editor. Now just code to load the language model and various engine-specific data files. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/tesseractclass.cpp ///////////////////////////////////////////////////////////////////// File: tesseractclass.cpp Description: The Tesseract class. It holds/owns everything needed to run Tesseract on a single language, and also a set of sub-Tesseracts to run sub-languages. For thread safety, *every* variable that was previously global or static (except for constant data, and some visual debugging flags) has been moved in here, directly, or indirectly. This makes it safe to run multiple Tesseracts in different threads in parallel, and keeps the different language instances separate. Some global functions remain, but they are isolated re-entrant functions that operate on their arguments. Functions that work on variable data have been moved to an appropriate class based mostly on the directory hierarchy. For more information see slide 6 of "2ArchitectureAndDataStructures" in https://drive.google.com/file/d/0B7l10Bj_LprhbUlIUFlCdGtDYkE/edit?usp=sharing Some global data and related functions still exist in the training-related code, but they don't interfere with normal recognition operation. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/tesseractclass.h ///////////////////////////////////////////////////////////////////// File: tesseractclass.h Description: The Tesseract class. It holds/owns everything needed to run Tesseract on a single language, and also a set of sub-Tesseracts to run sub-languages. For thread safety, *every* global variable goes in here, directly, or indirectly. This makes it safe to run multiple Tesseracts in different threads in parallel, and keeps the different language instances separate. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/tessvars.cpp File: tessvars.cpp (Formerly tessvars.c) Description: Variables and other globals for tessedit. Author: Ray Smith Created: Mon Apr 13 13:13:23 BST 1992 (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/tessvars.h File: tessvars.h (Formerly tessvars.h) Description: Variables and other globals for tessedit. Author: Ray Smith Created: Mon Apr 13 13:13:23 BST 1992 (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/tfacepp.cpp File: tfacepp.cpp (Formerly tface++.c) Description: C++ side of the C/C++ Tess/Editor interface. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/thresholder.cpp ///////////////////////////////////////////////////////////////////// File: thresholder.cpp Description: Base API for thresholding images in tesseract. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/thresholder.h ///////////////////////////////////////////////////////////////////// File: thresholder.h Description: Base API for thresholding images in tesseract. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccmain/werdit.cpp File: werdit.cpp (Formerly wordit.c) Description: An iterator for passing over all the words in a document. Author: Ray Smith Created: Mon Apr 27 08:51:22 BST 1992 (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccmain/werdit.h File: wordit.h Description: An iterator for passing over all the words in a document. Author: Ray Smith Created: Mon Apr 27 08:51:22 BST 1992 (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/blamer.cpp ///////////////////////////////////////////////////////////////////// File: blamer.cpp Description: Module allowing precise error causes to be allocated. Author: Rike Antonova Refactored: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/blamer.h ///////////////////////////////////////////////////////////////////// File: blamer.h Description: Module allowing precise error causes to be allocated. Author: Rike Antonova Refactored: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/blobbox.cpp File: blobbox.cpp (Formerly blobnbox.c) Description: Code for the textord blob class. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/blobbox.h File: blobbox.h (Formerly blobnbox.h) Description: Code for the textord blob class. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/blobs.cpp File: blobs.cpp (Formerly blobs.c) Description: Blob definition Author: Mark Seaman, OCR Technology (c) Copyright 1989, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/blobs.h File: blobs.h Description: Blob definition Author: Mark Seaman, OCR Technology (c) Copyright 1989, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/blread.cpp File: blread.cpp (Formerly pdread.c) Description: Friend function of BLOCK to read the uscan pd file. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/blread.h File: blread.h (Formerly pdread.h) Description: Friend function of BLOCK to read the uscan pd file. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/boxread.cpp File: boxread.cpp Description: Read data from a box file. Author: Ray Smith (C) Copyright 2007, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/boxread.h File: boxread.h Description: Read data from a box file. Author: Ray Smith (C) Copyright 2007, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/boxword.cpp ///////////////////////////////////////////////////////////////////// File: boxword.cpp Description: Class to represent the bounding boxes of the output. Author: Ray Smith (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/boxword.h ///////////////////////////////////////////////////////////////////// File: boxword.h Description: Class to represent the bounding boxes of the output. Author: Ray Smith (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/ccstruct.cpp ///////////////////////////////////////////////////////////////////// File: ccstruct.cpp Description: ccstruct class. Author: Samuel Charron (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/ccstruct.h ///////////////////////////////////////////////////////////////////// File: ccstruct.h Description: ccstruct class. Author: Samuel Charron (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/coutln.cpp File: coutln.cpp (Formerly coutline.c) Description: Code for the C_OUTLINE class. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/coutln.h File: coutln.h Description: Code for the C_OUTLINE class. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/crakedge.h File: crakedge.h (Formerly: crkedge.h) Description: Structures for the Crack following edge detector. Author: Ray Smith Created: Fri Mar 22 16:06:38 GMT 1991 (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/detlinefit.cpp ///////////////////////////////////////////////////////////////////// File: detlinefit.cpp Description: Deterministic least median squares line fitting. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/detlinefit.h ///////////////////////////////////////////////////////////////////// File: detlinefit.h Description: Deterministic least upper-quartile squares line fitting. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/dppoint.cpp File: dppoint.cpp Description: Simple generic dynamic programming class. Author: Ray Smith Created: Wed Mar 25 19:08:01 PDT 2009 (C) Copyright 2009, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/dppoint.h File: dppoint.h Description: Simple generic dynamic programming class. Author: Ray Smith Created: Wed Mar 25 18:57:01 PDT 2009 (C) Copyright 2009, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/fontinfo.cpp ///////////////////////////////////////////////////////////////////// File: fontinfo.cpp Description: Font information classes abstracted from intproto.h/cpp. Author: rays@google.com (Ray Smith) (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/fontinfo.h ///////////////////////////////////////////////////////////////////// File: fontinfo.h Description: Font information classes abstracted from intproto.h/cpp. Author: rays@google.com (Ray Smith) (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/image.cpp tesseract/unittest/capiexample_c_test.c tesseract/unittest/capiexample_test.cc ///////////////////////////////////////////////////////////////////// Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/image.h ///////////////////////////////////////////////////////////////////// File: image.h Description: Image wrapper. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/imagedata.cpp ///////////////////////////////////////////////////////////////////// File: imagedata.cpp Description: Class to hold information about a single multi-page tiff training file and its corresponding boxes or text file. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/imagedata.h ///////////////////////////////////////////////////////////////////// File: imagedata.h Description: Class to hold information about a single image and its corresponding boxes or text file. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/linlsq.cpp File: linlsq.cpp (Formerly llsq.c) Description: Linear Least squares fitting code. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/linlsq.h File: linlsq.h (Formerly llsq.h) Description: Linear Least squares fitting code. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/matrix.cpp File: matrix.cpp (Formerly matrix.c) Description: Ratings matrix code. (Used by associator) Author: Mark Seaman, OCR Technology (c) Copyright 1990, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/matrix.h File: matrix.h Description: Generic 2-d array/matrix and banded triangular matrix class. Author: Ray Smith TODO(rays) Separate from ratings matrix, which it also contains: Description: Ratings matrix class (specialization of banded matrix). Segmentation search matrix of lists of BLOB_CHOICE. Author: Mark Seaman, OCR Technology (c) Copyright 1990, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/mod128.cpp File: mod128.cpp (Formerly dir128.c) Description: Code to convert a DIR128 to an ICOORD. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/mod128.h File: mod128.h (Formerly dir128.h) Description: Header for class which implements modulo arithmetic. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/normalis.cpp File: normalis.cpp (Formerly denorm.c) Description: Code for the DENORM class. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/normalis.h File: normalis.h (Formerly denorm.h) Description: Code for the DENORM class. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/ocrblock.cpp File: ocrblock.cpp (Formerly block.c) Description: BLOCK member functions and iterator functions. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/ocrblock.h File: ocrblock.h (Formerly block.h) Description: Page block class definition. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/ocrpara.cpp /////////////////////////////////////////////////////////////////// File: ocrpara.cpp Description: OCR Paragraph Output Type Author: David Eger (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/ocrpara.h /////////////////////////////////////////////////////////////////// File: ocrpara.h Description: OCR Paragraph Output Type Author: David Eger (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/ocrrow.cpp File: ocrrow.cpp (Formerly row.c) Description: Code for the ROW class. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/ocrrow.h File: ocrrow.h (Formerly row.h) Description: Code for the ROW class. Author: Ray Smith Created: Tue Oct 08 15:58:04 BST 1991 (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/otsuthr.cpp File: otsuthr.cpp Description: Simple Otsu thresholding for binarizing images. Author: Ray Smith (C) Copyright 2008, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/otsuthr.h ///////////////////////////////////////////////////////////////////// File: otsuthr.h Description: Simple Otsu thresholding for binarizing images. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/pageres.cpp File: pageres.cpp (Formerly page_res.c) Description: Hierarchy of results classes from PAGE_RES to WERD_RES and an iterator class to iterate over the words. Main purposes: Easy way to iterate over the words without a 3-nested loop. Holds data used during word recognition. Holds information about alternative spacing paths. Author: Phil Cheatle (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/pageres.h File: pageres.h (Formerly page_res.h) Description: Results classes used by control.c Author: Phil Cheatle (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/params_training_featdef.cpp ///////////////////////////////////////////////////////////////////// File: params_training_featdef.cpp Description: Utility functions for params training features. Author: David Eger Created: Mon Jun 11 11:26:42 PDT 2012 (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/params_training_featdef.h ///////////////////////////////////////////////////////////////////// File: params_training_featdef.h Description: Feature definitions for params training. Author: Rika Antonova (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccstruct/pdblock.cpp File: pdblock.cpp Description: PDBLK member functions and iterator functions. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/pdblock.h File: pdblock.h (Formerly pdblk.h) Description: Page block class definition. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/points.cpp File: points.cpp (Formerly coords.c) Description: Member functions for coordinate classes. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/points.h File: points.h (Formerly coords.h) Description: Coordinate class definitions. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/polyaprx.cpp File: polyaprx.cpp Description: Code for polygonal approximation from old edgeprog. Author: Ray Smith (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/polyaprx.h File: polyaprx.h Description: Code for polygonal approximation from old edgeprog. Author: Ray Smith (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/polyblk.cpp File: polyblk.cpp (Formerly poly_block.c) Description: Polygonal blocks (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/polyblk.h File: polyblk.h (Formerly poly_block.h) Description: Polygonal blocks (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/quadlsq.cpp File: quadlsq.cpp (Formerly qlsq.c) Description: Code for least squares approximation of quadratics. Author: Ray Smith (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/quadlsq.h File: quadlsq.h (Formerly qlsq.h) Description: Code for least squares approximation of quadratics. Author: Ray Smith (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/quadratc.h File: quadratc.h (Formerly quadrtic.h) Description: Code for the QUAD_COEFFS class. Author: Ray Smith Created: Tue Oct 08 17:24:40 BST 1991 (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/quspline.cpp File: quspline.cpp (Formerly qspline.c) Description: Code for the QSPLINE class. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/quspline.h File: quspline.h (Formerly qspline.h) Description: Code for the QSPLINE class. Author: Ray Smith Created: Tue Oct 08 17:16:12 BST 1991 (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/ratngs.cpp File: ratngs.cpp (Formerly ratings.c) Description: Code to manipulate the BLOB_CHOICE and WERD_CHOICE classes. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/ratngs.h File: ratngs.h (Formerly ratings.h) Description: Definition of the WERD_CHOICE and BLOB_CHOICE classes. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/rect.cpp File: rect.cpp (Formerly box.c) Description: Bounding box class definition. Author: Phil Cheatle (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/rect.h File: rect.h (Formerly box.h) Description: Bounding box class definition. Author: Phil Cheatle (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/rejctmap.cpp File: rejctmap.cpp (Formerly rejmap.c) Description: REJ and REJMAP class functions. Author: Phil Cheatle (C) Copyright 1994, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/rejctmap.h * File: rejctmap.h (Formerly rejmap.h) * Description: REJ and REJMAP class functions. * Author: Phil Cheatle * * (C) Copyright 1994, Hewlett-Packard Ltd. ** Licensed under the Apache License, Version 2.0 (the "License"); ** you may not use this file except in compliance with the License. ** You may obtain a copy of the License at ** http://www.apache.org/licenses/LICENSE-2.0 ** Unless required by applicable law or agreed to in writing, software ** distributed under the License is distributed on an "AS IS" BASIS, ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ** See the License for the specific language governing permissions and ** limitations under the License. * This module may look unnecessarily verbose, but here's the philosophy... ALL processing of the reject map is done in this module. There are lots of separate calls to set reject/accept flags. These have DELIBERATELY been kept distinct so that this module can decide what to do. Basically, there is a flag for each sort of rejection or acceptance. This provides a history of what has happened to EACH character. Determining whether a character is CURRENTLY rejected depends on implicit understanding of the SEQUENCE of possible calls. The flags are defined and grouped in the REJ_FLAGS enum. These groupings are used in determining a characters CURRENT rejection status. Basically, a character is ACCEPTED if none of the permanent rej flags are set AND ( the character has never been rejected OR an accept flag is set which is LATER than the latest reject flag ) IT IS FUNDAMENTAL THAT ANYONE HACKING THIS CODE UNDERSTANDS THE SIGNIFICANCE OF THIS IMPLIED TEMPORAL ORDERING OF THE FLAGS!!!! ## Files: tesseract/src/ccstruct/seam.cpp File: seam.cpp (Formerly seam.c) Author: Mark Seaman, OCR Technology (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/seam.h File: seam.h Author: Mark Seaman, SW Productivity (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/split.cpp File: split.cpp (Formerly split.c) Author: Mark Seaman, OCR Technology (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/split.h File: split.h Author: Mark Seaman, SW Productivity Status: Reusable Software Component (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/statistc.cpp File: statistc.cpp (Formerly stats.c) Description: Simple statistical package for integer values. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/statistc.h File: statistc.h (Formerly stats.h) Description: Class description for STATS class. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/stepblob.cpp File: stepblob.cpp (Formerly cblob.c) Description: Code for C_BLOB class. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/stepblob.h File: stepblob.h (Formerly cblob.h) Description: Code for C_BLOB class. Author: Ray Smith Created: Tue Oct 08 10:41:13 BST 1991 (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/werd.cpp File: werd.cpp (Formerly word.c) Description: Code for the WERD class. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccstruct/werd.h File: werd.h Description: Code for the WERD class. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/ambigs.cpp ///////////////////////////////////////////////////////////////////// File: ambigs.cpp Description: Functions for dealing with ambiguities (training and recognition). Author: Daria Antonova (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/ambigs.h ///////////////////////////////////////////////////////////////////// File: ambigs.h Description: Constants, flags, functions for dealing with ambiguities (training and recognition). Author: Daria Antonova (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/bitvector.cpp Copyright 2011 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: bitvector.cpp Description: Class replacement for BITVECTOR. Author: Ray Smith (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/bitvector.h ///////////////////////////////////////////////////////////////////// File: bitvector.h Description: Class replacement for BITVECTOR. Author: Ray Smith (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/ccutil.cpp Copyright 2008 Google Inc. All Rights Reserved. Author: scharron@google.com (Samuel Charron) Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/ccutil/ccutil.h ///////////////////////////////////////////////////////////////////// File: ccutil.h Description: ccutil class. Author: Samuel Charron (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/clst.cpp File: clst.cpp (Formerly clist.c) Description: CONS cell list handling code which is not in the include file. Author: Phil Cheatle (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/clst.h File: clst.h (Formerly clist.h) Description: CONS cell list module include file. Author: Phil Cheatle (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/elst.cpp File: elst.cpp (Formerly elist.c) Description: Embedded list handling code which is not in the include file. Author: Phil Cheatle (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/elst.h File: elst.h (Formerly elist.h) Description: Embedded list module include file. Author: Phil Cheatle (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/elst2.cpp File: elst2.cpp (Formerly elist2.c) Description: Doubly linked embedded list code not in the include file. Author: Phil Cheatle (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/elst2.h File: elst2.h (Formerly elist2.h) Description: Double linked embedded list module include file. Author: Phil Cheatle (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/errcode.cpp File: errcode.cpp (Formerly error.c) Description: Generic error handler function Author: Ray Smith (C) Copyright 1989, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/errcode.h File: errcode.h (Formerly error.h) Description: Header file for generic error handler class Author: Ray Smith (C) Copyright 1990, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/fileerr.h File: fileerr.h (Formerly filerr.h) Description: Errors for file utilities. Author: Ray Smith (C) Copyright 1990, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/genericheap.h Copyright 2012 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: genericheap.h Description: Template heap class. Author: Ray Smith, based on Dan Johnson's original code. (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/genericvector.h ///////////////////////////////////////////////////////////////////// File: genericvector.h Description: Generic vector class Author: Daria Antonova (C) Copyright 2007, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/helpers.h File: helpers.h Description: General utility functions Author: Daria Antonova (c) Copyright 2009, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/host.h * Filename: host.h * Purpose: This is the system independent typedefs and defines * Author: MN, JG, MD * * (c) Copyright Hewlett-Packard Company, 1988-1996. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/indexmapbidi.cpp ///////////////////////////////////////////////////////////////////// File: indexmapbidi.cpp Description: Bi-directional mapping between a sparse and compact space. Author: rays@google.com (Ray Smith) (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/indexmapbidi.h ///////////////////////////////////////////////////////////////////// File: indexmapbidi.h Description: Bi-directional mapping between a sparse and compact space. Author: rays@google.com (Ray Smith) (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/kdpair.h Copyright 2012 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: kdpair.h Description: Template pair class like STL pair but geared towards the Key+Data design pattern in which some data needs to be sorted or kept in a heap sorted on some separate key. Author: Ray Smith. (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/list.h * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/lsterr.h File: lsterr.h (Formerly listerr.h) Description: Errors shared by list modules Author: Phil Cheatle (C) Copyright 1990, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/object_cache.h ///////////////////////////////////////////////////////////////////// File: object_cache.h Description: A string indexed object cache. Author: David Eger (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/params.cpp File: params.cpp Description: Initialization and setting of Tesseract parameters. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/params.h File: params.h Description: Class definitions of the *_VAR classes for tunable constants. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/qrsequence.h ///////////////////////////////////////////////////////////////////// File: qrsequence.h Description: Quasi-random sequence generator class. Author: Ranjith Unnikrishnan Class to generate a (deterministic) quasi-random Van der Corput sequence that covers the interval [0,N) without repetition. The sequence is generated by reversing the base-2 representation of the sequence of natural numbers {0, 1,... M-1}, where M is 2^{num_bits_} and num_bits is the minimum number of bits required to represent N. If a reversed numbers is >= N it is rejected and the next natural number is considered until a valid output number is found. (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/scanutils.cpp tesseract/src/ccutil/scanutils.h Copyright 2006 Google Inc. All Rights Reserved. Author: renn Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/ccutil/serialis.cpp File: serialis.cpp (Formerly serialmac.h) Description: Inline routines and macros for serialisation functions Author: Phil Cheatle (C) Copyright 1990, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/serialis.h File: serialis.h (Formerly serialmac.h) Description: Inline routines and macros for serialisation functions Author: Phil Cheatle (C) Copyright 1990, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/sorthelper.h ///////////////////////////////////////////////////////////////////// File: sorthelper.h Description: Generic sort and maxfinding class. Author: Ray Smith (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/tessdatamanager.cpp ///////////////////////////////////////////////////////////////////// File: tessdatamanager.cpp Description: Functions to handle loading/combining tesseract data files. Author: Daria Antonova (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/tessdatamanager.h ///////////////////////////////////////////////////////////////////// File: tessdatamanager.h Description: Functions to handle loading/combining tesseract data files. Author: Daria Antonova (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/tesstypes.h ///////////////////////////////////////////////////////////////////// File: tesstypes.h Description: Simple data types used by Tesseract code. Author: Stefan Weil Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/tprintf.cpp File: tprintf.cpp Description: Trace version of printf - portable between UX and NT Author: Phil Cheatle (C) Copyright 1995, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/tprintf.h File: tprintf.h Description: Trace version of printf - portable between UX and NT Author: Phil Cheatle (C) Copyright 1995, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/ccutil/unichar.cpp ///////////////////////////////////////////////////////////////////// File: unichar.cpp Description: Unicode character/ligature class. Author: Ray Smith (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/unicharcompress.cpp ///////////////////////////////////////////////////////////////////// File: unicharcompress.cpp Description: Unicode re-encoding using a sequence of smaller numbers in place of a single large code for CJK, similarly for Indic, and dissection of ligatures for other scripts. Author: Ray Smith (C) Copyright 2015, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/unicharcompress.h ///////////////////////////////////////////////////////////////////// File: unicharcompress.h Description: Unicode re-encoding using a sequence of smaller numbers in place of a single large code for CJK, similarly for Indic, and dissection of ligatures for other scripts. Author: Ray Smith (C) Copyright 2015, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/unicharmap.cpp ///////////////////////////////////////////////////////////////////// File: unicharmap.cpp Description: Unicode character/ligature to integer id class. Author: Thomas Kielbus (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/unicharmap.h ///////////////////////////////////////////////////////////////////// File: unicharmap.h Description: Unicode character/ligature to integer id class. Author: Thomas Kielbus Created: Wed Jun 28 17:05:01 PDT 2006 (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/unicharset.cpp ///////////////////////////////////////////////////////////////////// File: unicharset.cpp Description: Unicode character/ligature set class. Author: Thomas Kielbus (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/unicharset.h ///////////////////////////////////////////////////////////////////// File: unicharset.h Description: Unicode character/ligature set class. Author: Thomas Kielbus (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/unicity_table.h ///////////////////////////////////////////////////////////////////// File: unicity_table.h Description: a class to uniquify objects, manipulating them using integers ids. Author: Samuel Charron (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/ccutil/universalambigs.h ///////////////////////////////////////////////////////////////////// File: universalambigs.h Description: Data for a universal ambigs file that is useful for any language. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/classify/adaptive.cpp * Filename: adaptive.c * Purpose: Adaptive matcher. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/adaptive.h * Filename: adaptive.h * Purpose: Interface to adaptive matcher. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/adaptmatch.cpp * Filename: adaptmatch.cpp * Purpose: High level adaptive matcher. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/blobclass.cpp * Filename: blobclass.c * Purpose: High level blob classification and training routines. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/classify.cpp ///////////////////////////////////////////////////////////////////// File: classify.cpp Description: classify class. Author: Samuel Charron (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/classify/classify.h ///////////////////////////////////////////////////////////////////// File: classify.h Description: classify class. Author: Samuel Charron (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/classify/cluster.cpp * Filename: cluster.cpp * Purpose: Routines for clustering points in N-D space * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/cluster.h * Filename: cluster.h * Purpose: Definition of feature space clustering routines * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/clusttool.cpp * Filename: clusttool.cpp * Purpose: Misc. tools for use with the clustering routines * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/clusttool.h * Filename: clusttool.h * Purpose: Definition of clustering utility tools * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/cutoffs.cpp * Filename: cutoffs.c * Purpose: Routines to manipulate an array of class cutoffs. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/featdefs.cpp * Filename: featdefs.cpp * Purpose: Definitions of currently defined feature types. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/featdefs.h * Filename: featdefs.h * Purpose: Definitions of currently defined feature types. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/float2int.cpp * Filename: float2int.cpp * Purpose: Routines for converting float features to int features * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/float2int.h * Filename: float2int.h * Purpose: Routines for converting float features to int features * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/fpoint.cpp * Filename: fpoint.cpp * Purpose: Abstract data type for a 2D point (floating point coords) * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/fpoint.h * Filename: fpoint.h * Purpose: Abstract data type for 2D points (floating point coords) * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/intfeaturespace.cpp Copyright 2010 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: intfeaturespace.cpp Description: Indexed feature space based on INT_FEATURE_STRUCT. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/classify/intfeaturespace.h Copyright 2010 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: intfeaturespace.h Description: Indexed feature space based on INT_FEATURE_STRUCT. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/classify/intfx.cpp * Filename: intfx.c * Purpose: Integer character normalization & feature extraction * Author: Robert Moss, rays@google.com (Ray Smith) * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/intfx.h * Filename: intfx.h * Purpose: Interface to high level integer feature extractor. * Author: Robert Moss * History: Tue May 21 15:51:57 MDT 1991, RWM, Created. * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/intmatcher.cpp * Filename: intmatcher.cpp * Purpose: Generic high level classification routines. * Author: Robert Moss * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/intmatcher.h * Filename: intmatcher.h * Purpose: Interface to high level generic classifier routines. * Author: Robert Moss * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/intproto.cpp * Filename: intproto.c * Purpose: Definition of data structures for integer protos. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/intproto.h * Filename: intproto.h * Purpose: Definition of data structures for integer protos. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/kdtree.cpp * Filename: kdtree.cpp * Purpose: Routines for managing K-D search trees * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/kdtree.h * Filename: kdtree.h * Purpose: Definition of K-D tree access routines. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/mf.cpp * Filename: mf.c * Purpose: Micro-feature interface to flexible feature extractor. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/mf.h * Filename: mf.h * Purpose: Micro-feature interface to flexible feature extractor. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/mfdefs.h * Filename: mfdefs.h * Purpose: Definition of micro-features * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/mfoutline.cpp * Filename: mfoutline.c * Purpose: Interface to outline struct used for extracting features * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/mfoutline.h * Filename: mfoutline.h * Purpose: Interface spec for fx outline structures * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/mfx.cpp * Filename: mfx.c * Purpose: Micro feature extraction routines * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/mfx.h * Filename: mfx.h * Purpose: Definition of micro-feature extraction routines * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/normfeat.cpp * Filename: normfeat.c * Purpose: Definition of char normalization features. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/normfeat.h * Filename: normfeat.h * Purpose: Definition of character normalization features. * Author: Dan Johnson * History: 12/14/90, DSJ, Created. * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/normmatch.cpp * Filename: normmatch.c * Purpose: Simple matcher based on character normalization features. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/normmatch.h * Filename: normmatch.h * Purpose: Simple matcher based on character normalization features. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/ocrfeatures.cpp * Filename: ocrfeatures.cpp * Purpose: Generic definition of a feature. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/ocrfeatures.h * Filename: features.h * Purpose: Generic definition of a feature. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/outfeat.cpp * Filename: outfeat.c * Purpose: Definition of outline-features. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/outfeat.h * Filename: outfeat.h * Purpose: Definition of outline features. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/picofeat.cpp * Filename: picofeat.c * Purpose: Definition of pico-features. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/picofeat.h * Filename: picofeat.h * Purpose: Definition of pico features. * Author: Dan Johnson * History: 9/4/90, DSJ, Created. * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/protos.cpp File: protos.cpp (Formerly protos.c) Author: Mark Seaman, OCR Technology (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/protos.h File: protos.h Author: Mark Seaman, SW Productivity (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/classify/shapeclassifier.cpp Copyright 2011 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: shapeclassifier.cpp Description: Base interface class for classifiers that return a shape index. Author: Ray Smith (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/classify/shapeclassifier.h ///////////////////////////////////////////////////////////////////// File: shapeclassifier.h Description: Base interface class for classifiers that return a shape index. Author: Ray Smith (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/classify/shapetable.cpp Copyright 2010 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: shapetable.cpp Description: Class to map a classifier shape index to unicharset indices and font indices. Author: Ray Smith (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/classify/shapetable.h Copyright 2010 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: shapetable.h Description: Class to map a classifier shape index to unicharset indices and font indices. Author: Ray Smith (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/classify/tessclassifier.cpp ///////////////////////////////////////////////////////////////////// File: tessclassifier.cpp Description: Tesseract implementation of a ShapeClassifier. Author: Ray Smith (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/classify/tessclassifier.h Copyright 2011 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: tessclassifier.h Description: Tesseract implementation of a ShapeClassifier. Author: Ray Smith (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/classify/trainingsample.cpp tesseract/src/classify/trainingsample.h tesseract/src/training/common/trainingsampleset.cpp tesseract/src/training/common/trainingsampleset.h Copyright 2010 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/cutil/bitvec.h * Filename: bitvec.h * Purpose: Routines for manipulating bit vectors * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/cutil/oldlist.cpp # # File: oldlist.cpp # Description: List processing procedures. # Author: Mark Seaman, Software Productivity # # (c) Copyright 1987, Hewlett-Packard Company. ** Licensed under the Apache License, Version 2.0 (the "License"); ** you may not use this file except in compliance with the License. ** You may obtain a copy of the License at ** http://www.apache.org/licenses/LICENSE-2.0 ** Unless required by applicable law or agreed to in writing, software ** distributed under the License is distributed on an "AS IS" BASIS, ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ** See the License for the specific language governing permissions and ** limitations under the License. # ############################################################################### This file contains a set of general purpose list manipulation routines. These routines can be used in a wide variety of ways to provide several different popular data structures. A new list can be created by declaring a variable of type 'LIST', and can be initialized with the value 'NIL_LIST'. All of these routines check for the NIL_LIST condition before dereferencing pointers. NOTE: There is a users' manual available in printed form from Mark Seaman at (303) 350-4492 at Greeley Hard Copy. To implement a STACK use: push to add to the Stack l = push(l, (LIST)"jim"); pop to remove items from the Stack l = pop(l); first_node to access the head name = (char *)first_node(l); To implement a QUEUE use: push_last to add to the Queue l = push_last(l, (LIST)"x"); pop remove items from the Queue l = pop(l); first_node to access the head name = (char *)first_node (l); To implement LISP like functions use: first_node CAR x = (int)first_node(l); rest CDR l = list_rest (l); push CONS l = push(l, (LIST)this); last LAST x = last(l); concat APPEND l = concat(r, s); count LENGTH x = count(l); search MEMBER if (search(l, x, nullptr)) The following rules of closure exist for the functions provided. a = first_node (push (a, b)) b = list_rest (push (a, b)) a = push (pop (a), a)) For all a <> NIL_LIST a = reverse (reverse (a)) ## Files: tesseract/src/cutil/oldlist.h File: oldlist.h (Formerly list.h) Description: List processing procedures declarations. Author: Mark Seaman, SW Productivity (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ***************************************************************************** This file contains the interface for a set of general purpose list manipulation routines. For the implementation of these routines see the file "list.c". ***************************************************************************** INDEX ======= BASICS: ------- first_node - Macro to return the first list node (not the cell). list_rest - Macro the return the second list cell pop - Destroy one list cell push - Create one list cell and set the node and next fields ITERATION: ----------------- iterate - Macro to create a for loop to visit each cell. LIST CELL COUNTS: ----------------- count - Returns the number of list cells in the list. last - Returns the last list cell. TRANSFORMS: (Note: These functions all modify the input list.) ---------- delete_d - Removes the requested elements from the list. push_last - Add a new element onto the end of a list. SETS: ----- search - Return the pointer to the list cell whose node matches. CELL OPERATIONS: ----------------- destroy - Return all list cells in a list. destroy_nodes - Apply a function to each list cell and destroy the list. set_rest - Assign the next field in a list cell. ## Files: tesseract/src/dict/context.cpp File: context.cpp (Formerly context.c) Description: Context checking functions Author: Mark Seaman, OCR Technology (c) Copyright 1990, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/dict/dawg.cpp File: dawg.cpp (Formerly dawg.c) Description: Use a Directed Acyclic Word Graph Author: Mark Seaman, OCR Technology (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/dict/dawg.h File: dawg.h Description: Definition of a class that represents Directed Acyclic Word Graph (DAWG), functions to build and manipulate the DAWG. Author: Mark Seaman, SW Productivity (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/dict/dawg_cache.cpp ///////////////////////////////////////////////////////////////////// File: dawg_cache.cpp Description: A class that knows about loading and caching dawgs. Author: David Eger (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/dict/dawg_cache.h ///////////////////////////////////////////////////////////////////// File: dawg_cache.h Description: A class that knows about loading and caching dawgs. Author: David Eger Created: Fri Jan 27 12:08:00 PST 2012 (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/dict/dict.cpp ///////////////////////////////////////////////////////////////////// File: dict.cpp Description: dict class. Author: Samuel Charron (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/dict/dict.h ///////////////////////////////////////////////////////////////////// File: dict.h Description: dict class. Author: Samuel Charron (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/dict/hyphen.cpp File: hyphen.cpp (Formerly hyphen.c) Description: Functions for maintaining information about hyphenated words. Author: Mark Seaman, OCR Technology Status: Reusable Software Component (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/dict/matchdefs.h * Filename: matchdefs.h * Purpose: Generic interface definitions for feature matchers. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/dict/permdawg.cpp File: permdawg.cpp (Formerly permdawg.c) Description: Scale word choices by a dictionary Author: Mark Seaman, OCR Technology (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/dict/stopper.cpp * Filename: stopper.c * Purpose: Stopping criteria for word classifier. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/dict/stopper.h * Filename: stopper.h * Purpose: Stopping criteria for word classifier. * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/dict/trie.cpp File: trie.cpp (Formerly trie.c) Description: Functions to build a trie data structure. Author: Mark Seaman, OCR Technology (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/dict/trie.h File: trie.h Description: Functions to build a trie data structure. Author: Mark Seaman, SW Productivity (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/lstm/convolve.cpp ///////////////////////////////////////////////////////////////////// File: convolve.cpp Description: Convolutional layer that stacks the inputs over its rectangle and pulls in random data to fill out-of-input inputs. Output is therefore same size as its input, but deeper. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/convolve.h ///////////////////////////////////////////////////////////////////// File: convolve.h Description: Convolutional layer that stacks the inputs over its rectangle and pulls in random data to fill out-of-input inputs. Output is therefore same size as its input, but deeper. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/fullyconnected.cpp ///////////////////////////////////////////////////////////////////// File: fullyconnected.cpp Description: Simple feed-forward layer with various non-linearities. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/fullyconnected.h ///////////////////////////////////////////////////////////////////// File: fullyconnected.h Description: Simple feed-forward layer with various non-linearities. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/functions.h ///////////////////////////////////////////////////////////////////// File: functions.h Description: Collection of function-objects used by the network layers. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/input.cpp ///////////////////////////////////////////////////////////////////// File: input.cpp Description: Input layer class for neural network implementations. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/input.h ///////////////////////////////////////////////////////////////////// File: input.h Description: Input layer class for neural network implementations. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/lstm.cpp ///////////////////////////////////////////////////////////////////// File: lstm.cpp Description: Long-term-short-term-memory Recurrent neural network. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/lstm.h ///////////////////////////////////////////////////////////////////// File: lstm.h Description: Long-term-short-term-memory Recurrent neural network. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/lstmrecognizer.cpp ///////////////////////////////////////////////////////////////////// File: lstmrecognizer.cpp Description: Top-level line recognizer class for LSTM-based networks. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/lstmrecognizer.h ///////////////////////////////////////////////////////////////////// File: lstmrecognizer.h Description: Top-level line recognizer class for LSTM-based networks. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/maxpool.cpp ///////////////////////////////////////////////////////////////////// File: maxpool.cpp Description: Standard Max-Pooling layer. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/maxpool.h ///////////////////////////////////////////////////////////////////// File: maxpool.h Description: Standard Max-Pooling layer. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/network.cpp ///////////////////////////////////////////////////////////////////// File: network.cpp Description: Base class for neural network implementations. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/network.h ///////////////////////////////////////////////////////////////////// File: network.h Description: Base class for neural network implementations. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/networkio.cpp ///////////////////////////////////////////////////////////////////// File: networkio.cpp Description: Network input/output data, allowing float/int implementations. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/networkio.h ///////////////////////////////////////////////////////////////////// File: networkio.h Description: Network input/output data, allowing float/int implementations. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/networkscratch.h ///////////////////////////////////////////////////////////////////// File: networkscratch.h Description: Scratch space for Network layers that hides distinction between float/int implementations. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/parallel.cpp /////////////////////////////////////////////////////////////////////// File: parallel.cpp Description: Runs networks in parallel on the same input. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/parallel.h ///////////////////////////////////////////////////////////////////// File: parallel.h Description: Runs networks in parallel on the same input. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/plumbing.cpp ///////////////////////////////////////////////////////////////////// File: plumbing.cpp Description: Base class for networks that organize other networks eg series or parallel. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/plumbing.h ///////////////////////////////////////////////////////////////////// File: plumbing.h Description: Base class for networks that organize other networks eg series or parallel. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/recodebeam.cpp ///////////////////////////////////////////////////////////////////// File: recodebeam.cpp Description: Beam search to decode from the re-encoded CJK as a sequence of smaller numbers in place of a single large code. Author: Ray Smith (C) Copyright 2015, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/recodebeam.h ///////////////////////////////////////////////////////////////////// File: recodebeam.h Description: Beam search to decode from the re-encoded CJK as a sequence of smaller numbers in place of a single large code. Author: Ray Smith (C) Copyright 2015, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/reconfig.cpp ///////////////////////////////////////////////////////////////////// File: reconfig.cpp Description: Network layer that reconfigures the scaling vs feature depth. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/reconfig.h ///////////////////////////////////////////////////////////////////// File: reconfig.h Description: Network layer that reconfigures the scaling vs feature depth. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/reversed.cpp ///////////////////////////////////////////////////////////////////// File: reversed.cpp Description: Runs a single network on time-reversed input, reversing output. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/reversed.h ///////////////////////////////////////////////////////////////////// File: reversed.h Description: Runs a single network on time-reversed input, reversing output. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/series.cpp ///////////////////////////////////////////////////////////////////// File: series.cpp Description: Runs networks in series on the same input. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/series.h ///////////////////////////////////////////////////////////////////// File: series.h Description: Runs networks in series on the same input. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/static_shape.h ///////////////////////////////////////////////////////////////////// File: static_shape.h Description: Defines the size of the 4-d tensor input/output from a network. Author: Ray Smith Created: Fri Oct 14 09:07:31 PST 2016 (C) Copyright 2016, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/stridemap.cpp ///////////////////////////////////////////////////////////////////// File: stridemap.cpp Description: Indexing into a 4-d tensor held in a 2-d Array. Author: Ray Smith (C) Copyright 2016, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/stridemap.h ///////////////////////////////////////////////////////////////////// File: stridemap.h Description: Indexing into a 4-d tensor held in a 2-d Array. Author: Ray Smith (C) Copyright 2016, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/tfnetwork.cpp ///////////////////////////////////////////////////////////////////// File: tfnetwork.cpp Description: Encapsulation of an entire tensorflow graph as a Tesseract Network. Author: Ray Smith (C) Copyright 2016, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/tfnetwork.h ///////////////////////////////////////////////////////////////////// File: tfnetwork.h Description: Encapsulation of an entire tensorflow graph as a Tesseract Network. Author: Ray Smith (C) Copyright 2016, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/weightmatrix.cpp ///////////////////////////////////////////////////////////////////// File: weightmatrix.cpp Description: Hides distinction between float/int implementations. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/lstm/weightmatrix.h ///////////////////////////////////////////////////////////////////// File: weightmatrix.h Description: Hides distinction between float/int implementations. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/svpaint.cpp Copyright 2007 Google Inc. All Rights Reserved. Author: Joern Wanke Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Simple drawing program to illustrate ScrollView capabilities. Functionality: - The menubar is used to select from different sample styles of input. - With the RMB it is possible to change the RGB values in different popup menus. - A LMB click either draws point-to-point, point or text. - A LMB dragging either draws a line, a rectangle or ellipse. ## Files: tesseract/src/tesseract.cpp File: tesseract.cpp Description: Main program for merge of tess and editor. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/alignedblob.cpp ///////////////////////////////////////////////////////////////////// File: alignedblob.cpp Description: Subclass of BBGrid to find vertically aligned blobs. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/alignedblob.h ///////////////////////////////////////////////////////////////////// File: alignedblob.h Description: A class to find vertically aligned blobs in a BBGrid, and a struct to hold control parameters. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/baselinedetect.cpp ///////////////////////////////////////////////////////////////////// File: baselinedetect.cpp Description: Initial Baseline Determination. Copyright 2012 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/baselinedetect.h ///////////////////////////////////////////////////////////////////// File: baselinedetect.h Description: Initial Baseline Determination. Copyright 2012 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/bbgrid.cpp ///////////////////////////////////////////////////////////////////// File: bbgrid.cpp Description: Class to hold BLOBNBOXs in a grid for fast access to neighbours. Author: Ray Smith (C) Copyright 2007, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/bbgrid.h ///////////////////////////////////////////////////////////////////// File: bbgrid.h Description: Class to hold BLOBNBOXs in a grid for fast access to neighbours. Author: Ray Smith (C) Copyright 2007, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/blkocc.cpp File: blkocc.cpp (Formerly blockocc.c) Description: Block Occupancy routines Author: Chris Newton (c) Copyright 1991, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/blkocc.h File: blkocc.h (Formerly blockocc.h) Description: Block Occupancy routines Author: Chris Newton (c) Copyright 1991, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/blobgrid.cpp ///////////////////////////////////////////////////////////////////// File: blobgrid.cpp Description: BBGrid of BLOBNBOX with useful BLOBNBOX-specific methods. Copyright 2011 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) Created: Sat Jun 11 10:30:01 PST 2011 Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/blobgrid.h ///////////////////////////////////////////////////////////////////// File: blobgrid.h Description: BBGrid of BLOBNBOX with useful BLOBNBOX-specific methods. Copyright 2011 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) Created: Sat Jun 11 10:26:01 PST 2011 Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/ccnontextdetect.cpp ///////////////////////////////////////////////////////////////////// File: ccnontextdetect.cpp Description: Connected-Component-based photo (non-text) detection. Author: rays@google.com (Ray Smith) Copyright 2011 Google Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/ccnontextdetect.h ///////////////////////////////////////////////////////////////////// File: ccnontextdetect.h Description: Connected-Component-based non-text detection. Copyright 2011 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) Created: Sat Jun 11 09:52:01 PST 2011 Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/cjkpitch.cpp ///////////////////////////////////////////////////////////////////// File: cjkpitch.cpp Description: Code to determine fixed pitchness and the pitch if fixed, for CJK text. Author: takenaka@google.com (Hiroshi Takenaka) Copyright 2011 Google Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/cjkpitch.h ///////////////////////////////////////////////////////////////////// File: cjkpitch.h Description: Code to determine fixed pitchness and the pitch if fixed, for CJK text. Copyright 2011 Google Inc. All Rights Reserved. Author: takenaka@google.com (Hiroshi Takenaka) Created: Mon Jun 27 12:48:35 JST 2011 Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/colfind.cpp ///////////////////////////////////////////////////////////////////// File: colfind.cpp Description: Class to hold BLOBNBOXs in a grid for fast access to neighbours. Author: Ray Smith (C) Copyright 2007, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/colfind.h ///////////////////////////////////////////////////////////////////// File: colfind.h Description: Class to find columns in the grid of BLOBNBOXes. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/colpartition.cpp ///////////////////////////////////////////////////////////////////// File: colpartition.cpp Description: Class to hold partitions of the page that correspond roughly to text lines. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/colpartition.h ///////////////////////////////////////////////////////////////////// File: colpartition.h Description: Class to hold partitions of the page that correspond roughly to text lines. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/colpartitiongrid.cpp ///////////////////////////////////////////////////////////////////// File: colpartitiongrid.cpp Description: Class collecting code that acts on a BBGrid of ColPartitions. Author: Ray Smith (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/colpartitiongrid.h ///////////////////////////////////////////////////////////////////// File: colpartitiongrid.h Description: Class collecting code that acts on a BBGrid of ColPartitions. Author: Ray Smith (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/colpartitionset.cpp ///////////////////////////////////////////////////////////////////// File: colpartitionset.cpp Description: Class to hold a list of ColPartitions of the page that correspond roughly to columns. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/colpartitionset.h ///////////////////////////////////////////////////////////////////// File: colpartitionset.h Description: Class to hold a list of ColPartitions of the page that correspond roughly to columns. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/devanagari_processing.cpp File: devanagari_processing.cpp Description: Methods to process images containing devanagari symbols, prior to classification. Author: Shobhit Saxena (C) Copyright 2008, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/devanagari_processing.h Copyright 2008 Google Inc. All Rights Reserved. Author: shobhitsaxena@google.com (Shobhit Saxena) Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/textord/drawtord.cpp File: drawtord.cpp (Formerly drawto.c) Description: Draw things to do with textord. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/drawtord.h File: drawtord.h (Formerly drawto.h) Description: Draw things to do with textord. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/edgblob.cpp File: edgblob.cpp (Formerly edgeloop.c) Description: Functions to clean up an outline before approximation. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0(the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/edgblob.h File: edgblob.h (Formerly edgeloop.h) Description: Functions to clean up an outline before approximation. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/edgloop.cpp File: edgloop.cpp (Formerly edgeloop.c) Description: Functions to clean up an outline before approximation. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/edgloop.h File: edgloop.h (Formerly edgeloop.h) Description: Functions to clean up an outline before approximation. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/equationdetectbase.cpp ///////////////////////////////////////////////////////////////////// File: equationdetectbase.cpp Description: The base class equation detection class. Author: Zongyi (Joe) Liu (joeliu@google.com) Created: Fri Aug 31 11:13:01 PST 2011 (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/equationdetectbase.h ///////////////////////////////////////////////////////////////////// File: equationdetectbase.h Description: The base class equation detection class. Author: Zongyi (Joe) Liu (joeliu@google.com) Created: Fri Aug 31 11:13:01 PST 2011 (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/fpchop.cpp File: fpchop.cpp (Formerly fp_chop.c) Description: Code to chop fixed pitch text into character cells. Author: Ray Smith (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/fpchop.h File: fpchop.h (Formerly fp_chop.h) Description: Code to chop fixed pitch text into character cells. Author: Ray Smith (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/imagefind.cpp ///////////////////////////////////////////////////////////////////// File: imagefind.cpp Description: Function to find image and drawing regions in an image and create a corresponding list of empty blobs. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/imagefind.h ///////////////////////////////////////////////////////////////////// File: imagefind.h Description: Class to find image and drawing regions in an image and create a corresponding list of empty blobs. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/linefind.cpp ///////////////////////////////////////////////////////////////////// File: linefind.cpp Description: Class to find vertical lines in an image and create a corresponding list of empty blobs. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/linefind.h ///////////////////////////////////////////////////////////////////// File: linefind.h Description: Class to find vertical lines in an image and create a corresponding list of empty blobs. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/makerow.cpp File: makerow.cpp (Formerly makerows.c) Description: Code to arrange blobs into rows of text. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/makerow.h File: makerow.h (Formerly makerows.h) Description: Code to arrange blobs into rows of text. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/oldbasel.cpp File: oldbasel.cpp (Formerly oldbl.c) Description: A re-implementation of the old baseline algorithm. Author: Ray Smith (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/oldbasel.h File: oldbasel.h (Formerly oldbl.h) Description: A re-implementation of the old baseline algorithm. Author: Ray Smith (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/pithsync.cpp File: pithsync.cpp (Formerly pitsync2.c) Description: Code to find the optimum fixed pitch segmentation of some blobs. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/pithsync.h File: pithsync.h (Formerly pitsync2.h) Description: Code to find the optimum fixed pitch segmentation of some blobs. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/pitsync1.cpp File: pitsync1.cpp (Formerly pitsync.c) Description: Code to find the optimum fixed pitch segmentation of some blobs. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/pitsync1.h File: pitsync1.h (Formerly pitsync.h) Description: Code to find the optimum fixed pitch segmentation of some blobs. Author: Ray Smith Created: Thu Nov 19 11:48:05 GMT 1992 (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/scanedg.cpp File: scanedg.cpp (Formerly scanedge.c) Description: Raster scanning crack based edge extractor. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/scanedg.h File: scanedg.h (Formerly scanedge.h) Description: Raster scanning crack based edge extractor. Author: Ray Smith (C) Copyright 1991, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/sortflts.cpp File: sortflts.cpp (Formerly sfloats.c) Description: Code to maintain a sorted list of floats. Author: Ray Smith (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/sortflts.h File: sortflts.h (Formerly sfloats.h) Description: Code to maintain a sorted list of floats. Author: Ray Smith (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/strokewidth.cpp ///////////////////////////////////////////////////////////////////// File: strokewidth.cpp Description: Subclass of BBGrid to find uniformity of strokewidth. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/strokewidth.h ///////////////////////////////////////////////////////////////////// File: strokewidth.h Description: Subclass of BBGrid to find uniformity of strokewidth. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/tabfind.cpp ///////////////////////////////////////////////////////////////////// File: tabfind.cpp Description: Subclass of BBGrid to find vertically aligned blobs. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/tabfind.h ///////////////////////////////////////////////////////////////////// File: tabfind.h Description: Subclass of BBGrid to find tabstops. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/tablefind.cpp ///////////////////////////////////////////////////////////////////// File: tablefind.cpp Description: Helper classes to find tables from ColPartitions. Author: Faisal Shafait (faisal.shafait@dfki.de) (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/tablefind.h ///////////////////////////////////////////////////////////////////// File: tablefind.h Description: Helper classes to find tables from ColPartitions. Author: Faisal Shafait (faisal.shafait@dfki.de) (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/tablerecog.cpp ///////////////////////////////////////////////////////////////////// File: tablerecog.cpp Description: Helper class to help structure table areas. Given an bounding box from TableFinder, the TableRecognizer should give a StructuredTable (maybe a list in the future) of "good" tables in that area. Author: Nicholas Beato (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/tablerecog.h ///////////////////////////////////////////////////////////////////// File: tablerecog.h Description: Functions to detect structure of tables. Author: Nicholas Beato (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/tabvector.cpp ///////////////////////////////////////////////////////////////////// File: tabvector.cpp Description: Class to hold a near-vertical vector representing a tab-stop. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/tabvector.h ///////////////////////////////////////////////////////////////////// File: tabvector.h Description: Class to hold a near-vertical vector representing a tab-stop. Author: Ray Smith (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/textlineprojection.cpp tesseract/src/textord/textlineprojection.h Copyright 2011 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/textord/textord.cpp ///////////////////////////////////////////////////////////////////// File: textord.cpp Description: The top-level text line and word finding functionality. Author: Ray Smith Created: Fri Mar 13 14:43:01 PDT 2009 (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/textord.h ///////////////////////////////////////////////////////////////////// File: textord.h Description: The Textord class definition gathers text line and word finding functionality. Author: Ray Smith Created: Fri Mar 13 14:29:01 PDT 2009 (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/topitch.cpp File: topitch.cpp (Formerly to_pitch.c) Description: Code to determine fixed pitchness and the pitch if fixed. Author: Ray Smith (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/topitch.h File: topitch.h (Formerly to_pitch.h) Description: Code to determine fixed pitchness and the pitch if fixed. Author: Ray Smith (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/tordmain.cpp File: tordmain.cpp (Formerly textordp.c) Description: C++ top level textord code. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/tordmain.h File: tordmain.h (Formerly textordp.h) Description: C++ top level textord code. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/tovars.cpp File: tovars.cpp (Formerly to_vars.c) Description: Variables used by textord. Author: Ray Smith Created: Tue Aug 24 16:55:02 BST 1993 (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/tovars.h File: tovars.h (Formerly to_vars.h) Description: Variables used by textord. Author: Ray Smith Created: Tue Aug 24 16:55:02 BST 1993 (C) Copyright 1993, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/underlin.cpp File: underlin.cpp (Formerly undrline.c) Description: Code to chop blobs apart from underlines. Author: Ray Smith (C) Copyright 1994, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/underlin.h File: underlin.h (Formerly undrline.h) Description: Code to chop blobs apart from underlines. Author: Ray Smith (C) Copyright 1994, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/wordseg.cpp File: wordseg.cpp (Formerly wspace.c) Description: Code to segment the blobs into words. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/wordseg.h File: wordseg.h (Formerly wspace.h) Description: Code to segment the blobs into words. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/textord/workingpartset.cpp ///////////////////////////////////////////////////////////////////// File: workingpartset.cpp Description: Class to hold a working set of partitions of the page during construction of text/image regions. Author: Ray Smith Created: Tue Ocr 28 17:21:01 PDT 2008 (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/textord/workingpartset.h ///////////////////////////////////////////////////////////////////// File: workingpartset.h Description: Class to hold a working set of partitions of the page during construction of text/image regions. Author: Ray Smith Created: Tue Ocr 28 17:21:01 PDT 2008 (C) Copyright 2008, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/ambiguous_words.cpp ///////////////////////////////////////////////////////////////////// File: ambiguous_words.cpp Description: A program that takes a text file with a list of words as input (one per line) and outputs a file with the words that were found in the dictionary followed by the words that are ambiguous to them. Author: Rika Antonova (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/classifier_tester.cpp tesseract/src/training/shapeclustering.cpp Copyright 2011 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ## Files: tesseract/src/training/cntraining.cpp * Filename: cntraining.cpp * Purpose: Generates a normproto and pffmtable. * Author: Dan Johnson * Revisment: Christy Russon * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/training/combine_lang_model.cpp Copyright 2017 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) Purpose: Program to generate a traineddata file that can be used to train an LSTM-based neural network model from a unicharset and an optional set of wordlists. Eliminates the need to run set_unicharset_properties, wordlist2dawg, some non-existent binary to generate the recoder, and finally combine_tessdata. ## Files: tesseract/src/training/combine_tessdata.cpp ///////////////////////////////////////////////////////////////////// File: combine_tessdata.cpp Description: Creates a unified traineddata file from several data files produced by the training process. Author: Daria Antonova (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/common/commandlineflags.h File: commandlineflags.h Description: Header file for commandline flag parsing. Author: Ranjith Unnikrishnan (C) Copyright 2013, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/training/common/commontraining.cpp tesseract/src/training/common/commontraining.h Copyright 2008 Google Inc. All Rights Reserved. Author: scharron@google.com (Samuel Charron) Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/common/ctc.cpp ///////////////////////////////////////////////////////////////////// File: ctc.cpp Description: Slightly improved standard CTC to compute the targets. Author: Ray Smith (C) Copyright 2016, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/common/ctc.h ///////////////////////////////////////////////////////////////////// File: ctc.h Description: Slightly improved standard CTC to compute the targets. Author: Ray Smith Created: Wed Jul 13 15:17:06 PDT 2016 (C) Copyright 2016, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/common/errorcounter.cpp tesseract/src/training/common/errorcounter.h tesseract/src/training/common/sampleiterator.cpp tesseract/src/training/common/sampleiterator.h Copyright 2011 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/common/intfeaturedist.cpp Copyright 2011 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: intfeaturedist.cpp Description: Fast set-difference-based feature distance calculator. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/common/intfeaturedist.h Copyright 2011 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: intfeaturedist.h Description: Fast set-difference-based feature distance calculator. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/common/intfeaturemap.cpp Copyright 2010 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: intfeaturemap.cpp Description: Encapsulation of IntFeatureSpace with IndexMapBiDi to provide a subspace mapping and fast feature lookup. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/common/intfeaturemap.h Copyright 2010 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: intfeaturemap.h Description: Encapsulation of IntFeatureSpace with IndexMapBiDi to provide a subspace mapping and fast feature lookup. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/common/mastertrainer.cpp ///////////////////////////////////////////////////////////////////// File: mastertrainer.cpp Description: Trainer to build the MasterClassifier. Author: Ray Smith (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/common/mastertrainer.h Copyright 2010 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: mastertrainer.h Description: Trainer to build the MasterClassifier. Author: Ray Smith (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/common/networkbuilder.cpp ///////////////////////////////////////////////////////////////////// File: networkbuilder.cpp Description: Class to parse the network description language and build a corresponding network. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/common/networkbuilder.h ///////////////////////////////////////////////////////////////////// File: networkbuilder.h Description: Class to parse the network description language and build a corresponding network. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/dawg2wordlist.cpp ///////////////////////////////////////////////////////////////////// File: dawg2wordlist.cpp Description: Program to create a word list from a DAWG and unicharset. Author: David Eger (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/degradeimage.cpp File: degradeimage.cpp Description: Function to degrade an image (usually of text) as if it has been printed and then scanned. Authors: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/degradeimage.h File: degradeimage.h Description: Function to degrade an image (usually of text) as if it has been printed and then scanned. Authors: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/lstmeval.cpp ///////////////////////////////////////////////////////////////////// File: lstmeval.cpp Description: Evaluation program for LSTM-based networks. Author: Ray Smith (C) Copyright 2016, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/lstmtraining.cpp ///////////////////////////////////////////////////////////////////// File: lstmtraining.cpp Description: Training program for LSTM-based networks. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/merge_unicharsets.cpp ///////////////////////////////////////////////////////////////////// File: merge_unicharsets.cpp Description: Simple tool to merge two or more unicharsets. Author: Ray Smith (C) Copyright 2015, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/mergenf.cpp * Filename: MergeNF.c * Purpose: Program for merging similar nano-feature protos * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/training/mergenf.h * Filename: MergeNF.c * Purpose: Program for merging similar nano-feature protos * Author: Dan Johnson * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/training/mftraining.cpp * Filename: mftraining.c * Purpose: Separates training pages into files for each character. * Strips from files only the features and there parameters of * the feature type mf. * Author: Dan Johnson * Revisment: Christy Russon * * (c) Copyright Hewlett-Packard Company, 1988. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/training/pango/boxchar.cpp File: boxchar.cpp Description: Simple class to associate a Tesseract classification unit with its bounding box so that the boxes can be rotated as the image is rotated for degradation. Also includes routines to output the character-tagged boxes to a boxfile. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/pango/boxchar.h File: boxchar.h Description: Simple class to associate a Tesseract classification unit with its bounding box so that the boxes can be rotated as the image is rotated for degradation. Also includes routines to output the character-tagged boxes to a boxfile. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/pango/ligature_table.cpp File: ligature_table.cpp Description: Class for adding and removing optional latin ligatures, conditional on codepoint support by a specified font (if specified). Author: Ranjith Unnikrishnan (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/pango/ligature_table.h File: ligature_table.h Description: Class for adding and removing optional latin ligatures, conditional on codepoint support by a specified font (if specified). Author: Ranjith Unnikrishnan Created: Mon Nov 18 2013 (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/pango/pango_font_info.cpp File: pango_font_info.cpp Description: Font-related objects and helper functions Author: Ranjith Unnikrishnan (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/pango/pango_font_info.h File: pango_font_info.h Description: Font-related objects and helper functions Author: Ranjith Unnikrishnan Created: Mon Nov 18 2013 (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/pango/stringrenderer.cpp File: stringrenderer.cpp Description: Class for rendering UTF-8 text to an image, and retrieving bounding boxes around each grapheme cluster. Author: Ranjith Unnikrishnan (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/pango/stringrenderer.h File: stringrenderer.h Description: Class for rendering UTF-8 text to an image, and retrieving bounding boxes around each grapheme cluster. Instances are created using a font description string (eg. "Arial Italic 12"; see pango_font_info.h for the format) and the page dimensions. Other renderer properties such as spacing, ligaturization, as well a preprocessing behavior such as removal of unrenderable words and a special n-gram mode may be set using respective set_* methods. Author: Ranjith Unnikrishnan (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/pango/tlog.cpp File: tlog.cpp Description: Variant of printf with logging level controllable by a commandline flag. Author: Ranjith Unnikrishnan Created: Wed Nov 20 2013 (C) Copyright 2013, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/training/pango/tlog.h File: tlog.h Description: Variant of printf with logging level controllable by a commandline flag. Author: Ranjith Unnikrishnan Created: Wed Nov 20 2013 (C) Copyright 2013, Google Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/training/text2image.cpp File: text2image.cpp Description: Program to generate OCR training pages. Given a text file it outputs an image with a given font and degradation. Note that since the results depend on the fonts available on your system, running the code on a different machine, or different OS, or even at a different time on the same machine, may produce different fonts even if --font is given explicitly. To see names of available fonts, use --list_available_fonts with the appropriate --fonts_dir path. Specifying --use_only_legacy_fonts will restrict the available fonts to those listed in legacy_fonts.h Authors: Ranjith Unnikrishnan, Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/unicharset/fileio.cpp File: fileio.cpp Description: File I/O utilities. Author: Samuel Charron (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/unicharset/fileio.h File: fileio.h Description: File I/O utilities. Author: Samuel Charron (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/unicharset/icuerrorcode.h File: icuerrorcode.h Description: Wrapper class for UErrorCode, with conversion operators for direct use in ICU C and C++ APIs. Author: Fredrik Roubert Created: Thu July 4 2013 Features: - The constructor initializes the internal UErrorCode to U_ZERO_ERROR, removing one common source of errors. - Same use in C APIs taking a UErrorCode* (pointer) and C++ taking UErrorCode& (reference), via conversion operators. - Automatic checking for success when it goes out of scope. On failure, the destructor will log an error message and exit. Most of ICU will handle errors gracefully and provide sensible fallbacks. Using IcuErrorCode, it is therefore possible to write very compact code that does sensible things on failure and provides logging for debugging. Example: IcuErrorCode icuerrorcode; return collator.compareUTF8(a, b, icuerrorcode) == UCOL_EQUAL; (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/unicharset/lang_model_helpers.cpp tesseract/src/training/unicharset/lang_model_helpers.h Copyright 2017 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) Purpose: Collection of convenience functions to simplify creation of the unicharset, recoder, and dawgs for an LSTM model. ## Files: tesseract/src/training/unicharset/lstmtester.cpp ///////////////////////////////////////////////////////////////////// File: lstmtester.cpp Description: Top-level line evaluation class for LSTM-based networks. Author: Ray Smith (C) Copyright 2016, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/unicharset/lstmtester.h ///////////////////////////////////////////////////////////////////// File: lstmtester.h Description: Top-level line evaluation class for LSTM-based networks. Author: Ray Smith (C) Copyright 2016, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/unicharset/lstmtrainer.cpp ///////////////////////////////////////////////////////////////////// File: lstmtrainer.cpp Description: Top-level line trainer class for LSTM-based networks. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/unicharset/lstmtrainer.h ///////////////////////////////////////////////////////////////////// File: lstmtrainer.h Description: Top-level line trainer class for LSTM-based networks. Author: Ray Smith (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/unicharset/normstrngs.cpp File: normstrngs.cpp Description: Utilities to normalize and manipulate UTF-32 and UTF-8 strings. Author: Ranjith Unnikrishnan Created: Thu July 4 2013 (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/unicharset/normstrngs.h File: normstrngs.h Description: Utilities to normalize and manipulate UTF-32 and UTF-8 strings. Author: Ranjith Unnikrishnan Created: Thu July 4 2013 (C) Copyright 2013, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/unicharset/unicharset_training_utils.cpp ///////////////////////////////////////////////////////////////////// File: unicharset_training_utils.cpp Description: Training utilities for UNICHARSET. Author: Ray Smith Created: Fri Oct 17 17:09:01 PDT 2014 (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/unicharset/unicharset_training_utils.h ///////////////////////////////////////////////////////////////////// File: unicharset_training_utils.h Description: Training utilities for UNICHARSET. Author: Ray Smith (C) Copyright 2014, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/unicharset/validate_javanese.cpp File: validate_javanese.cpp Description: Text validator for Javanese Script - aksara jawa. Author: Shree Devi Kumar Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/unicharset/validate_javanese.h File: validate_javanese.h Description: Text validator for Javanese Script - aksara jawa. Author: Shree Devi Kumar Created: August 03, 2018 Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/unicharset/validator.h File: validator.h Description: Base class for various text validators. Intended mainly for scripts that use a virama character. Author: Ray Smith (C) Copyright 2017, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/src/training/unicharset_extractor.cpp ///////////////////////////////////////////////////////////////////// File: unicharset_extractor.cpp Description: Unicode character/ligature set extractor. Author: Thomas Kielbus (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/training/wordlist2dawg.cpp ///////////////////////////////////////////////////////////////////// File: wordlist2dawg.cpp Description: Program to generate a DAWG from a word list file Author: Thomas Kielbus (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/viewer/scrollview.cpp ///////////////////////////////////////////////////////////////////// File: scrollview.cpp Description: ScrollView Author: Joern Wanke (C) Copyright 2007, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/viewer/scrollview.h ///////////////////////////////////////////////////////////////////// File: scrollview.h Description: ScrollView Author: Joern Wanke (C) Copyright 2007, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ScrollView is designed as an UI which can be run remotely. This is the client code for it, the server part is written in java. The client consists mainly of 2 parts: The "core" ScrollView which sets up the remote connection, takes care of event handling etc. The other part of ScrollView consists of predefined API calls through LUA, which can basically be used to get a zoomable canvas in which it is possible to draw lines, text etc. Technically, thanks to LUA, its even possible to bypass the here defined LUA API calls at all and generate a java user interface from scratch (or basically generate any kind of java program, possibly even dangerous ones). ## Files: tesseract/src/viewer/svmnode.cpp ///////////////////////////////////////////////////////////////////// File: svmnode.cpp description_: ScrollView Menu Node Author: Joern Wanke Created: Thu Nov 29 2007 (C) Copyright 2007, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// A SVMenuNode is an entity which contains the mapping from a menu entry on the server side to the corresponding associated commands on the client. It is designed to be a tree structure with a root node, which can then be used to generate the appropriate messages to the server to display the menu structure there. A SVMenuNode can both be used in the context_ of popup menus as well as menu bars. ## Files: tesseract/src/viewer/svmnode.h ///////////////////////////////////////////////////////////////////// File: svmnode.h description_: ScrollView Menu Node Author: Joern Wanke (C) Copyright 2007, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// A SVMenuNode is an entity which contains the mapping from a menu entry on the server side to the corresponding associated commands on the client. It is designed to be a tree structure with a root node, which can then be used to generate the appropriate messages to the server to display the menu structure there. A SVMenuNode can both be used in the context_ of popup menus as well as menu bars. ## Files: tesseract/src/viewer/svutil.cpp ///////////////////////////////////////////////////////////////////// File: svutil.cpp Description: ScrollView Utilities Author: Joern Wanke (C) Copyright 2007, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// SVUtil contains the SVSync and SVNetwork classes, which are used for thread/process creation & synchronization and network connection. ## Files: tesseract/src/viewer/svutil.h ///////////////////////////////////////////////////////////////////// File: svutil.h Description: ScrollView Utilities Author: Joern Wanke (C) Copyright 2007, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// SVUtil contains the SVSync, SVSemaphore and SVNetwork classes, which are used for thread/process creation & synchronization and network connection. ## Files: tesseract/src/wordrec/associate.cpp ///////////////////////////////////////////////////////////////////// File: associate.cpp Description: Functions for scoring segmentation paths according to their character widths, gap widths and seam cuts. Author: Daria Antonova Created: Mon Mar 8 11:26:43 PDT 2010 (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/wordrec/associate.h ///////////////////////////////////////////////////////////////////// File: associate.h Description: Structs, classes, typedefs useful for the segmentation search. Functions for scoring segmentation paths according to their character widths, gap widths and seam cuts. Author: Daria Antonova Created: Mon Mar 8 11:26:43 PDT 2010 (C) Copyright 2010, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/wordrec/chop.cpp File: chop.cpp (Formerly chop.c) Author: Mark Seaman, OCR Technology (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/chop.h File: chop.h Author: Mark Seaman, SW Productivity (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/chopper.cpp File: chopper.cpp (Formerly chopper.c) Author: Mark Seaman, OCR Technology (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/drawfx.cpp File: drawfx.cpp Description: Draw things to do with feature extraction. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/drawfx.h File: drawfx.h Description: Draw things to do with feature extraction. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/findseam.cpp File: findseam.cpp (Formerly findseam.c) Author: Mark Seaman, OCR Technology (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/findseam.h File: findseam.h Author: Mark Seaman, SW Productivity (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/gradechop.cpp File: gradechop.cpp (Formerly gradechop.c) Description: Author: Mark Seaman, OCR Technology (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/language_model.cpp ///////////////////////////////////////////////////////////////////// File: language_model.cpp Description: Functions that utilize the knowledge about the properties, structure and statistics of the language to help recognition. Author: Daria Antonova (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/wordrec/language_model.h ///////////////////////////////////////////////////////////////////// File: language_model.h Description: Functions that utilize the knowledge about the properties, structure and statistics of the language to help segmentation search. Author: Daria Antonova (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/wordrec/lm_consistency.cpp ///////////////////////////////////////////////////////////////////// File: lm_consistency.cpp Description: Struct for recording consistency of the paths representing OCR hypotheses. Author: Rika Antonova Created: Mon Jun 20 11:26:43 PST 2012 (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ////////////////////////////////////////////////////////////////////// ## Files: tesseract/src/wordrec/lm_consistency.h ///////////////////////////////////////////////////////////////////// File: lm_consistency.h Description: Struct for recording consistency of the paths representing OCR hypotheses. Author: Rika Antonova (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ////////////////////////////////////////////////////////////////////// ## Files: tesseract/src/wordrec/lm_pain_points.cpp ///////////////////////////////////////////////////////////////////// File: pain_points.cpp Description: Functions that utilize the knowledge about the properties of the paths explored by the segmentation search in order to "pain points" - the locations in the ratings matrix which should be classified next. Author: Rika Antonova Created: Mon Jun 20 11:26:43 PST 2012 (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/wordrec/lm_pain_points.h ///////////////////////////////////////////////////////////////////// File: lm_pain_points.h Description: Functions that utilize the knowledge about the properties of the paths explored by the segmentation search in order to generate "pain points" - the locations in the ratings matrix which should be classified next. Author: Rika Antonova (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/wordrec/lm_state.cpp ///////////////////////////////////////////////////////////////////// File: lm_state.cpp Description: Structures and functionality for capturing the state of segmentation search guided by the language model. Author: Rika Antonova (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/wordrec/lm_state.h ///////////////////////////////////////////////////////////////////// File: lm_state.h Description: Structures and functionality for capturing the state of segmentation search guided by the language model. Author: Rika Antonova (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/wordrec/outlines.cpp File: outlines.cpp (Formerly outlines.c) Description: Combinatorial Splitter Author: Mark Seaman, OCR Technology (c) Copyright 1989, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/outlines.h File: outlines.h Description: Combinatorial Splitter Author: Mark Seaman, OCR Technology (c) Copyright 1989, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/params_model.cpp ///////////////////////////////////////////////////////////////////// File: params_model.cpp Description: Trained language model parameters. Author: David Eger (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/wordrec/params_model.h ///////////////////////////////////////////////////////////////////// File: params_model.h Description: Trained feature serialization for language parameter training. Author: David Eger (C) Copyright 2011, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/wordrec/pieces.cpp File: pieces.cpp Description: Author: Mark Seaman, OCR Technology (c) Copyright 1987, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/plotedges.cpp File: plotedges.cpp (Formerly plotedges.c) Description: Graphics routines for "Edges" and "Outlines" windows Author: Mark Seaman, OCR Technology (c) Copyright 1989, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/plotedges.h File: plotedges.h Description: Convert the various data type into line lists Author: Mark Seaman, OCR Technology (c) Copyright 1989, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/render.cpp File: render.cpp (Formerly render.c) Description: Convert the various data type into line lists Author: Mark Seaman, OCR Technology (c) Copyright 1989, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/render.h File: render.h Description: Convert the various data type into line lists Author: Mark Seaman, OCR Technology (c) Copyright 1989, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/segsearch.cpp ///////////////////////////////////////////////////////////////////// File: segsearch.cpp Description: Segmentation search functions. Author: Daria Antonova (C) Copyright 2009, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/wordrec/tface.cpp File: tface.cpp (Formerly tface.c) Description: C side of the Tess/tessedit C/C++ interface. Author: Ray Smith (C) Copyright 1992, Hewlett-Packard Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/wordclass.cpp File: wordclass.cpp (Formerly wordclass.c) Description: Word classifier Author: Mark Seaman, OCR Technology (c) Copyright 1990, Hewlett-Packard Company. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ## Files: tesseract/src/wordrec/wordrec.cpp ///////////////////////////////////////////////////////////////////// File: wordrec.cpp Description: wordrec class. Author: Samuel Charron (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/src/wordrec/wordrec.h ///////////////////////////////////////////////////////////////////// File: wordrec.h Description: wordrec class. Author: Samuel Charron (C) Copyright 2006, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/unittest/apiexample_test.cc ///////////////////////////////////////////////////////////////////// File: apiexample_test.cc Description: Api Test for Tesseract using text fixtures and parameters. Tests for Devanagari, Latin and Arabic scripts are disabled by default. Disabled tests can be run when required by using the --gtest_also_run_disabled_tests argument. ./unittest/apiexample_test --gtest_also_run_disabled_tests Author: ShreeDevi Kumar Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/unittest/applybox_test.cc tesseract/unittest/baseapi_test.cc tesseract/unittest/baseapi_thread_test.cc tesseract/unittest/bitvector_test.cc tesseract/unittest/cleanapi_test.cc tesseract/unittest/colpartition_test.cc tesseract/unittest/commandlineflags_test.cc tesseract/unittest/dawg_test.cc tesseract/unittest/denorm_test.cc tesseract/unittest/equationdetect_test.cc tesseract/unittest/fileio_test.cc tesseract/unittest/heap_test.cc tesseract/unittest/imagedata_test.cc tesseract/unittest/indexmapbidi_test.cc tesseract/unittest/intfeaturemap_test.cc tesseract/unittest/lang_model_test.cc tesseract/unittest/layout_test.cc tesseract/unittest/ligature_table_test.cc tesseract/unittest/linlsq_test.cc tesseract/unittest/lstm_recode_test.cc tesseract/unittest/lstm_squashed_test.cc tesseract/unittest/lstm_test.cc tesseract/unittest/lstm_test.h tesseract/unittest/lstmtrainer_test.cc tesseract/unittest/mastertrainer_test.cc tesseract/unittest/networkio_test.cc tesseract/unittest/normstrngs_test.cc tesseract/unittest/normstrngs_test.h tesseract/unittest/nthitem_test.cc tesseract/unittest/pagesegmode_test.cc tesseract/unittest/pango_font_info_test.cc tesseract/unittest/paragraphs_test.cc tesseract/unittest/params_model_test.cc tesseract/unittest/qrsequence_test.cc tesseract/unittest/recodebeam_test.cc tesseract/unittest/rect_test.cc tesseract/unittest/scanutils_test.cc tesseract/unittest/shapetable_test.cc tesseract/unittest/stats_test.cc tesseract/unittest/stridemap_test.cc tesseract/unittest/stringrenderer_test.cc tesseract/unittest/tablefind_test.cc tesseract/unittest/tablerecog_test.cc tesseract/unittest/tabvector_test.cc tesseract/unittest/tatweel_test.cc tesseract/unittest/textlineprojection_test.cc tesseract/unittest/tfile_test.cc tesseract/unittest/unichar_test.cc tesseract/unittest/unicharcompress_test.cc tesseract/unittest/unicharset_test.cc tesseract/unittest/validate_grapheme_test.cc tesseract/unittest/validate_indic_test.cc tesseract/unittest/validate_khmer_test.cc tesseract/unittest/validate_myanmar_test.cc tesseract/unittest/validator_test.cc (C) Copyright 2017, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/unittest/cycletimer.h tesseract/unittest/include_gunit.h (C) Copyright 2017, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Portability include to match the Google test environment. ## Files: tesseract/unittest/doubleptr.h Copyright 2012 Google Inc. All Rights Reserved. Author: rays@google.com (Ray Smith) ///////////////////////////////////////////////////////////////////// File: doubleptr.h Description: Double-ended pointer that keeps pointing correctly even when reallocated or copied. Author: Ray Smith (C) Copyright 2012, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/unittest/fuzzers/oss-fuzz-build.sh Copyright 2019 Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ############################################################################### ## Files: tesseract/unittest/intsimdmatrix_test.cc ///////////////////////////////////////////////////////////////////// File: intsimdmatrix_test.cc Author: rays@google.com (Ray Smith) Copyright 2017 Google Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/unittest/list_test.cc (C) Copyright 2020, Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tesseract/unittest/loadlang_test.cc ///////////////////////////////////////////////////////////////////// File: loadlang_test.cc Description: Test loading of All languages and Scripts for Tesseract. Tests for All languages and scripts are Disabled by default. Force the disabled test to run if required by using the --gtest_also_run_disabled_tests argument. Author: Shree Devi Kumar Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/unittest/log.h ///////////////////////////////////////////////////////////////////// File: log.h Description: Include for custom log message for unittest for tesseract. based on https://stackoverflow.com/questions/16491675/how-to-send-custom-message-in-google-c-testing-framework Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/unittest/matrix_test.cc ///////////////////////////////////////////////////////////////////// File: matrix_test.cc Author: rays@google.com (Ray Smith) Copyright 2016 Google Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/unittest/osd_test.cc ///////////////////////////////////////////////////////////////////// File: osd_test.cc Description: OSD Tests for Tesseract. Author: ShreeDevi Kumar Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/unittest/progress_test.cc ///////////////////////////////////////////////////////////////////// File: progress_test.cc Description: Progress reporting API Test for Tesseract. Author: Jaroslaw Kubik Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ///////////////////////////////////////////////////////////////////// ## Files: tesseract/unittest/syntaxnet/base.h Copyright 2016 Google Inc. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ============================================================================== ## Files: tesseract/unittest/third_party/utf/rune.c tesseract/unittest/third_party/utf/utf.h The authors of this software are Rob Pike and Ken Thompson. Copyright (c) 2002 by Lucent Technologies. Permission to use, copy, modify, and distribute this software for any purpose without fee is hereby granted, provided that this entire notice is included in all copies of any software which is or includes a copy or modification of this software and in all copies of the supporting documentation for such software. THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTY. IN PARTICULAR, NEITHER THE AUTHORS NOR LUCENT TECHNOLOGIES MAKE ANY REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. ## Files: tesseract/unittest/util/utf8/unicodetext.cc tesseract/unittest/util/utf8/unicodetext.h tesseract/unittest/util/utf8/unilib.cc tesseract/unittest/util/utf8/unilib.h tesseract/unittest/util/utf8/unilib_utf8_utils.h Copyright 2010 Google Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ## Files: tiff/contrib/dbs/tiff-bi.c tiff-bi.c -- create a Class B (bilevel) TIFF file Copyright 1990 by Digital Equipment Corporation, Maynard, Massachusetts. All Rights Reserved Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of Digital not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/contrib/dbs/tiff-grayscale.c tiff-grayscale.c -- create a Class G (grayscale) TIFF file with a gray response curve in linear optical density Copyright 1990 by Digital Equipment Corporation, Maynard, Massachusetts. All Rights Reserved Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of Digital not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/contrib/dbs/tiff-palette.c tiff-palette.c -- create a Class P (palette) TIFF file Copyright 1990 by Digital Equipment Corporation, Maynard, Massachusetts. All Rights Reserved Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of Digital not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/contrib/dbs/tiff-rgb.c tiff-rgb.c -- create a 24-bit Class R (rgb) TIFF file Copyright 1990 by Digital Equipment Corporation, Maynard, Massachusetts. All Rights Reserved Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of Digital not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/contrib/dbs/xtiff/xtiff.c xtiff - view a TIFF file in an X window Dan Sears Chris Sears Copyright 1991 by Digital Equipment Corporation, Maynard, Massachusetts. All Rights Reserved Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of Digital not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. Revision 1.0 90/05/07 Initial release. Revision 2.0 90/12/20 Converted to use the Athena Widgets and the Xt Intrinsics. Notes: According to the TIFF 5.0 Specification, it is possible to have both a TIFFTAG_COLORMAP and a TIFFTAG_COLORRESPONSECURVE. This doesn't make sense since a TIFFTAG_COLORMAP is 16 bits wide and a TIFFTAG_COLORRESPONSECURVE is tfBitsPerSample bits wide for each channel. This is probably a bug in the specification. In this case, TIFFTAG_COLORRESPONSECURVE is ignored. This might make sense if TIFFTAG_COLORMAP was 8 bits wide. TIFFTAG_COLORMAP is often incorrectly written as ranging from 0 to 255 rather than from 0 to 65535. CheckAndCorrectColormap() takes care of this. Only ORIENTATION_TOPLEFT is supported correctly. This is the default TIFF and X orientation. Other orientations will be displayed incorrectly. There is no support for or use of 3/3/2 DirectColor visuals. TIFFTAG_MINSAMPLEVALUE and TIFFTAG_MAXSAMPLEVALUE are not supported. Only TIFFTAG_BITSPERSAMPLE values that are 1, 2, 4 or 8 are supported. ## Files: tiff/contrib/mfs/mfs_file.c Copyright (c) 1996 Mike Johnson Copyright (c) 1996 BancTec AB Permission to use, copy, modify, distribute, and sell this software for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Mike Johnson and BancTec may not be used in any advertising or publicity relating to the software. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MIKE JOHNSON OR BANCTEC BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/contrib/pds/tif_imageiter.c Copyright (c) 1991-1996 Sam Leffler Copyright (c) 1991-1996 Silicon Graphics, Inc. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/contrib/pds/tif_pdsdirread.c tiff/contrib/pds/tif_pdsdirwrite.c Copyright (c) 1988-1996 Sam Leffler Copyright (c) 1991-1996 Silicon Graphics, Inc. Copyright (c( 1996 USAF Phillips Laboratory Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/contrib/ras/ras2tif.c ras2tif.c - Converts from a Sun Rasterfile to a Tagged Image File. Copyright (c) 1990 by Sun Microsystems, Inc. Author: Patrick J. Naughton naughton@wind.sun.com Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. This file is provided AS IS with no warranties of any kind. The author shall have no liability with respect to the infringement of copyrights, trade secrets or any patents by this file or any part thereof. In no event will the author be liable for any lost revenue or profits or other special, indirect and consequential damages. Comments and additions should be sent to the author: Patrick J. Naughton Sun Microsystems 2550 Garcia Ave, MS 14-40 Mountain View, CA 94043 (415) 336-1080 Revision History: 11-Jan-89: Created. 06-Mar-90: fix bug in SCALE() macro. got rid of xres and yres, (they weren't working anyways). fixed bpsl calculation. 25-Nov-99: y2k fix (year as 1900 + tm_year) Description: This program takes a Sun Rasterfile [see rasterfile(5)] as input and writes a MicroSoft/Aldus "Tagged Image File Format" image or "TIFF" file. The input file may be standard input, but the output TIFF file must be a real file since seek(2) is used. ## Files: tiff/contrib/ras/tif2ras.c tif2ras.c - Converts from a Tagged Image File Format image to a Sun Raster. Copyright (c) 1990 by Sun Microsystems, Inc. Author: Patrick J. Naughton naughton@wind.sun.com Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. This file is provided AS IS with no warranties of any kind. The author shall have no liability with respect to the infringement of copyrights, trade secrets or any patents by this file or any part thereof. In no event will the author be liable for any lost revenue or profits or other special, indirect and consequential damages. Comments and additions should be sent to the author: Patrick J. Naughton Sun Microsystems 2550 Garcia Ave, MS 14-40 Mountain View, CA 94043 (415) 336-1080 Revision History: 10-Jan-89: Created. 06-Mar-90: Change to byte encoded rasterfiles. fix bug in call to ReadScanline(). fix bug in CVT() macro. fix assignment of td, (missing &). Description: This program takes a MicroSoft/Aldus "Tagged Image File Format" image or "TIFF" file as input and writes a Sun Rasterfile [see rasterfile(5)]. The output file may be standard output, but the input TIFF file must be a real file since seek(2) is used. ## Files: tiff/doc/html-prebuilt/_static/basic.css basic.css ~~~~~~~~~ Sphinx stylesheet -- basic theme. :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. :license: BSD, see LICENSE for details. ## Files: tiff/doc/html-prebuilt/_static/doctools.js doctools.js ~~~~~~~~~~~ Base JavaScript utilities for all Sphinx HTML documentation. :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. :license: BSD, see LICENSE for details. ## Files: tiff/doc/html-prebuilt/_static/jquery-3.6.0.js ! jQuery JavaScript Library v3.6.0 https://jquery.com/ Includes Sizzle.js https://sizzlejs.com/ Copyright OpenJS Foundation and other contributors Released under the MIT license https://jquery.org/license Date: 2021-03-02T17:08Z ## Files: tiff/doc/html-prebuilt/_static/jquery-3.6.0.js ! Sizzle CSS Selector Engine v2.3.6 https://sizzlejs.com/ Copyright JS Foundation and other contributors Released under the MIT license https://js.foundation/ Date: 2021-02-16 ## Files: tiff/doc/html-prebuilt/_static/language_data.js language_data.js ~~~~~~~~~~~~~~~~ This script contains the language-specific data used by searchtools.js, namely the list of stopwords, stemmer, scorer and splitter. :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. :license: BSD, see LICENSE for details. ## Files: tiff/doc/html-prebuilt/_static/searchtools.js searchtools.js ~~~~~~~~~~~~~~~~ Sphinx JavaScript utilities for the full-text search. :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. :license: BSD, see LICENSE for details. ## Files: tiff/doc/html-prebuilt/_static/sphinxdoc.css sphinxdoc.css_t ~~~~~~~~~~~~~~~ Sphinx stylesheet -- sphinxdoc theme. Originally created by Armin Ronacher for Werkzeug. :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. :license: BSD, see LICENSE for details. ## Files: tiff/doc/html-prebuilt/_static/underscore-1.13.1.js tiff/doc/html-prebuilt/_static/underscore.js Underscore.js 1.13.1 https://underscorejs.org (c) 2009-2021 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors Underscore may be freely distributed under the MIT license. ## Files: tiff/libtiff/mkg3states.c tiff/libtiff/tif_aux.c tiff/libtiff/tif_getimage.c tiff/libtiff/tif_strip.c tiff/libtiff/tif_tile.c tiff/tools/fax2ps.c tiff/tools/ppm2tiff.c tiff/tools/rgb2ycbcr.c tiff/tools/tiff2rgba.c Copyright (c) 1991-1997 Sam Leffler Copyright (c) 1991-1997 Silicon Graphics, Inc. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/libtiff/mkg3states.c Initialise fax decoder tables Decoder support is derived, with permission, from the code in Frank Cringle's viewfax program; Copyright (C) 1990, 1995 Frank D. Cringle. ## Files: tiff/libtiff/t4.h tiff/libtiff/tif_close.c tiff/libtiff/tif_codec.c tiff/libtiff/tif_color.c tiff/libtiff/tif_compress.c tiff/libtiff/tif_dir.c tiff/libtiff/tif_dir.h tiff/libtiff/tif_dirinfo.c tiff/libtiff/tif_dirread.c tiff/libtiff/tif_dirwrite.c tiff/libtiff/tif_dumpmode.c tiff/libtiff/tif_error.c tiff/libtiff/tif_extension.c tiff/libtiff/tif_flush.c tiff/libtiff/tif_jbig.c tiff/libtiff/tif_next.c tiff/libtiff/tif_open.c tiff/libtiff/tif_packbits.c tiff/libtiff/tif_predict.c tiff/libtiff/tif_print.c tiff/libtiff/tif_read.c tiff/libtiff/tif_swab.c tiff/libtiff/tif_thunder.c tiff/libtiff/tif_unix.c tiff/libtiff/tif_warning.c tiff/libtiff/tif_win32.c tiff/libtiff/tif_write.c tiff/libtiff/tiff.h tiff/libtiff/tiffio.h tiff/libtiff/tiffio.hxx tiff/libtiff/tiffiop.h tiff/tools/pal2rgb.c tiff/tools/tiff2bw.c tiff/tools/tiff2ps.c tiff/tools/tiffcmp.c tiff/tools/tiffdither.c tiff/tools/tiffdump.c tiff/tools/tiffinfo.c Copyright (c) 1988-1997 Sam Leffler Copyright (c) 1991-1997 Silicon Graphics, Inc. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/libtiff/tif_fax3.c tiff/libtiff/tif_fax3.h tiff/tools/fax2tiff.c Copyright (c) 1990-1997 Sam Leffler Copyright (c) 1991-1997 Silicon Graphics, Inc. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/libtiff/tif_fax3.c TIFF Library. CCITT Group 3 (T.4) and Group 4 (T.6) Compression Support. This file contains support for decoding and encoding TIFF compression algorithms 2, 3, 4, and 32771. Decoder support is derived, with permission, from the code in Frank Cringle's viewfax program; Copyright (C) 1990, 1995 Frank D. Cringle. ## Files: tiff/libtiff/tif_fax3.h TIFF Library. CCITT Group 3 (T.4) and Group 4 (T.6) Decompression Support. Decoder support is derived, with permission, from the code in Frank Cringle's viewfax program; Copyright (C) 1990, 1995 Frank D. Cringle. ## Files: tiff/libtiff/tif_jpeg.c tiff/tools/thumbnail.c Copyright (c) 1994-1997 Sam Leffler Copyright (c) 1994-1997 Silicon Graphics, Inc. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/libtiff/tif_lerc.c Copyright (c) 2018, Even Rouault Author: Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/libtiff/tif_luv.c Copyright (c) 1997 Greg Ward Larson Copyright (c) 1997 Silicon Graphics, Inc. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler, Greg Larson and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler, Greg Larson and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER, GREG LARSON OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/libtiff/tif_lzma.c Copyright (c) 2010, Andrey Kiselev Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/libtiff/tif_lzw.c Copyright (c) 1988-1997 Sam Leffler Copyright (c) 1991-1997 Silicon Graphics, Inc. Copyright (c) 2022 Even Rouault Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/libtiff/tif_lzw.c TIFF Library. Rev 5.0 Lempel-Ziv & Welch Compression Support This code is derived from the compress program whose code is derived from software contributed to Berkeley by James A. Woods, derived from original work by Spencer Thomas and Joseph Orost. The original Berkeley copyright notice appears below in its entirety. ## Files: tiff/libtiff/tif_ojpeg.c WARNING: The type of JPEG encapsulation defined by the TIFF Version 6.0 specification is now totally obsolete and deprecated for new applications and images. This file was was created solely in order to read unconverted images still present on some users' computer systems. It will never be extended to write such files. Writing new-style JPEG compressed TIFFs is implemented in tif_jpeg.c. The code is carefully crafted to robustly read all gathered JPEG-in-TIFF testfiles, and anticipate as much as possible all other... But still, it may fail on some. If you encounter problems, please report them on the TIFF mailing list and/or to Joris Van Damme . Please read the file called "TIFF Technical Note #2" if you need to be convinced this compression scheme is bad and breaks TIFF. That document is linked to from the LibTiff site and from AWare Systems' TIFF section . It is also absorbed in Adobe's specification supplements, marked "draft" up to this day, but supported by the TIFF community. This file interfaces with Release 6B of the JPEG Library written by the Independent JPEG Group. Previous versions of this file required a hack inside the LibJpeg library. This version no longer requires that. Remember to remove the hack if you update from the old version. Copyright (c) Joris Van Damme Copyright (c) AWare Systems The licence agreement for this file is the same as the rest of the LibTiff library. IN NO EVENT SHALL JORIS VAN DAMME OR AWARE SYSTEMS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. Joris Van Damme and/or AWare Systems may be available for custom development. If you like what you see, and need anything similar or related, contact . ## Files: tiff/libtiff/tif_pixarlog.c Copyright (c) 1996-1997 Sam Leffler Copyright (c) 1996 Pixar Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Pixar, Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Pixar, Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL PIXAR, SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/libtiff/tif_predict.h tiff/libtiff/tif_zip.c Copyright (c) 1995-1997 Sam Leffler Copyright (c) 1995-1997 Silicon Graphics, Inc. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/libtiff/tif_stream.cxx Copyright (c) 1988-1996 Sam Leffler Copyright (c) 1991-1996 Silicon Graphics, Inc. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/libtiff/tif_version.c tiff/tools/tiffsplit.c Copyright (c) 1992-1997 Sam Leffler Copyright (c) 1992-1997 Silicon Graphics, Inc. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/libtiff/tif_webp.c Copyright (c) 2018, Mapbox Author: Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/libtiff/tif_zstd.c Copyright (c) 2017, Planet Labs Author: Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/port/libport.h Copyright (c) 2009 Frank Warmerdam Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/test/ascii_tag.c tiff/test/check_tag.c tiff/test/long_tag.c tiff/test/short_tag.c tiff/test/strip.c tiff/test/strip_rw.c tiff/test/test_arrays.c tiff/test/test_arrays.h Copyright (c) 2004, Andrey Kiselev Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/test/custom_dir.c tiff/test/custom_dir_EXIF_231.c tiff/test/rational_precision2double.c tiff/test/raw_decode.c Copyright (c) 2012, Frank Warmerdam Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/test/defer_strile_loading.c tiff/test/defer_strile_writing.c Copyright (c) 2019, Even Rouault Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/test/rewrite_tag.c Copyright (c) 2007, Frank Warmerdam Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/test/test_append_to_strip.c tiff/test/test_ifd_loop_detection.c tiff/test/test_open_options.c Copyright (c) 2022, Even Rouault Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/test/test_signed_tags.c Copyright (c) 2022, Su Laus @Su_Laus Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/test/testtypes.c Copyright (c) 2019, Thomas Bernard Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/test/tifftest.h Copyright (c) 2008, Andrey Kiselev Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/tools/raw2tiff.c Project: libtiff tools Purpose: Convert raw byte sequences in TIFF images Author: Andrey Kiselev, dron@ak4719.spb.edu ***************************************************************************** Copyright (c) 2002, Andrey Kiselev Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/tools/tiff2pdf.c tiff2pdf - converts a TIFF image to a PDF document Copyright (c) 2003 Ross Finlayson Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the name of Ross Finlayson may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Ross Finlayson. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL ROSS FINLAYSON BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/tools/tiff2pdf.c This is the main function. The program converts one TIFF file to one PDF file, including multiple page TIFF files, tiled TIFF files, black and white. grayscale, and color TIFF files that contain data of TIFF photometric interpretations of bilevel, grayscale, RGB, YCbCr, CMYK separation, and ICC L*a*b* as supported by libtiff and PDF. If you have multiple TIFF files to convert into one PDF file then use tiffcp or other program to concatenate the files into a multiple page TIFF file. If the input TIFF file is of huge dimensions (greater than 10000 pixels height or width) convert the input image to a tiled TIFF if it is not already. The standard output is standard output. Set the output file name with the "-o output.pdf" option. All black and white files are compressed into a single strip CCITT G4 Fax compressed PDF, unless tiled, where tiled black and white images are compressed into tiled CCITT G4 Fax compressed PDF, libtiff CCITT support is assumed. Color and grayscale data can be compressed using either JPEG compression, ITU-T T.81, or Zip/Deflate LZ77 compression, per PNG 1.2 and RFC 1951. Set the compression type using the -j or -z options. JPEG compression support requires that libtiff be configured with JPEG support, and Zip/Deflate compression support requires that libtiff is configured with Zip support, in tiffconf.h. Use only one or the other of -j and -z. The -q option sets the image compression quality, that is 1-100 with libjpeg JPEG compression and one of 1, 10, 11, 12, 13, 14, or 15 for PNG group compression predictor methods, add 100, 200, ..., 900 to set zlib compression quality 1-9. PNG Group differencing predictor methods are not currently implemented. If the input TIFF contains single strip CCITT G4 Fax compressed information, then that is written to the PDF file without transcoding, unless the options of no compression and no passthrough are set, -d and -n. If the input TIFF contains JPEG or single strip Zip/Deflate compressed information, and they are configured, then that is written to the PDF file without transcoding, unless the options of no compression and no passthrough are set. The default page size upon which the TIFF image is placed is determined by the resolution and extent of the image data. Default values for the TIFF image resolution can be set using the -x and -y options. The page size can be set using the -p option for paper size, or -w and -l for paper width and length, then each page of the TIFF image is centered on its page. The distance unit for default resolution and page width and length can be set by the -u option, the default unit is inch. Various items of the output document information can be set with the -e, -c, -a, -t, -s, and -k tags. Setting the argument of the option to "" for these tags causes the relevant document information field to be not written. Some of the document information values otherwise get their information from the input TIFF image, the software, author, document name, and image description. The output PDF file conforms to the PDF 1.1 specification or PDF 1.2 if using Zip/Deflate compression. The Portable Document Format (PDF) specification is copyrighted by Adobe Systems, Incorporated. Todos derechos reservados. Here is a listing of the usage example and the options to the tiff2pdf program that is part of the libtiff distribution. Options followed by a colon have a required argument. usage: tiff2pdf [options] input.tif options: -o: output to file name #ifdef JPEG_SUPPORT -j: compress with JPEG (requires libjpeg configured with libtiff) #endif #ifdef ZIP_SUPPORT printf (-z: compress with Zip/Deflate (requires zlib configured with libtiff)); #endif -q: compression quality -n: no compressed data passthrough -d: do not compress (decompress) -i: invert colors -u: set distance unit, 'i' for inch, 'm' for centimeter -x: set x resolution default -y: set y resolution default -w: width in units -l: length in units -r: 'd' for resolution default, 'o' for resolution override -p: paper size, eg "letter", "legal", "a4" -F: make the tiff fill the PDF page -f: set pdf "fit window" user preference -b: set PDF "Interpolate" user preference -e: date, overrides image or current date/time default, YYYYMMDDHHMMSS -c: creator, overrides image software default -a: author, overrides image artist default -t: title, overrides image document name default -s: subject, overrides image image description default -k: keywords -h: usage examples: tiff2pdf -o output.pdf input.tiff The above example would generate the file output.pdf from input.tiff. tiff2pdf input.tiff The above example would generate PDF output from input.tiff and write it to standard output. tiff2pdf -j -p letter -o output.pdf input.tiff The above example would generate the file output.pdf from input.tiff, putting the image pages on a letter sized page, compressing the output with JPEG. Please report bugs through: http://bugzilla.remotesensing.org/buglist.cgi?product=libtiff See also libtiff.3t, tiffcp. ## Files: tiff/tools/tiffcp.c Copyright (c) 1988-1997 Sam Leffler Copyright (c) 1991-1997 Silicon Graphics, Inc. Revised: 2/18/01 BAR -- added syntax for extracting single images from multi-image TIFF files. New syntax is: sourceFileName,image# image# ranges from 0.. where n is the # of images in the file. There may be no white space between the comma and the filename or image number. Example: tiffcp source.tif,1 destination.tif Copies the 2nd image in source.tif to the destination. **** Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/tools/tiffcrop.c tiffcrop.c -- a port of tiffcp.c extended to include manipulations of the image data through additional options listed below Original code: Copyright (c) 1988-1997 Sam Leffler Copyright (c) 1991-1997 Silicon Graphics, Inc. Additions (c) Richard Nolde 2006-2010 Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS OR ANY OTHER COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. Some portions of the current code are derived from tiffcp, primarily in the areas of lowlevel reading and writing of TAGS, scanlines and tiles though some of the original functions have been extended to support arbitrary bit depths. These functions are presented at the top of this file. Add support for the options below to extract sections of image(s) and to modify the whole image or selected portions of each image by rotations, mirroring, and colorscale/colormap inversion of selected types of TIFF images when appropriate. Some color model dependent functions are restricted to bilevel or 8 bit per sample data. See the man page for the full explanations. New Options: -h Display the syntax guide. -v Report the version and last build date for tiffcrop and libtiff. -z x1,y1,x2,y2:x3,y3,x4,y4:..xN,yN,xN + 1, yN + 1 Specify a series of coordinates to define rectangular regions by the top left and lower right corners. -e c|d|i|m|s export mode for images and selections from input images combined All images and selections are written to a single file (default) with multiple selections from one image combined into a single image divided All images and selections are written to a single file with each selection from one image written to a new image image Each input image is written to a new file (numeric filename sequence) with multiple selections from the image combined into one image multiple Each input image is written to a new file (numeric filename sequence) with each selection from the image written to a new image separated Individual selections from each image are written to separate files -U units [in, cm, px ] inches, centimeters or pixels -H # Set horizontal resolution of output images to # -V # Set vertical resolution of output images to # -J # Horizontal margin of output page to # expressed in current units when sectioning image into columns x rows using the -S cols:rows option. -K # Vertical margin of output page to # expressed in current units when sectioning image into columns x rows using the -S cols:rows option. -X # Horizontal dimension of region to extract expressed in current units, relative to the specified origin reference 'edge' left (default for X) or right. -Y # Vertical dimension of region to extract expressed in current units, relative to the specified origin reference 'edge' top (default for Y) or bottom. -O orient Orientation for output image, portrait, landscape, auto -P page Page size for output image segments, eg letter, legal, tabloid, etc. -S cols:rows Divide the image into equal sized segments using cols across and rows down -E t|l|r|b Edge to use as origin (i.e. 'side' of the image not 'corner') top = width from left, zones from top to bottom (default) bottom = width from left, zones from bottom to top left = zones from left to right, length from top right = zones from right to left, length from top -m #,#,#,# Margins from edges for selection: top, left, bottom, right (commas separated) -Z #:#,#:# Zones of the image designated as zone X of Y, eg 1:3 would be first of three equal portions measured from reference edge (i.e. 'side' not corner) -N odd|even|#,#-#,#|last Select sequences and/or ranges of images within file to process. The words odd or even may be used to specify all odd or even numbered images the word last may be used in place of a number in the sequence to indicate the final image in the file without knowing how many images there are. -R # Rotate image or crop selection by 90,180,or 270 degrees clockwise -F h|v Flip (mirror) image or crop selection horizontally or vertically -I [black|white|data|both] Invert color space, eg dark to light for bilevel and grayscale images If argument is white or black, set the PHOTOMETRIC_INTERPRETATION tag to MinIsBlack or MinIsWhite without altering the image data. If the argument is data or both, the image data are modified: both inverts the data and the PHOTOMETRIC_INTERPRETATION tag, data inverts the data but not the PHOTOMETRIC_INTERPRETATION tag -D input:,output:,format:,level:N,debug:N Dump raw data for input and/or output images to individual files in raw (binary) format or text (ASCII) representing binary data as strings of 1s and 0s. The filename arguments are used as stems from which individual files are created for each image. Text format includes annotations for image parameters and scanline info. Level selects which functions dump data, with higher numbers selecting lower level, scanline level routines. Debug reports a limited set of messages to monitor progress without enabling dump logs. Note 1: The (-X|-Y), -Z, -z and -S options are mutually exclusive. In no case should the options be applied to a given selection successively. Note 2: Any of the -X, -Y, -Z and -z options together with other PAGE_MODE_x options such as -H, -V, -P, -J or -K are not supported and may cause buffer overflows. ## Files: tiff/tools/tiffgt.c Copyright (c) 1988-1997 Sam Leffler Copyright (c) 1991-1997 Silicon Graphics, Inc. Copyright (c) 2003, Andrey Kiselev Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ## Files: tiff/tools/tiffset.c Project: libtiff tools Purpose: Mainline for setting metadata in existing TIFF files. Author: Frank Warmerdam, warmerdam@pobox.com ***************************************************************************** Copyright (c) 2000, Frank Warmerdam Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ***************************************************************************** ## Files: toolbin/afmutil.py # Copyright (C) 2001-2023 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, CA 94129, USA, for further information. ## Files: toolbin/color/icc_creator/ICC_Creator/icc_create.cpp profileDescriptionTag copyrightTag mediaWhitePointTag ## Files: toolbin/gen_ldf_jb2.py # Copyright (C) %d Artifex Software, Inc. All rights reserved. # # This software is provided AS-IS with no warranty, either express or # implied. # # This software is distributed under license and may not be copied, # modified or distributed except as expressly authorized under the terms # of the license contained in the file LICENSE in this distribution. # # For more information about licensing, please refer to # http://www.ghostscript.com/licensing/. For information on # commercial licensing, go to http://www.artifex.com/licensing/ or # contact Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, # CA 94129, USA. # $ ## Files: urf/surfd.c urf/surfx.h Copyright (C) 2017 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 7 Mt. Lassen Drive - Suite A-134, San Rafael, CA 94903, U.S.A., +1(415)492-9861, for further information. ## Files: urf/urftop.c Copyright (C) 2019-2024 Artifex Software, Inc. All Rights Reserved. This software is provided AS-IS with no warranty, either express or implied. This software is distributed under license and may not be copied, modified or distributed except as expressly authorized under the terms of the license contained in the file LICENSE in this distribution. Refer to licensing information at http://www.artifex.com or contact Artifex Software, Inc., 1305 Grant Avenue - Suite 200, Novato, CA 94945, U.S.A., +1(415)492-9861, for further information. ## Files: zlib/compress.c compress.c -- compress a memory buffer Copyright (C) 1995-2005, 2014, 2016 Jean-loup Gailly, Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/contrib/blast/blast.c blast.c Copyright (C) 2003, 2012, 2013 Mark Adler For conditions of distribution and use, see copyright notice in blast.h version 1.3, 24 Aug 2013 blast.c decompresses data compressed by the PKWare Compression Library. This function provides functionality similar to the explode() function of the PKWare library, hence the name "blast". This decompressor is based on the excellent format description provided by Ben Rudiak-Gould in comp.compression on August 13, 2001. Interestingly, the example Ben provided in the post is incorrect. The distance 110001 should instead be 111000. When corrected, the example byte stream becomes: 00 04 82 24 25 8f 80 7f which decompresses to "AIAIAIAIAIAIA" (without the quotes). ## Files: zlib/contrib/blast/blast.h blast.h -- interface for blast.c Copyright (C) 2003, 2012, 2013 Mark Adler version 1.3, 24 Aug 2013 This software is provided 'as-is', without any express or implied warranty. In no event will the author be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Mark Adler madler@alumni.caltech.edu ## Files: zlib/contrib/infback9/infback9.c infback9.c -- inflate deflate64 data using a call-back interface Copyright (C) 1995-2008 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/contrib/infback9/infback9.h infback9.h -- header for using inflateBack9 functions Copyright (C) 2003 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/contrib/infback9/inflate9.h inflate9.h -- internal inflate state definition Copyright (C) 1995-2003 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/contrib/infback9/inftree9.c inftree9.c -- generate Huffman trees for efficient decoding Copyright (C) 1995-2022 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/contrib/infback9/inftree9.h inftree9.h -- header to use inftree9.c Copyright (C) 1995-2008 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/contrib/iostream2/zstream.h Copyright (c) 1997 Christian Michelsen Research AS Advanced Computing Fantoftvegen 38, 5036 BERGEN, Norway http://www.cmr.no Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. Christian Michelsen Research AS makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. ## Files: zlib/contrib/minizip/crypt.h crypt.h -- base code for crypt/uncrypt ZIPfile Version 1.01e, February 12th, 2005 Copyright (C) 1998-2005 Gilles Vollant This code is a modified version of crypting code in Infozip distribution The encryption/decryption parts of this source code (as opposed to the non-echoing password parts) were originally written in Europe. The whole source package can be freely distributed, including from the USA. (Prior to January 2000, re-export from the US was a violation of US law.) This encryption code is a direct transcription of the algorithm from Roger Schlafly, described by Phil Katz in the file appnote.txt. This file (appnote.txt) is distributed with the PKZIP program (even in the version without encryption capabilities). If you don't need crypting in your application, just define symbols NOCRYPT and NOUNCRYPT. This code support the "Traditional PKWARE Encryption". The new AES encryption added on Zip format by Winzip (see the page http://www.winzip.com/aes_info.htm ) and PKWare PKZip 5.x Strong Encryption is not supported. ## Files: zlib/contrib/minizip/ioapi.c ioapi.h -- IO base function header for compress/uncompress .zip part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html ) Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html ) Modifications for Zip64 support Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) For more info read MiniZip_info.txt ## Files: zlib/contrib/minizip/ioapi.h ioapi.h -- IO base function header for compress/uncompress .zip part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html ) Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html ) Modifications for Zip64 support Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) For more info read MiniZip_info.txt Changes Oct-2009 - Defined ZPOS64_T to fpos_t on windows and u_int64_t on linux. (might need to find a better why for this) Oct-2009 - Change to fseeko64, ftello64 and fopen64 so large files would work on linux. More if/def section may be needed to support other platforms Oct-2009 - Defined fxxxx64 calls to normal fopen/ftell/fseek so they would compile on windows. (but you should use iowin32.c for windows instead) ## Files: zlib/contrib/minizip/iowin32.c iowin32.c -- IO base function header for compress/uncompress .zip Version 1.1, February 14h, 2010 part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html ) Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html ) Modifications for Zip64 support Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) For more info read MiniZip_info.txt ## Files: zlib/contrib/minizip/iowin32.h iowin32.h -- IO base function header for compress/uncompress .zip Version 1.1, February 14h, 2010 part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html ) Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html ) Modifications for Zip64 support Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) For more info read MiniZip_info.txt ## Files: zlib/contrib/minizip/miniunz.c miniunz.c Version 1.1, February 14h, 2010 sample part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html ) Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html ) Modifications of Unzip for Zip64 Copyright (C) 2007-2008 Even Rouault Modifications for Zip64 support on both zip and unzip Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) ## Files: zlib/contrib/minizip/minizip.c minizip.c Version 1.1, February 14h, 2010 sample part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html ) Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html ) Modifications of Unzip for Zip64 Copyright (C) 2007-2008 Even Rouault Modifications for Zip64 support on both zip and unzip Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) ## Files: zlib/contrib/minizip/mztools.c zlib/contrib/minizip/mztools.h Additional tools for Minizip Code: Xavier Roche '2004 License: Same as ZLIB (www.gzip.org) ## Files: zlib/contrib/minizip/unzip.c unzip.c -- IO for uncompress .zip files using zlib Version 1.1, February 14h, 2010 part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html ) Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html ) Modifications of Unzip for Zip64 Copyright (C) 2007-2008 Even Rouault Modifications for Zip64 support on both zip and unzip Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) For more info read MiniZip_info.txt ------------------------------------------------------------------------------------ Decryption code comes from crypt.c by Info-ZIP but has been greatly reduced in terms of compatibility with older software. The following is from the original crypt.c. Code woven in by Terry Thorsen 1/2003. Copyright (c) 1990-2000 Info-ZIP. All rights reserved. See the accompanying file LICENSE, version 2000-Apr-09 or later (the contents of which are also included in zip.h) for terms of use. If, for some reason, all these files are missing, the Info-ZIP license also may be found at: ftp://ftp.info-zip.org/pub/infozip/license.html crypt.c (full version) by Info-ZIP. Last revised: [see crypt.h] The encryption/decryption parts of this source code (as opposed to the non-echoing password parts) were originally written in Europe. The whole source package can be freely distributed, including from the USA. (Prior to January 2000, re-export from the US was a violation of US law.) This encryption code is a direct transcription of the algorithm from Roger Schlafly, described by Phil Katz in the file appnote.txt. This file (appnote.txt) is distributed with the PKZIP program (even in the version without encryption capabilities). ------------------------------------------------------------------------------------ Changes in unzip.c 2007-2008 - Even Rouault - Addition of cpl_unzGetCurrentFileZStreamPos 2007-2008 - Even Rouault - Decoration of symbol names unz* -> cpl_unz* 2007-2008 - Even Rouault - Remove old C style function prototypes 2007-2008 - Even Rouault - Add unzip support for ZIP64 Copyright (C) 2007-2008 Even Rouault Oct-2009 - Mathias Svensson - Removed cpl_* from symbol names (Even Rouault added them but since this is now moved to a new project (minizip64) I renamed them again). Oct-2009 - Mathias Svensson - Fixed problem if uncompressed size was > 4G and compressed size was <4G should only read the compressed/uncompressed size from the Zip64 format if the size from normal header was 0xFFFFFFFF Oct-2009 - Mathias Svensson - Applied some bug fixes from paches recived from Gilles Vollant Oct-2009 - Mathias Svensson - Applied support to unzip files with compression mathod BZIP2 (bzip2 lib is required) Patch created by Daniel Borca Jan-2010 - back to unzip and minizip 1.0 name scheme, with compatibility layer Copyright (C) 1998 - 2010 Gilles Vollant, Even Rouault, Mathias Svensson ## Files: zlib/contrib/minizip/unzip.h unzip.h -- IO for uncompress .zip files using zlib Version 1.1, February 14h, 2010 part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html ) Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html ) Modifications of Unzip for Zip64 Copyright (C) 2007-2008 Even Rouault Modifications for Zip64 support on both zip and unzip Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) For more info read MiniZip_info.txt --------------------------------------------------------------------------------- Condition of use and distribution are the same than zlib : This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. --------------------------------------------------------------------------------- Changes See header of unzip64.c ## Files: zlib/contrib/minizip/zip.c zip.c -- IO on .zip files using zlib Version 1.1, February 14h, 2010 part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html ) Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html ) Modifications for Zip64 support Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) For more info read MiniZip_info.txt Changes Oct-2009 - Mathias Svensson - Remove old C style function prototypes Oct-2009 - Mathias Svensson - Added Zip64 Support when creating new file archives Oct-2009 - Mathias Svensson - Did some code cleanup and refactoring to get better overview of some functions. Oct-2009 - Mathias Svensson - Added zipRemoveExtraInfoBlock to strip extra field data from its ZIP64 data It is used when recreting zip archive with RAW when deleting items from a zip. ZIP64 data is automatically added to items that needs it, and existing ZIP64 data need to be removed. Oct-2009 - Mathias Svensson - Added support for BZIP2 as compression mode (bzip2 lib is required) Jan-2010 - back to unzip and minizip 1.0 name scheme, with compatibility layer ## Files: zlib/contrib/minizip/zip.h zip.h -- IO on .zip files using zlib Version 1.1, February 14h, 2010 part of the MiniZip project - ( http://www.winimage.com/zLibDll/minizip.html ) Copyright (C) 1998-2010 Gilles Vollant (minizip) ( http://www.winimage.com/zLibDll/minizip.html ) Modifications for Zip64 support Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) For more info read MiniZip_info.txt --------------------------------------------------------------------------- Condition of use and distribution are the same than zlib : This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. --------------------------------------------------------------------------- Changes See header of zip.h ## Files: zlib/contrib/puff/puff.c puff.c Copyright (C) 2002-2013 Mark Adler For conditions of distribution and use, see copyright notice in puff.h version 2.3, 21 Jan 2013 puff.c is a simple inflate written to be an unambiguous way to specify the deflate format. It is not written for speed but rather simplicity. As a side benefit, this code might actually be useful when small code is more important than speed, such as bootstrap applications. For typical deflate data, zlib's inflate() is about four times as fast as puff(). zlib's inflate compiles to around 20K on my machine, whereas puff.c compiles to around 4K on my machine (a PowerPC using GNU cc). If the faster decode() function here is used, then puff() is only twice as slow as zlib's inflate(). All dynamically allocated memory comes from the stack. The stack required is less than 2K bytes. This code is compatible with 16-bit int's and assumes that long's are at least 32 bits. puff.c uses the short data type, assumed to be 16 bits, for arrays in order to conserve memory. The code works whether integers are stored big endian or little endian. In the comments below are "Format notes" that describe the inflate process and document some of the less obvious aspects of the format. This source code is meant to supplement RFC 1951, which formally describes the deflate format: http://www.zlib.org/rfc-deflate.html ## Files: zlib/contrib/puff/puff.c Change history: 1.0 10 Feb 2002 - First version 1.1 17 Feb 2002 - Clarifications of some comments and notes - Update puff() dest and source pointers on negative errors to facilitate debugging deflators - Remove longest from struct huffman -- not needed - Simplify offs[] index in construct() - Add input size and checking, using longjmp() to maintain easy readability - Use short data type for large arrays - Use pointers instead of long to specify source and destination sizes to avoid arbitrary 4 GB limits 1.2 17 Mar 2002 - Add faster version of decode(), doubles speed (!), but leave simple version for readability - Make sure invalid distances detected if pointers are 16 bits - Fix fixed codes table error - Provide a scanning mode for determining size of uncompressed data 1.3 20 Mar 2002 - Go back to lengths for puff() parameters [Gailly] - Add a puff.h file for the interface - Add braces in puff() for else do [Gailly] - Use indexes instead of pointers for readability 1.4 31 Mar 2002 - Simplify construct() code set check - Fix some comments - Add FIXLCODES #define 1.5 6 Apr 2002 - Minor comment fixes 1.6 7 Aug 2002 - Minor format changes 1.7 3 Mar 2003 - Added test code for distribution - Added zlib-like license 1.8 9 Jan 2004 - Added some comments on no distance codes case 1.9 21 Feb 2008 - Fix bug on 16-bit integer architectures [Pohland] - Catch missing end-of-block symbol error 2.0 25 Jul 2008 - Add #define to permit distance too far back - Add option in TEST code for puff to write the data - Add option in TEST code to skip input bytes - Allow TEST code to read from piped stdin 2.1 4 Apr 2010 - Avoid variable initialization for happier compilers - Avoid unsigned comparisons for even happier compilers 2.2 25 Apr 2010 - Fix bug in variable initializations [Oberhumer] - Add const where appropriate [Oberhumer] - Split if's and ?'s for coverage testing - Break out test code to separate file - Move NIL to puff.h - Allow incomplete code only if single code length is 1 - Add full code coverage test to Makefile 2.3 21 Jan 2013 - Check for invalid code length codes in dynamic blocks ## Files: zlib/contrib/puff/puff.h puff.h Copyright (C) 2002-2013 Mark Adler, all rights reserved version 2.3, 21 Jan 2013 This software is provided 'as-is', without any express or implied warranty. In no event will the author be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Mark Adler madler@alumni.caltech.edu ## Files: zlib/contrib/puff/pufftest.c pufftest.c Copyright (C) 2002-2013 Mark Adler For conditions of distribution and use, see copyright notice in puff.h version 2.3, 21 Jan 2013 ## Files: zlib/deflate.c deflate.c -- compress data using the deflation algorithm Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/deflate.h deflate.h -- internal compression state Copyright (C) 1995-2018 Jean-loup Gailly For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/examples/enough.c enough.c -- determine the maximum size of inflate's Huffman code tables over all possible valid and complete prefix codes, subject to a length limit. Copyright (C) 2007, 2008, 2012, 2018 Mark Adler Version 1.5 5 August 2018 Mark Adler ## Files: zlib/examples/fitblk.c fitblk.c: example of fitting compressed output to a specified size Not copyrighted -- provided to the public domain Version 1.1 25 November 2004 Mark Adler ## Files: zlib/examples/gun.c gun.c -- simple gunzip to give an example of the use of inflateBack() Copyright (C) 2003, 2005, 2008, 2010, 2012 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h Version 1.7 12 August 2012 Mark Adler ## Files: zlib/examples/gzappend.c gzappend -- command to append to a gzip file Copyright (C) 2003, 2012 Mark Adler, all rights reserved version 1.2, 11 Oct 2012 This software is provided 'as-is', without any express or implied warranty. In no event will the author be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Mark Adler madler@alumni.caltech.edu ## Files: zlib/examples/gzappend.c Change history: 1.0 19 Oct 2003 - First version 1.1 4 Nov 2003 - Expand and clarify some comments and notes - Add version and copyright to help - Send help to stdout instead of stderr - Add some preemptive typecasts - Add L to constants in lseek() calls - Remove some debugging information in error messages - Use new data_type definition for zlib 1.2.1 - Simplify and unify file operations - Finish off gzip file in gztack() - Use deflatePrime() instead of adding empty blocks - Keep gzip file clean on appended file read errors - Use in-place rotate instead of auxiliary buffer (Why you ask? Because it was fun to write!) 1.2 11 Oct 2012 - Fix for proper z_const usage - Check for input buffer malloc failure ## Files: zlib/examples/gzjoin.c gzjoin -- command to join gzip files into one gzip file Copyright (C) 2004, 2005, 2012 Mark Adler, all rights reserved version 1.2, 14 Aug 2012 This software is provided 'as-is', without any express or implied warranty. In no event will the author be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Mark Adler madler@alumni.caltech.edu ## Files: zlib/examples/gzlog.c gzlog.c Copyright (C) 2004, 2008, 2012, 2016, 2019 Mark Adler, all rights reserved For conditions of distribution and use, see copyright notice in gzlog.h version 2.3, 25 May 2019 ## Files: zlib/examples/gzlog.h gzlog.h Copyright (C) 2004, 2008, 2012 Mark Adler, all rights reserved version 2.2, 14 Aug 2012 This software is provided 'as-is', without any express or implied warranty. In no event will the author be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Mark Adler madler@alumni.caltech.edu ## Files: zlib/examples/gznorm.c gznorm.c -- normalize a gzip stream Copyright (C) 2018 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h Version 1.0 7 Oct 2018 Mark Adler ## Files: zlib/examples/zlib_how.html ## Files: zlib/examples/zpipe.c zpipe.c: example of proper use of zlib's inflate() and deflate() Not copyrighted -- provided to the public domain Version 1.4 11 December 2005 Mark Adler ## Files: zlib/examples/zran.c zran.c -- example of zlib/gzip stream indexing and random access Copyright (C) 2005, 2012, 2018 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h Version 1.2 14 Oct 2018 Mark Adler ## Files: zlib/examples/zran.h zran.h -- example of zlib/gzip stream indexing and random access Copyright (C) 2005, 2012, 2018 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h Version 1.2 14 Oct 2018 Mark Adler ## Files: zlib/gzclose.c gzclose.c -- zlib gzclose() function Copyright (C) 2004, 2010 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/gzlib.c gzlib.c -- zlib functions common to reading and writing gzip files Copyright (C) 2004-2019 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/gzread.c gzread.c -- zlib functions for reading gzip files Copyright (C) 2004-2017 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/gzwrite.c gzwrite.c -- zlib functions for writing gzip files Copyright (C) 2004-2019 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/os400/make.sh pragma comment(user, "ZLIB version '"${VERSION}"'")' > os400.c pragma comment(user, __DATE__)' >> os400.c pragma comment(user, __TIME__)' >> os400.c pragma comment(copyright, "Copyright (C) 1995-2017 Jean-Loup Gailly, Mark Adler. OS/400 version by P. Monnerat.")' >> os400.c ## Files: zlib/test/example.c example.c -- usage example of the zlib compression library Copyright (C) 1995-2006, 2011, 2016 Jean-loup Gailly For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/test/infcover.c infcover.c -- test zlib's inflate routines with full code coverage Copyright (C) 2011, 2016 Mark Adler For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/test/minigzip.c minigzip.c -- simulate gzip using the zlib compression library Copyright (C) 1995-2006, 2010, 2011, 2016 Jean-loup Gailly For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/trees.c trees.c -- output deflated data using Huffman coding Copyright (C) 1995-2021 Jean-loup Gailly detect_data_type() function provided freely by Cosmin Truta, 2006 For conditions of distribution and use, see copyright notice in zlib.h ## Files: zlib/uncompr.c uncompr.c -- decompress a memory buffer Copyright (C) 1995-2003, 2010, 2014, 2016 Jean-loup Gailly, Mark Adler For conditions of distribution and use, see copyright notice in zlib.h