Bug#1006909: impressive: Fails to find any pages in the presentation
Hi Gunnar, thanks for the analysis, and thanks for confirming that mupdf-tools was indeed missing. Anyway, I think there is a slight misunderstanding about which external tool Impressive requires: For *analysis* (i.e. checking how many pages there are, extracting hyperlinks etc.), Impressive needs "mutool" from mupdf-tools or "pdftk" from pdftk-java(*). For *rendering* (i.e. converting PDF pages to bitmaps), Impressive needs "mutool" from mupdf-tools or "pdftoppm" from poppler-utils. So, pdftk is in no way involved in how the slides look on screen, while mutool serves double duty for analysis and rendering. I can confirm impressive works with my presentation (although the rendering looks a bit less polished) after installing mupdf-tools. That's interesting. Can you upload a pair of example screenshots and/or an affected document somewhere? In my testing, I've always found MuPDF's results to be equal (and sometimes even superior) to Poppler's. You are, in fact, the first user who complains about the rendering quality, and I'd like to understand what's going on. I think the result for having both installed should be to default for the best renderer. That's exactly what it does :) Impressive picks MuPDF over Poppler because of two reasons: (a) it's faster, and (b) it doesn't require temporary files. That being said, you don't need to uninstall anything to force Impressive to use a specific renderer, as there's a command-line option to override the renderer: "-P mutool" uses MuPDF, "-P pdftoppm" uses Poppler, "-P gs" uses GhostScript. Best regards, Martin Fiedler (*) As said a few mails back, there is one -- optional -- feature that still requires pdftk(-java), and that's extraction of the page titles. If you don't need that, but have mupdf-tools, you can get rid of pdftk-java. This restriction will possibly vanish sonn, because literally an hour *after* I released 0.13.1, a user informed me that mutool can indeed also extract page titles if you ask nicely ...
Bug#1006909: impressive: Fails to find any pages in the presentation
Yaroslav Halchenko dijo [Mon, Mar 21, 2022 at 09:08:34AM -0400]: > > > Hmmm... But please do take note that I _did_ have mupdf-tools > > > installed when Impressive failed to analyze the PDF > > > document. > > > Did you though? Impressive detected "Poppler/Xpdf" as the renderer, > > which is an indicator of the absence of mupdf-tools. If you can confirm > > that "mutool -v" works on your system (in the sense of: prints a version > > number instead of a "command not found" message), I'd have some homework > > to do though ;) > > Dear Gunnar, > > Could you please confirm that mupdf-tools were installed and > functioning? I know that sounds implausible given that it is a hard > dependency but having no pdftk{,-java} installed I was able to use > impressive just fine. I am writing finally from the computer I regularly use for my classes -- I did have mupdf, but *not* mupdf-tools. I can confirm impressive works with my presentation (although the rendering looks a bit less polished) after installing mupdf-tools. Ugh -- and the ugly rendering remains even if I install pdftk-java (that is, it seems that having both installed in the system, impressive will default to mupdf-tools?); I got back my "nice" rendering only after purging mupdf-tools. So: - with mupdf-tools 1.19.0+ds1-2 and pdftk-java 3.2.2-1: - Rendering is ugly - Impressive reports: Welcome to Impressive version 0.13.0-beta2 (SVN r298) pygame 1.9.6 Hello from the pygame community. https://www.pygame.org/contribute.html PDF renderer: MuPDF 1.4 or newer OpenGL renderer: FD630 - with mupdf-tools 1.19.0+ds1-2 and pdftk-java 3.2.2-1: - Rendering is nicer - Impressive reports: Welcome to Impressive version 0.13.0-beta2 (SVN r298) pygame 1.9.6 Hello from the pygame community. https://www.pygame.org/contribute.html PDF renderer: Xpdf/Poppler OpenGL renderer: FD630 - with mupdf-tools 1.19.0+ds1-2 and pdftk-java uninstalled: - Rendering is ugly - Impressive reports: Welcome to Impressive version 0.13.0-beta2 (SVN r298) pygame 1.9.6 Hello from the pygame community. https://www.pygame.org/contribute.html PDF renderer: MuPDF 1.4 or newer pdftkParse() FAILED OpenGL renderer: FD630 - with both mupdf-tools and pdftk-java uninstalled: - No rendering - Impressive reports: Welcome to Impressive version 0.13.0-beta2 (SVN r298) pygame 1.9.6 Hello from the pygame community. https://www.pygame.org/contribute.html PDF renderer: Xpdf/Poppler pdftkParse() FAILED WARNING: The input file `/home/gwolf/vcs/sistemas_operativos/laminas/08_algoritmos_planif_proc.pdf' could not be analyzed. The presentation doesn't have any pages, quitting. I think the result for having both installed should be to default for the best renderer. If none are available, of course, impressive should fail -- but the message it conveys is quite cryptic (it does not say the renderer is not there; in fact, it points at xpdf/poppler. Why does it fail?) But more than impressive's message... if either pdftk-java or mupdf-tools are required for impressive to be useful, they should be declared as alternative dependencies (defaulting to... well, that's your criteria ). Thanks!
Bug#1006909: impressive: Fails to find any pages in the presentation
On Tue, 15 Mar 2022, Martin Fiedler wrote: > Hi Gunnar, > > Hmmm... But please do take note that I _did_ have mupdf-tools > > installed when Impressive failed to analyze the PDF > > document. > Did you though? Impressive detected "Poppler/Xpdf" as the renderer, > which is an indicator of the absence of mupdf-tools. If you can confirm > that "mutool -v" works on your system (in the sense of: prints a version > number instead of a "command not found" message), I'd have some homework > to do though ;) Dear Gunnar, Could you please confirm that mupdf-tools were installed and functioning? I know that sounds implausible given that it is a hard dependency but having no pdftk{,-java} installed I was able to use impressive just fine. or Martin -- did you do some homework and figured smth out which is now released? Cheers, -- Yaroslav O. Halchenko Center for Open Neuroscience http://centerforopenneuroscience.org Dartmouth College, 419 Moore Hall, Hinman Box 6207, Hanover, NH 03755 WWW: http://www.linkedin.com/in/yarik
Bug#1006909: impressive: Fails to find any pages in the presentation
Hi Gunnar, Hmmm... But please do take note that I _did_ have mupdf-tools installed when Impressive failed to analyze the PDF document. Did you though? Impressive detected "Poppler/Xpdf" as the renderer, which is an indicator of the absence of mupdf-tools. If you can confirm that "mutool -v" works on your system (in the sense of: prints a version number instead of a "command not found" message), I'd have some homework to do though ;) mupdf-tools is already a hard dependency: $ apt show impressive|egrep '^(Recom|Dep|Sug)' Depends: python3, python3-pygame, python3-pil, mupdf-tools (>= 1.5) | poppler-utils Unfortunately, it's not (yet?) a hard dependency -- mutool (from mupdf-tools) *or* pdftoppm (from poppler-utils) is. If you had installed poppler-utils previously and install Impressive, the way the dependencies are currently set up, apt won't pull in mupdf-tools because the dependency is already satisfied by poppler-utils. Best regards, Martin Fiedler
Bug#1006909: impressive: Fails to find any pages in the presentation
Martin Fiedler dijo [Tue, Mar 15, 2022 at 10:28:15PM +0100]: > It's a little more complicated. > > For *analyzing* the pages, Impressive requires mupdf-tools | pdftk-java. > pdftk-java is slightly preferred, because it's required for extracting > page titles. Basic page display and hyperlink navigation works with just > mupdf-tools though. > > For *rendering* the PDF to bitmaps, Impressive requires. mupdf-tools | > poppler-utils, with a preference for mupdf-tools. > > In other words, mupdf-tools alone gives you most of the functionality. > pdftk is, in that sense, only used for a small, not mission-critical > feature (title extraction) at this point. Hmmm... But please do take note that I _did_ have mupdf-tools installed when Impressive failed to analyze the PDF document. mupdf-tools is already a hard dependency: $ apt show impressive|egrep '^(Recom|Dep|Sug)' Depends: python3, python3-pygame, python3-pil, mupdf-tools (>= 1.5) | poppler-utils Recommends: mplayer, ffmpeg, perl, xdg-utils Suggests: ghostscript, latex-beamer, pdftk Greetings,
Bug#1006909: impressive: Fails to find any pages in the presentation
Hi Gunnar and Yaroslav, Please refresh my mind -- is pdftk a strict requirement now for impressive or should still be optional, whenever mupdf-tools (>= 1.5) | poppler-utils would be the tools to require? Gunnar reports that without pdftk he had no luck seeing a presentation. It's a little more complicated. For *analyzing* the pages, Impressive requires mupdf-tools | pdftk-java. pdftk-java is slightly preferred, because it's required for extracting page titles. Basic page display and hyperlink navigation works with just mupdf-tools though. For *rendering* the PDF to bitmaps, Impressive requires. mupdf-tools | poppler-utils, with a preference for mupdf-tools. In other words, mupdf-tools alone gives you most of the functionality. pdftk is, in that sense, only used for a small, not mission-critical feature (title extraction) at this point. I'm not sure how to translate that into Debian dependencies though. Theoretically, it would be something like "Depends: mupdf-tools | poppler-utils, pdftk-java | mupdf-tools; Suggests: pdftk-java", but I don't know if mentioning the same package twice in Depends is OK, or if a package can be both a dependency and a suggestion. (Also, it's debatable whether pdftk should be a recommendation instead of a suggestion, but I can remember having had this discussion already, and we decided for a suggestion in order to not pull in a whole Java installation by default, so let's keep it at that. perl should definitely be relegated from recommendation to suggestion status though.) The easiest solution certainly would be to make mupdf-tools a hard dependency (i.e. remove the poppler-utils alternative) and call it a day. Best regards, Martin Fiedler
Bug#1006909: impressive: Fails to find any pages in the presentation
Thank you Gunnar. Dear Martin, Please refresh my mind -- is pdftk a strict requirement now for impressive or should still be optional, whenever mupdf-tools (>= 1.5) | poppler-utils would be the tools to require? Gunnar reports that without pdftk he had no luck seeing a presentation. Cheers, On Mon, 07 Mar 2022, Gunnar Wolf wrote: > Package: impressive > Version: 0.13.0~beta2-2 > Severity: important > Tags: patch > Whenever I try to open a PDF presentation with impressive, I get the > following error message: > Welcome to Impressive version 0.13.0-beta2 (SVN r298) > pygame 1.9.6 > Hello from the pygame community. https://www.pygame.org/contribute.html > Detected screen size: 1920x1080 pixels > PDF renderer: Xpdf/Poppler > pdftkParse() FAILED > WARNING: The input file `/tmp/testfile.pdf' could not be analyzed. > The presentation doesn't have any pages, quitting. > Do note that I am running this on ARM64, and using Wayland. > And... Oh! This seems to be due to a missing dependency! I was > checking through the list of versions of depends/recommends/suggests > (am not running reportbug from the affected system), and turns out > that installing pdftk (or rather, pdftk-java, as pdftk is now just a > transitional package) fixes the issue. Just for completeness sake, the > PDF renderer is still marked to be Xpdf/Poppler, but now it reports > "OpenGL renderer: FD630" and... works! :-D > -- System Information: > Debian Release: bookworm/sid > APT prefers unstable > APT policy: (500, 'unstable') > Architecture: arm64 > Kernel: Linux 5.16.0-3-amd64 (SMP w/8 CPU threads; PREEMPT) > Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), > LANGUAGE=en_US:en > Shell: /bin/sh linked to /usr/bin/dash > Init: systemd (via /run/systemd/system) > LSM: AppArmor: enabled > Versions of packages impressive depends on: > ii poppler-utils 20.09.0-3.1 > ii python3 3.9.8-1 > ii python3-pil 9.0.1-1 > pn python3-pygame 1.9.6+dfsg-5 > Versions of packages impressive recommends: > ii ffmpeg 7:4.3.1-3+b2 > ii mplayer2:1.4+ds1-1+b1 > ii perl 5.34.0-3 > ii xdg-utils 1.1.3-4.1 > Versions of packages impressive suggests: > ii ghostscript 9.55.0~dfsg-3 > pn latex-beamer > pn pdftk > diff --git a/debian/control b/debian/control > index 12a1a9d..981c495 100644 > --- a/debian/control > +++ b/debian/control > @@ -28,13 +28,13 @@ Depends: python3, > python3-pygame, > python3-pil, > mupdf-tools (>= 1.5) | poppler-utils, > + pdftk-java, > Recommends: mplayer, > ffmpeg, > perl, > xdg-utils > Suggests: ghostscript, >latex-beamer, > - pdftk, > Conflicts: keyjnote (<< 0.10.2r-0) > Provides: keyjnote > Replaces: keyjnote (<< 0.10.2r-0) -- Yaroslav O. Halchenko Center for Open Neuroscience http://centerforopenneuroscience.org Dartmouth College, 419 Moore Hall, Hinman Box 6207, Hanover, NH 03755 WWW: http://www.linkedin.com/in/yarik signature.asc Description: PGP signature
Bug#1006909: impressive: Fails to find any pages in the presentation
Package: impressive Version: 0.13.0~beta2-2 Severity: important Tags: patch Whenever I try to open a PDF presentation with impressive, I get the following error message: Welcome to Impressive version 0.13.0-beta2 (SVN r298) pygame 1.9.6 Hello from the pygame community. https://www.pygame.org/contribute.html Detected screen size: 1920x1080 pixels PDF renderer: Xpdf/Poppler pdftkParse() FAILED WARNING: The input file `/tmp/testfile.pdf' could not be analyzed. The presentation doesn't have any pages, quitting. Do note that I am running this on ARM64, and using Wayland. And... Oh! This seems to be due to a missing dependency! I was checking through the list of versions of depends/recommends/suggests (am not running reportbug from the affected system), and turns out that installing pdftk (or rather, pdftk-java, as pdftk is now just a transitional package) fixes the issue. Just for completeness sake, the PDF renderer is still marked to be Xpdf/Poppler, but now it reports "OpenGL renderer: FD630" and... works! :-D -- System Information: Debian Release: bookworm/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: arm64 Kernel: Linux 5.16.0-3-amd64 (SMP w/8 CPU threads; PREEMPT) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages impressive depends on: ii poppler-utils 20.09.0-3.1 ii python3 3.9.8-1 ii python3-pil 9.0.1-1 pn python3-pygame 1.9.6+dfsg-5 Versions of packages impressive recommends: ii ffmpeg 7:4.3.1-3+b2 ii mplayer2:1.4+ds1-1+b1 ii perl 5.34.0-3 ii xdg-utils 1.1.3-4.1 Versions of packages impressive suggests: ii ghostscript 9.55.0~dfsg-3 pn latex-beamer pn pdftk diff --git a/debian/control b/debian/control index 12a1a9d..981c495 100644 --- a/debian/control +++ b/debian/control @@ -28,13 +28,13 @@ Depends: python3, python3-pygame, python3-pil, mupdf-tools (>= 1.5) | poppler-utils, +pdftk-java, Recommends: mplayer, ffmpeg, perl, xdg-utils Suggests: ghostscript, latex-beamer, - pdftk, Conflicts: keyjnote (<< 0.10.2r-0) Provides: keyjnote Replaces: keyjnote (<< 0.10.2r-0)