dannyedel / dspdfviewer

Dual-Screen PDF Viewer for latex-beamer
http://dspdfviewer.danny-edel.de
GNU General Public License v2.0
218 stars 27 forks source link

*.jpg files not displayed within the PDF compiled with beamer latex #99

Closed srocheepfl closed 8 years ago

srocheepfl commented 8 years ago

Hi,

I have jpg files within my beamer presentation. After compiling, they are in the PDF files. But when using Dual-Screen PDF viewer, they are not displayed both on the preview and the slides. Does it need any setting to solve the problem?

Best.

dannyedel commented 8 years ago

Hi,

dspdfviewer does not require anything special to render images included in the PDF. I tried to create a minimal testcase which does render (see screenshot below, ~260kb) on my system.

Please try rendering (and rebuilding) the testcase aswell and see if that works (it may be an issue with your presentation, not with dspdfviewer) Please make sure to call use pdflatex directly, calling latex -> dvi2pdf (or similar) will not work correctly with jpeg images. Please also try to rebuild the testcase to ensure your LaTeX installation is allright.

If the problem is in dspdfviewer, please include the following information to help me reproduce the issue:

2015-11-19-094253_3200x1200_scrot

srocheepfl commented 8 years ago

Hi,

Thank you for your fast answer. Even with your documents, it doesn’t work. I can compile your latex file. I get the same PDF than you with the picture inside. When launching with dspdfviewer, no picture in the “file”.

Best regards.

Steph

dannyedel commented 8 years ago

Okay, this sounds like a genuine bug in dspdfviewer. I will do my best to reproduce and then fix.

@srocheepfl Do you remember which version you downloaded (v1.13.1 Qt5 / Duplication of audience screen / German translation pre-release) from the windows binaries?

@projekter: Can you check whether this is a windows-specific (or even, windows-8.1-specific) bug?

projekter commented 8 years ago

It seems to be Windows-specific. I have just tested the PDF. There is no JPG displayed; after that, I tried the old Qt4 version. In this, the JPG is shown. As soon as I have time, I will have a look into it. There are several possibilities. Perhaps it is a bug or misconfiguration in turbojpeg, which I used for compiling the Qt5 version. I will give it a try using the normal jpeg library.

dannyedel commented 8 years ago

@projekter Thanks for checking this out so quickly! The qt4 version should allow @srocheepfl to get some work done while we solve the problem. Good thing github doesn't delete old binaries : )

I will also create a regression test for this, to automatically detect if it ever breaks again.

srocheepfl commented 8 years ago

These are the versions I have been tested with the same bug:

v1.14-335-g9bd0175https://github.com/projekter/dspdfviewer/tree/v1.14-335-g9bd0175 v1.13-218-g83eb2d8

It’s working fine with v1.13-38-g290aed9.

dannyedel commented 8 years ago

@projekter: I have added a regression test to master, so this kind of thing can be caught in the future.

Once you have some time, could you git rebase the windows port against the current master, and verify that runningmake test (or ctest --output-on-failure for more detailed output) detects the image rendering failure?

projekter commented 8 years ago

I managed to track down the problem to one of the jpeg dependencies. Compiling without turbojpeg and OpenJPEG (using the unmaintained internal DCT and JPX decoder of poppler) displays the images properly. I don't think OpenJPEG is the problem but turbojpeg. I think I can fix the problem today.

projekter commented 8 years ago

Confirmed, problem is solved in #118. libjpeg/turbojpeg (I tried both and also older versions of libjpeg) triggered the problem. I found no proper solution (not even a reason), this will require some more work. But compiling poppler without libjpeg works, although not recommended. And the pictures are shown.

projekter commented 7 years ago

Finally, after lots of investigations, I can at least provide a more detailed description when the problem happens and why: