Update - README file

This commit is contained in:
Jakub Melka 2021-08-28 17:46:16 +02:00
parent e4f8d426be
commit f4fffc438c

View File

@ -1,23 +1,26 @@
========================================================================== # PDF4QT
PDF4Qt library / PDF viewer **(c) Jakub Melka 2018-2021**
(c) Jakub Melka 2018-2021 **Mgr.Jakub.Melka@gmail.com**
Mgr.Jakub.Melka@gmail.com
==========================================================================
This software is consisting of PDF rendering library, and viewer, This software is consisting of PDF rendering library, and several
which can display PDF documents. Software is implementing the PDF applications, such as advanced document viewer, command line tool,
and document page manipulator application. Software is implementing PDF
functionality based on PDF Reference 2.0. It is written and maintained functionality based on PDF Reference 2.0. It is written and maintained
by Jakub Melka. by Jakub Melka.
1. ACKNOWLEDGEMENTS *Software works only on Microsoft Windows.*
Software is provided without any warranty of any kind
##1. ACKNOWLEDGEMENTS
This software is based in part on the work of the Independent JPEG Group. This software is based in part on the work of the Independent JPEG Group.
Portions of this software are copyright © 2019 The FreeType Portions of this software are copyright © 2019 The FreeType
Project (www.freetype.org). All rights reserved. Project (www.freetype.org). All rights reserved.
2. LEGAL ISSUES ##2. LEGAL ISSUES
Both library and viewer uses more benevolent LGPL license, so it is more Both library and viewer uses more benevolent LGPL license, so it is more
usable in commercial software, than GPL code only. Please see attached usable in commercial software, than GPL code only. Please see attached
@ -25,52 +28,70 @@ file - LICENSE.txt to see details. This software also uses several
third party software, and user of this software must also respect licenses third party software, and user of this software must also respect licenses
of third party libraries. of third party libraries.
3. FEATURES ##3. FEATURES
Software have following features (the list is not complete): Software have following features (the list is not complete):
- multithreading support - [x] multithreading support
- hardware accelerated rendering - [x] hardware accelerated rendering
- encryption - [x] encryption
- color management - [x] color management
- optional content handling - [x] optional content handling
- text layout analysis - [x] text layout analysis
- signature validation - [x] signature validation
- annotations - [x] annotations
- form filling - [x] form filling
- text to speech capability - [x] text to speech capability
- editation - [x] editation
- file attachments - [x] file attachments
- optimalization (compressing documents) - [x] optimalization (compressing documents)
- command line tool - [x] command line tool
- audio book conversion - [x] audio book conversion
- internal structure inspector - [x] internal structure inspector
- [ ] compare documents *(planned in year 2021)*
- [ ] XFA support *(planned in year 2022)*
- [ ] create fillable forms *(planned in year 2022)*
- [ ] electronically/digitally sign documents *(planned in year 2023)*
- [ ] 3D PDF support *(planned in year 2023)*
- [ ] watermarks / headers / footers *(planned in year 2023)*
- [ ] presentation application *(planned in year 2023)*
- [ ] public key security encryption *(planned in year 2023)*
4. THIRD PARTY LIBRARIES ##4. THIRD PARTY LIBRARIES
a) libjpeg, see https://www.ijg.org/ Several third-party libraries are used.
b) FreeType, see https://www.freetype.org/index.html, FTL license used
c) OpenJPEG, implementing Jpeg2000, see https://www.openjpeg.org/, 2-clause MIT license
d) Qt, https://www.qt.io/, LGPL license used
e) OpenSSL, https://www.openssl.org/, Apache 2.0 license
f) LittleCMS, http://www.littlecms.com/
g) zlib, https://zlib.net/
1. libjpeg, see https://www.ijg.org/
2. FreeType, see https://www.freetype.org/index.html, FTL license used
3. OpenJPEG, implementing Jpeg2000, see https://www.openjpeg.org/, 2-clause MIT license
4. Qt, https://www.qt.io/, LGPL license used
5. OpenSSL, https://www.openssl.org/, Apache 2.0 license
6. LittleCMS, http://www.littlecms.com/
7. zlib, https://zlib.net/
5. CONTRIBUTIONS ##5. CONTRIBUTIONS
If you want to contribute to this project, it is required, that you (contributor) If you want to contribute to this project, it is required, that you (contributor)
transfer the copyright to me, because I want to have a freedom to do whatever fill and digitally sign document CLA/Contributor License Agreement.pdf,
I want with my library, without obligation to someone else. But I would strongly because I want to have a freedom to do whatever I want with my library, without obligation
prefer, if you want to contribute, to contribute in the form of testing, consultation, to someone else. But I would strongly prefer, if you want to contribute, to contribute
giving advices etc. I would like to write this library entirely by myself. in a form of testing, consultation, giving advices etc. I would like to write this library
entirely by myself.
6. COMPILING ##6. COMPILING
To compile this project, Visual Studio 2019 is needed. Only Microsoft Windows To compile this project, Visual Studio 2019 is needed. Only Microsoft Windows
is supported at this time. You must also have all of above libraries in order is supported at this time. You must also have all of above libraries in order
to compile the project. to compile the project. Software uses Qt 5.14.2.
7. DISCLAIMER ### Compilation instructions:
1. Download Qt 5.14.2
2. Download [precompiled libraries](https://github.com/JakubMelka/PdfForQt-Dependencies),
or compile them yourself. Libraries must be in same root directory as this project,
so root folder of this project will have a sibling folder with these libraries
3. Open Qt Creator and root project Pdf4Qt.pro
4. Create target for Microsoft Visual Studio 2019 and compile the project
##7. DISCLAIMER
I wrote this project in my free time. I hope you will find it useful! I wrote this project in my free time. I hope you will find it useful!