Comments (1)
Test output with pdfrw, pypdf3 & pypdf performance comparisons
TestEncrypt.test_encrypt_128bit --> mms: 146.56
.TestEncrypt.test_encrypt_128bit_allow_commenting --> mms: 64.84
.TestEncrypt.test_encrypt_128bit_allow_printing --> mms: 70.15
.TestEncrypt.test_encrypt_128bit_allow_printing_and_commenting --> mms: 94.08
.TestEncrypt.test_encrypt_40bit --> mms: 62.04
.TestEncrypt.test_encrypt_40bit_allow_commenting --> mms: 80.00
.TestEncrypt.test_encrypt_40bit_allow_printing --> mms: 72.98
.TestEncrypt.test_encrypt_40bit_allow_printing_and_commenting --> mms: 70.69
.TestEncrypt.test_encrypted_pdf_has_metadata --> mms: 73.62
.TestEncrypt.test_password_byte_string --> mms: 101.07
.TestWatermark.test_conduit_watermark_flat_pdfrw --> mms: 762.33
.TestWatermark.test_conduit_watermark_flat_pypdf --> mms: 450.64
.TestWatermark.test_conduit_watermark_flat_pypdf3 --> mms: 418.15
.TestWatermark.test_conduit_watermark_label --> mms: 48.28
.TestWatermark.test_conduit_watermark_layered_pdfrw --> mms: 226.97
.TestWatermark.test_conduit_watermark_layered_pypdf --> mms: 242.07
.TestWatermark.test_conduit_watermark_layered_pypdf3 --> mms: 255.62
.TestWatermark.test_conduit_watermark_overlay_pdfrw --> mms: 253.87
.TestWatermark.test_conduit_watermark_overlay_pypdf --> mms: 251.76
.TestWatermark.test_conduit_watermark_overlay_pypdf3 --> mms: 258.34
.TestWatermark.test_conduit_watermark_pdfrw --> mms: 221.35
.TestWatermark.test_conduit_watermark_pypdf --> mms: 245.52
.TestWatermark.test_conduit_watermark_pypdf3 --> mms: 254.45
.TestWatermark.test_conduit_watermark_underneath_pdfrw --> mms: 220.50
.TestWatermark.test_conduit_watermark_underneath_pypdf --> mms: 242.03
.TestWatermark.test_conduit_watermark_underneath_pypdf3 --> mms: 266.83
.TestFlatten.test_flatten --> sec: 2.76
.TestImg2Pdf.test_convert --> sec: 1.31
.TestImg2Pdf.test_convert_packet --> sec: 4.01
.TestPdf2Img.test_pdf2img --> mms: 213.68
.TestMerge.test_merge_pdfrw --> mms: 131.47
.TestMerge.test_merge_pypdf --> mms: 419.95
.TestMerge.test_merge_pypdf3 --> mms: 304.76
.TestRotate.test_rotate_pdfrw_180 --> mms: 15.49
.TestRotate.test_rotate_pdfrw_270 --> mms: 16.50
.TestRotate.test_rotate_pdfrw_90 --> mms: 17.24
.TestRotate.test_rotate_pypdf3_180 --> mms: 27.15
.TestRotate.test_rotate_pypdf3_270 --> mms: 25.09
.TestRotate.test_rotate_pypdf3_90 --> mms: 25.47
.TestRotate.test_rotate_pypdf_180 --> mms: 31.28
.TestRotate.test_rotate_pypdf_270 --> mms: 34.45
.TestRotate.test_rotate_pypdf_90 --> mms: 31.04
.TestSlice.test_slice_pypdf3_4th_through_7th_pages --> mms: 21.23
.TestSlice.test_slice_pypdf3_only_first_page --> mms: 16.45
.TestSlice.test_slice_pypdf_4th_through_7th_pages --> mms: 66.12
.TestSlice.test_slice_pypdf_only_first_page --> mms: 22.79
.TestUpscale.test_downscale_pdfrw_20x --> mms: 30.86
.TestUpscale.test_downscale_pypdf3_20x --> sec: 4.97
.TestUpscale.test_downscale_pypdf_20x --> sec: 1.49
.TestUpscale.test_upscale_pdfrw_15x --> mms: 35.33
.TestUpscale.test_upscale_pdfrw_20x --> mms: 36.12
.TestUpscale.test_upscale_pdfrw_30x --> mms: 35.79
.TestUpscale.test_upscale_pypdf3_15x --> sec: 5.09
.TestUpscale.test_upscale_pypdf3_20x --> sec: 4.87
.TestUpscale.test_upscale_pypdf3_30x --> sec: 4.84
.TestUpscale.test_upscale_pypdf_15x --> sec: 1.53
.TestUpscale.test_upscale_pypdf_20x --> sec: 1.49
.TestUpscale.test_upscale_pypdf_30x --> sec: 1.49
.TestInfoPypdf.test_pypdf3_dimensions --> mms: 0.78
.TestInfoPypdf.test_pypdf3_is_decrypted --> mms: 0.46
.TestInfoPypdf.test_pypdf3_is_encrypted --> mms: 4.58
.TestInfoPypdf.test_pypdf3_is_not_decrypted --> mms: 4.16
.TestInfoPypdf.test_pypdf3_is_not_encrypted --> mms: 0.54
.TestInfoPypdf.test_pypdf3_metadata --> mms: 0.58
.TestInfoPypdf.test_pypdf3_pages --> mms: 2.90
.TestInfoPypdf.test_pypdf3_resources --> mms: 0.69
.TestInfoPypdf.test_pypdf3_rotate_no_rotation --> mms: 0.62
.TestInfoPypdf.test_pypdf3_rotate_rotated --> mms: 2.20
.TestInfoPypdf.test_pypdf3_security_decrypted_pdf --> mms: 5.66
.TestInfoPypdf.test_pypdf3_security_encrypted_pdf --> mms: 3.71
.TestInfoPypdf.test_pypdf3_security_passwordless_pdf --> mms: 0.45
.TestInfoPypdf.test_pypdf3_size --> mms: 0.85
.TestInfoPypdf.test_pypdf3_size_and_dimensions_are_equal --> mms: 0.64
.TestInfoPypdf3.test_pypdf3_dimensions --> mms: 0.58
.TestInfoPypdf3.test_pypdf3_is_decrypted --> mms: 0.32
.TestInfoPypdf3.test_pypdf3_is_encrypted --> mms: 0.46
.TestInfoPypdf3.test_pypdf3_is_not_decrypted --> mms: 0.46
.TestInfoPypdf3.test_pypdf3_is_not_encrypted --> mms: 0.37
.TestInfoPypdf3.test_pypdf3_metadata --> mms: 0.51
.TestInfoPypdf3.test_pypdf3_pages --> mms: 2.16
.TestInfoPypdf3.test_pypdf3_resources --> mms: 0.67
.TestInfoPypdf3.test_pypdf3_rotate_no_rotation --> mms: 0.75
.TestInfoPypdf3.test_pypdf3_rotate_rotated --> mms: 2.21
.TestInfoPypdf3.test_pypdf3_security_decrypted_pdf --> mms: 7.29
.TestInfoPypdf3.test_pypdf3_security_encrypted_pdf --> mms: 0.55
.TestInfoPypdf3.test_pypdf3_security_passwordless_pdf --> mms: 0.40
.TestInfoPypdf3.test_pypdf3_size --> mms: 0.77
.TestInfoPypdf3.test_pypdf3_size_and_dimensions_are_equal --> mms: 0.58
.TestPath.test_add_suffix --> mms: 0.06
.TestPath.test_add_suffix_suffix --> mms: 0.04
.TestPath.test_add_suffix_suffix_sep --> mms: 0.03
.TestPath.test_add_suffix_suffix_sep_ext --> mms: 0.04
.TestRead.test_pypdf3_reader_can_read_encrypted_with_password --> mms: 16.04
.TestRead.test_pypdf3_reader_can_read_unencrypted --> mms: 2.52
.TestRead.test_pypdf3_reader_cant_read_encrypted --> mms: 7.49
.
from pdfconduit.
Related Issues (20)
- Change or remove default watermark
- Add tests for portions of codebase without code coverage
- [Port: PyPDF3 to pypdf] conduit & modify modules
- [Port: PyPDF3 to pypdf] convert module
- [Port: PyPDF3 to pypdf] transform module
- [Port: PyPDF3 to pypdf] utils module
- Finish CLI functionality
- Improve dependency constraints in setup.py
- [Port: PyPDF3 to pypdf] encrypt.py
- [Enhancements] encrypt.py - add support for algos & permissions
- [2.x] utils module test suite
- [3.x] merge utils test suite from 2.x to 3.x
- [Enhancements] merge.py - add support appending & page position
- [Enhancements] add type hinting
- [Enhancements] refactor multi-driver classes to avoid `__init__` params for drivers
- Optimize imports
- Refactor test suite to use parameter table based tests
- [4.x] new pdfconduit interface
- Migrate from setup.py to pyproject.toml
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pdfconduit.