Commit Graph

28 Commits

Author SHA1 Message Date
Peter Dias 730defb1d1 MDL-70376 mod_assign: Reintroduce pdf orientation check
Reintroduce the orientation check and sizing when importing an image
2021-08-31 12:28:32 +08:00
Eloy Lafuente (stronk7) cfba0366db Merge branch 'MDL-70893-master' of git://github.com/marinaglancy/moodle 2021-03-18 00:23:26 +01:00
Jordi Pujol Ahulló 96557076a2 MDL-70038 assign: add suport for pdftoppm tool
pdftoppm (from poppler-utils package) is several orders of
magnitude quicker than ghostscript extracting PNG images
from PDF documents.

We add support for this tool and use it whenever set up,
or using gs as before if missing.

Revisited code with peer review comments. In particular:

1. Make default path for pdftoppm empty string.
2. Fix a typo on the method description for get_gs_command_for_image.
3. Added more information why is useful pdftoppm into string pathtopdftoppm_help.
4. Check that path for pdftoppm is executable to prevent errors. Otherwise, use gs.
2021-02-23 08:07:20 +01:00
Marina Glancy 0eada7a5f9 MDL-70893 various: optional function arguments must be in the end 2021-02-15 16:53:37 +01:00
Peter 5c137f610b MDL-67215 core: Revert update from lib upgrade 2019-11-12 09:55:18 +08:00
Sara Arjona 5d657c410b MDL-65774 mod_assign: Update FPDI class to inherit pdf 2019-10-18 20:34:23 +08:00
Peter 8c95b7d9bb MDL-65774 mod_assign: Updated pdf to include FPDI upgrades 2019-10-03 07:47:11 +08:00
Jun Pataleta f2ad613278 MDL-61537 assignfeedback_editpdf: Check for existence of old test images
Since error suppression was removed with the call to unlink() to make
sure that there are no previous test image files before testing for the
gs path, make sure that it exists first before deleting to prevent it
from throwing any errors.
2019-03-21 22:38:05 +08:00
Nathan Nguyen 9432553b1c MDL-61537 assignfeedback_editpdf: Rotate PDF page
Add page rotation feature.
2019-03-15 15:02:33 +11:00
Damyon Wiese 490e48a4df MDL-63439 assign: Unicode charsets for pdf
Prefer to use freesans font for generated pdfs as it has the biggest charset support.
2018-10-09 09:28:06 +08:00
Tony Butler 2c153c5649 MDL-55459 assignfeedback_editpdf: Add linked comments and markers to PDF 2017-03-24 09:48:42 +00:00
Andrew Nicols f7a9f1dd0e MDL-55528 assignfeedback_editpdf: Update to use fileconverter_unoconv 2017-03-10 10:45:46 +08:00
Ankit Agarwal 1f3556b010 MDL-55762 assignpdf: Handle errored pages better 2017-02-27 09:24:07 +05:30
Ankit Agarwal b6d06a5f78 MDL-55762 assignpdf: Fix bug in phpdocs 2017-02-27 09:24:07 +05:30
David Monllao ab1058247c MDL-56122 editpdf: Fix ghostscript checking 2017-02-14 13:45:21 +01:00
Syxton 626d833543 MDL-51779 assign: PDF annotate quality
Fixes the quality of pdf content when annotating.
2015-10-23 09:22:38 -04:00
Eloy Lafuente (stronk7) a916d557cf MDL-49998 unit tests: Close the pdf objects when needed.
When a pdf object is instantiated and any file is loaded
with set_pdf() or load_pdf(), the files remain open until
the pdf is saved with pdf_save() or outputted with Output()..

In that cases is needed to perform an explicit Close() in
order to free resources, parsers and, ultimately, fclose()
the files.

Note that only the uses detected in the editpdf unit tests have
been fixed. I'd recommend to analyse every instance of the tcpdf
libs.

Also, there was one incorrecly reused pdf instance in then
generate_combined_pdf_for_attempt() method. Apparently it was not
leading to problems, but better use a separate instance (#246).
2015-04-28 19:46:50 +02:00
Rajesh Taneja 1bce3a70d9 MDL-44839 admin: Moved all system executable paths to config
AMOS BEGIN
 MOV ['gspath','assignfeedback_editpdf'],['pathtogs','admin']
 MOV ['gspath_help','assignfeedback_editpdf'],['pathtogs_help','admin']
AMOS END
2014-06-03 17:33:49 +08:00
Adam Olley 9f7674bddc MDL-44822 assignfeedback_editpdf: Stop test generation in is_enabled()
This change also moves one of the checks in test_gs_path. If
generateimage is false, there's no need to stat for the fixture file.
2014-03-27 10:16:53 +10:30
Damyon Wiese ac2b4ffc8c MDL-43593 Assign editpdf: More robust handling of errors from TCPDF.
This includes a check to see if there are 0 pages in the combined pdf,
catching exceptions and suppressing php warnings and errors from bad pdf files.

Also - Use TCPDF directly to check if pdfs are compatible. The previous check was
letting dodgy PDFs through which then failed at generation time. This way dodgy
pdfs will get run through ghostscript early and cleaned up.
2014-01-24 16:16:38 +08:00
Eloy Lafuente (stronk7) 1f71f7685a Merge branch 'MDL-43025-master' of git://github.com/damyon/moodle 2013-12-17 22:58:51 +01:00
Damyon Wiese 4fe9950ba6 MDL-43025 EditPDF: Increase memory limit when reading source pdfs. 2013-12-09 12:58:40 +08:00
Damyon Wiese 1f738c8c0c MDL-43074 assignfeedback_editpdf: Use escapeshellarg for all args in exec command.
This is to fix a reported problem with windows compatibility (e.g. when ghostscript is installed in
a folder with spaces in the name).
2013-12-09 10:52:35 +08:00
Rajesh Taneja baf881b803 MDL-42799 Assignment: Min. width/height for widget is set to 1
It was possible for user to add widgets with width/height = 0
which were not displayed to user and doesn't have much meaning to it
This patch will set min. width/height to 1
2013-11-12 16:17:40 +08:00
Damyon Wiese 1d38083c9d MDL-42402 EditPDF: Make the colours match the mockup in MDL-41633 2013-11-05 14:49:06 +08:00
Petr Škoda 0c431257e9 MDL-42387 standardise file lifetime handling 2013-11-01 10:42:18 +01:00
Dan Poltawski 9092378ddb MDL-42240 assignfeedback_editpdf: improve ghostscript debugging 2013-10-10 13:55:46 +08:00
Damyon Wiese 5c3864723a MDL-42023 assign: Edit PDF plugin - Damyon's contributions 2013-10-03 09:30:32 +08:00