poppler issueshttps://gitlab.freedesktop.org/poppler/poppler/-/issues2024-01-01T12:58:10Zhttps://gitlab.freedesktop.org/poppler/poppler/-/issues/1453Text fails to display in Cairo backend but it's ok in Okular and Acrobat Reader2024-01-01T12:58:10ZNelson Benítez LeónText fails to display in Cairo backend but it's ok in Okular and Acrobat ReaderThe attached PDF (created by Acrobat Distiller 6.0 in Windows) shows fine in Okular and Acrobat Reader, but Evince and Poppler Cairo backend (pdftocairo) fails to display very large portions of text, it seems something related to the fon...The attached PDF (created by Acrobat Distiller 6.0 in Windows) shows fine in Okular and Acrobat Reader, but Evince and Poppler Cairo backend (pdftocairo) fails to display very large portions of text, it seems something related to the fonts embedded.
[bug168518.pdf](/uploads/e7ca4a22af14e4579caeedf6f9856899/bug168518.pdf)https://gitlab.freedesktop.org/poppler/poppler/-/issues/1452pdfimages -png and -tiff give inverted colour output2023-12-30T14:09:36ZShriramana Sharmapdfimages -png and -tiff give inverted colour outputPlease download the attachment which is just the first page from https://archive.org/details/wg224 (to avoid huge download). This contains black text on white background.
Run the commands:
```
pdfimages -png p.pdf q
pdfimages -tiff p.p...Please download the attachment which is just the first page from https://archive.org/details/wg224 (to avoid huge download). This contains black text on white background.
Run the commands:
```
pdfimages -png p.pdf q
pdfimages -tiff p.pdf r
pdfimages -all p.pdf s
fax2tiff -o s-000.tif $(< s-000.params) s-000.ccitt
```
We can see that the files q-000.png and r-000.tif display the colours inverted ie white text on black background whereas going to CCITT and then to TIF gives the correct output.
Please look into this and fix it. Thank you!
Attachment:
[p.pdf](/uploads/5b253d8d62460aa22c9ac8a3d8b1d00a/p.pdf)https://gitlab.freedesktop.org/poppler/poppler/-/issues/1451pdf to svg shows raster lines (clippaths)2024-01-02T16:14:59Zrvanderboompdf to svg shows raster lines (clippaths)Hey,
we like to use pdftocairo -svg for our pdf to svg conversion, but some material that exists of images concatted to 1 images via clippath , show raster lines where the seperate images connect.
Some other paid tools do not do this an...Hey,
we like to use pdftocairo -svg for our pdf to svg conversion, but some material that exists of images concatted to 1 images via clippath , show raster lines where the seperate images connect.
Some other paid tools do not do this and show as it is visible in pdf.
Added the materal and the svg result.
[HFD_20231216_0_005_HI.pdf](/uploads/e3e430b97bed774cf0519ec386875a4e/HFD_20231216_0_005_HI.pdf)
[HFD_20231216_0_005_HI.svg](/uploads/9a3a1197942d9fa55de206ec3a896d9b/HFD_20231216_0_005_HI.svg)https://gitlab.freedesktop.org/poppler/poppler/-/issues/1450pdftocairo -pdf causes font errors that did not exist2023-12-14T22:24:28ZHakan Usaklipdftocairo -pdf causes font errors that did not existThe provided sample is a 1 page pdf without any errors in Adobe Acrobat.
[input.pdf](/uploads/e3ac808e1c5470a974e195224741cba6/input.pdf)
After processing on Windows with Poppler version 23.11.0
`pdftocairo.exe -pdf "c:\temp\input.pdf" ...The provided sample is a 1 page pdf without any errors in Adobe Acrobat.
[input.pdf](/uploads/e3ac808e1c5470a974e195224741cba6/input.pdf)
After processing on Windows with Poppler version 23.11.0
`pdftocairo.exe -pdf "c:\temp\input.pdf" "c:\temp\output.pdf"`
and checking the file in Adobe Acrobat, the following error message is introduced
![image](/uploads/1eeb6dc53c2d9d8fa93847e553fe49e6/image.png)
For your information and Best Regardshttps://gitlab.freedesktop.org/poppler/poppler/-/issues/1449Avoiding symbol clashes2024-02-12T23:28:33ZKai PastorAvoiding symbol clashesAn extended vcpkg CI run with paraview using vtk using gdal using poppler run into linker errors due `Parser::~Parser` being defined both in Paraview and in Poppler. This is just one class name to be concerned about. There is also Array,...An extended vcpkg CI run with paraview using vtk using gdal using poppler run into linker errors due `Parser::~Parser` being defined both in Paraview and in Poppler. This is just one class name to be concerned about. There is also Array, Dict, etc. What is the preferred solution:
- Moving the classes to a namespace, e.g. `Poppler`.
- Adding a prefix similar to `GooString`, i.e. `Goo...`.
- Adjust as needed vs. moving all private classes vs. moving all classes.
This will change ABI, and it won't be entirely source compatible. (It is possible to import the classes into the global namespace using `using ...`, but at least forward declarations must be changed. Macros might provide additional help, a la QT_BEGIN_NAMESPACE.)https://gitlab.freedesktop.org/poppler/poppler/-/issues/1448[skia] FTBFS on Android with Fontconfig font manager2023-12-10T22:55:21ZJonLiu1993[skia] FTBFS on Android with Fontconfig font managerWhe I update port poppler version to [23.11.0](https://github.com/microsoft/vcpkg/pull/35494) I get this error:
````
CMakeFiles/poppler.dir/poppler/GlobalParams.cc.o -c /mnt/vcpkg-ci/buildtrees/poppler/src/er-23.11.0-08ca2759be.clean/pop...Whe I update port poppler version to [23.11.0](https://github.com/microsoft/vcpkg/pull/35494) I get this error:
````
CMakeFiles/poppler.dir/poppler/GlobalParams.cc.o -c /mnt/vcpkg-ci/buildtrees/poppler/src/er-23.11.0-08ca2759be.clean/poppler/GlobalParams.cc
/mnt/vcpkg-ci/buildtrees/poppler/src/er-23.11.0-08ca2759be.clean/poppler/GlobalParams.cc:1563:5: error: use of undeclared identifier 'displayFontDir'; did you mean 'displayFontDirs'?
displayFontDir = fontDir;
^~~~~~~~~~~~~~
displayFontDirs
/mnt/vcpkg-ci/buildtrees/poppler/src/er-23.11.0-08ca2759be.clean/poppler/GlobalParams.cc:1379:20: note: 'displayFontDirs' declared here
static const char *displayFontDirs[] = { "/usr/share/ghostscript/fonts", "/usr/local/share/ghostscript/fonts", "/usr/share/fonts/default/Type1", "/usr/share/fonts/default/ghostscript", "/usr/share/fonts/type1/gsfonts", nullptr };
^
/mnt/vcpkg-ci/buildtrees/poppler/src/er-23.11.0-08ca2759be.clean/poppler/GlobalParams.cc:1563:20: error: array type 'const char *[6]' is not assignable
displayFontDir = fontDir;
````
I see that displayFontDir is declared earlier in the file, so I don't know why I'm getting this error.
https://gitlab.freedesktop.org/poppler/poppler/-/blob/master/poppler/GlobalParams.cc?ref_type=heads#L1278
````
// The path to the font directory. Set by GlobalParams::setFontDir()
static std::string displayFontDir;
````https://gitlab.freedesktop.org/poppler/poppler/-/issues/1446Font selection (okular)2023-12-13T22:39:32ZAlbert WikFont selection (okular)I'm using poppler as part of the okular application, and I'm having problems getting it to select the right fonts.
To reproduce the issue, download and open the following PDF:
https://gwern.net/doc/psychology/personality/psychopathy/194...I'm using poppler as part of the okular application, and I'm having problems getting it to select the right fonts.
To reproduce the issue, download and open the following PDF:
https://gwern.net/doc/psychology/personality/psychopathy/1941-cleckley-maskofsanity.pdf
Note: make sure you have the relevant fonts installed.
Here is a screenshot from okular:
https://drive.google.com/file/d/178nuOFvWiBOoqmSIs7spAqDrGt2YHAqQ/view
The fonts "CourierNew" and "TimesNewRoman" are installed on the system, but poppler substitutes "NimbusMonoPS" and "Times Roman".
fontconfig appears to be correctly configured:
```
$ fc-match "CourierNew"
cour.ttf: "Courier New" "Regular"
$ fc-match "TimesNewRoman"
times.ttf: "Times New Roman" "Regular"
```https://gitlab.freedesktop.org/poppler/poppler/-/issues/1444Undeprecate `poppler_document_new_from_data` and fix its API.2023-11-18T11:50:01ZFabian KeßlerUndeprecate `poppler_document_new_from_data` and fix its API.Poppler is not used only from C, when using poppler from C++ or rust, the memory is mostly managed indirectly via containers.
Passing data from a C++ container is now very cumbersome.
This on top also applies to data from a memory mapped...Poppler is not used only from C, when using poppler from C++ or rust, the memory is mostly managed indirectly via containers.
Passing data from a C++ container is now very cumbersome.
This on top also applies to data from a memory mapped file.
Therefore, I propose to undeprecate it and to fix its API to something like this:
```
PopplerDocument *
poppler_document_new_from_data (const char *data,
ptrdiff_t length,
const char *password,
GError **error);
```https://gitlab.freedesktop.org/poppler/poppler/-/issues/1443PDF generated of a webpage by Safari renders with a fault, but Firefox and Ap...2023-11-14T19:24:30ZRoland CheePDF generated of a webpage by Safari renders with a fault, but Firefox and Apple's Preview displays correctly.I used Safari's print dialog's PDF option to print a [website](https://apple.stackexchange.com/questions/435946/how-can-i-point-gcc-and-g-to-the-gnu-compiler-collection) to PDF.
Zathura 0.5.2 (Girara 0.4.0) with pdf-poppler plugin (0.3....I used Safari's print dialog's PDF option to print a [website](https://apple.stackexchange.com/questions/435946/how-can-i-point-gcc-and-g-to-the-gnu-compiler-collection) to PDF.
Zathura 0.5.2 (Girara 0.4.0) with pdf-poppler plugin (0.3.0), does not show "Ask Different", instead, it shows "Ask D".
![Screen_Shot_2023-11-12_at_1.59.32_pm](/uploads/da809285d668be7f71e8d7f2daa1e2dd/Screen_Shot_2023-11-12_at_1.59.32_pm.png)
Both Apple's Preview and Firefox PDF viewer shows "Ask Different" correctly.[Ask_Different_-_Safari_Print_PDF.pdf](/uploads/32c5f35d855260b2f50dc60a00a60239/Ask_Different_-_Safari_Print_PDF.pdf)
After this, I used Firefox's print dialog to save a PDF of the same website. The generated PDF looks different but "Ask Different" can be seen correctly in all: Apple's Preview, Firefox's PDF viewer, and Zathura.
Whatever is the problem with the Safari-generated PDF, I hope Poppler will render the correct image just like firefox did.https://gitlab.freedesktop.org/poppler/poppler/-/issues/1441/poppler/CairoOutputDev.cc:1943: Segmentation fault2023-10-24T12:58:31Z刘文/poppler/CairoOutputDev.cc:1943: Segmentation faultversion:23.09.0
My system OS:Ubuntu 20.04<br>
reproduce:pdftocairo -png poc.pdf output.png<br>
The stack information is as follows:<br>
Program received signal SIGSEGV, Segmentation fault.<br>
0x000000000041f8cd in CairoOutputDev::setS...version:23.09.0
My system OS:Ubuntu 20.04<br>
reproduce:pdftocairo -png poc.pdf output.png<br>
The stack information is as follows:<br>
Program received signal SIGSEGV, Segmentation fault.<br>
0x000000000041f8cd in CairoOutputDev::setSoftMask (this=0x67a500, state=<optimized out>, bbox=<optimized out>, alpha=<optimized out>, transferFunc=
0x6ad970, backdropColor=<optimized out>) at /Oscar01/liujiahao/poppler-master/poppler/CairoOutputDev.cc:1943
1943 source_data[y * stride + x] = lum << 24;
(gdb) bt<br>
#0 0x000000000041f8cd in CairoOutputDev::setSoftMask (this=0x67a500, state=<optimized out>, bbox=<optimized out>, alpha=<optimized out>,
transferFunc=0x6ad970, backdropColor=<optimized out>) at /Oscar01/liujiahao/poppler-master/poppler/CairoOutputDev.cc:1943<br>
#1 0x00007ffff7a848b1 in Gfx::doSoftMask (this=this@entry=0x68aab0, str=<optimized out>, str@entry=0x7fffffffdbd0, alpha=<optimized out>,
blendingColorSpace=0x0, isolated=<optimized out>, knockout=<optimized out>, transferFunc=<optimized out>, backdropColor=<optimized out>)
at /Oscar01/liujiahao/poppler-master/poppler/Gfx.cc:1289<br>
#2 0x00007ffff7a7a9af in Gfx::opSetExtGState (this=0x68aab0, args=0x7fffffffdd70, numArgs=<optimized out>)
at /Oscar01/liujiahao/poppler-master/poppler/Gfx.cc:1161<br>
#3 0x00007ffff7a82a70 in Gfx::go (this=this@entry=0x68aab0, topLevel=false) at /Oscar01/liujiahao/poppler-master/poppler/Gfx.cc:685<br>
#4 0x00007ffff7a82508 in Gfx::display (this=this@entry=0x68aab0, obj=0x7fffffffe238, obj@entry=0x3ff0000000000000, topLevel=false)
at /Oscar01/liujiahao/poppler-master/poppler/Gfx.cc:646<br>
#5 0x00007ffff7a84ebd in Gfx::drawForm (this=0x68aab0, str=0x3ff0000000000000, resDict=<optimized out>, matrix=<optimized out>, bbox=0x7fffffffe1c0,
transpGroup=<optimized out>, softMask=<optimized out>, blendingColorSpace=0x0,
isolated=<error reading variable: That operation is not available on integers of more than 8 bytes.>,
knockout=<error reading variable: That operation is not available on integers of more than 8 bytes.>, alpha=false, transferFunc=0x0,
backdropColor=0x0) at /Oscar01/liujiahao/poppler-master/poppler/Gfx.cc:4836<br>
#6 0x00007ffff7a94714 in Gfx::doForm (this=this@entry=0x68aab0, str=0x1, str@entry=0x7fffffffe238)
at /Oscar01/liujiahao/poppler-master/poppler/Gfx.cc:4766<br>
#7 0x00007ffff7a7225d in Gfx::opXObject (this=0x68aab0, args=<optimized out>, numArgs=<optimized out>)
at /Oscar01/liujiahao/poppler-master/poppler/Gfx.cc:4139<br>
#8 0x00007ffff7a82a70 in Gfx::go (this=this@entry=0x68aab0, topLevel=false) at /Oscar01/liujiahao/poppler-master/poppler/Gfx.cc:685<br>
#9 0x00007ffff7a82508 in Gfx::display (this=0x68aab0, obj=0x7fffffffe5e8, topLevel=true) at /Oscar01/liujiahao/poppler-master/poppler/Gfx.cc:646<br>
#10 0x00007ffff7b33d19 in Page::displaySlice (this=0x67dd00, out=<optimized out>, hDPI=<optimized out>, vDPI=<optimized out>, rotate=<optimized out>,
useMediaBox=<optimized out>, crop=<optimized out>, sliceX=<optimized out>, sliceY=<optimized out>, sliceW=<optimized out>, sliceH=<optimized out>,
printing=<optimized out>, abortCheckCbk=<optimized out>, abortCheckCbkData=<optimized out>, annotDisplayDecideCbk=<optimized out>,
annotDisplayDecideCbkData=<optimized out>, copyXRef=<optimized out>) at /Oscar01/liujiahao/poppler-master/poppler/Page.cc:584<br>
#11 0x00007ffff7b3cef8 in PDFDoc::displayPageSlice (this=<optimized out>, out=0x67a500, page=<optimized out>, hDPI=<optimized out>,
vDPI=<optimized out>, rotate=<optimized out>, useMediaBox=true, crop=false, printing=<optimized out>, sliceX=<optimized out>,
sliceY=<optimized out>, sliceW=<optimized out>, sliceH=<optimized out>, abortCheckCbk=<optimized out>, abortCheckCbkData=<optimized out>,
annotDisplayDecideCbk=<optimized out>, annotDisplayDecideCbkData=<optimized out>, copyXRef=<optimized out>)
at /Oscar01/liujiahao/poppler-master/poppler/PDFDoc.cc:633<br>
#12 0x000000000040ec1a in renderPage (doc=0x67d970, cairoOut=0x67a500, pg=1, page_w=612, page_h=792, output_w=<optimized out>, output_h=<optimized out>)
at /Oscar01/liujiahao/poppler-master/utils/pdftocairo.cc:705<br>
#13 main (argc=<optimized out>, argv=<optimized out>) at /Oscar01/liujiahao/poppler-master/utils/pdftocairo.cc:1243<br>
[poc.pdf](/uploads/22594304907875d1112122a5fd53b5e9/poc.pdf)https://gitlab.freedesktop.org/poppler/poppler/-/issues/1440pdfseparate poc.pdf output-%d.pdf:run out of all memory2023-10-07T05:32:32Z刘文pdfseparate poc.pdf output-%d.pdf:run out of all memoryversion:23.09.0
My system OS:Ubuntu 20.04
reproduce: pdfseparate poc.pdf output-%d.pdf
When I executed this test case, I ran out of over 200G of memory,I don't know if this is caused by a memory leak or other issue.[poc.pdf](/uploads/...version:23.09.0
My system OS:Ubuntu 20.04
reproduce: pdfseparate poc.pdf output-%d.pdf
When I executed this test case, I ran out of over 200G of memory,I don't know if this is caused by a memory leak or other issue.[poc.pdf](/uploads/d3d4cf8b52fc6a87250e0fdf32f373bf/poc.pdf)https://gitlab.freedesktop.org/poppler/poppler/-/issues/1437Pdftoppm "Bogus memory allocation size" with high resolution raster2023-09-22T11:53:57ZFrancisnei Bernardes LimaPdftoppm "Bogus memory allocation size" with high resolution rasterUsing Poppler v22.12.0 on Debian Debian GNU/Linux 12 (bookworm)
The following command will error with "Bogus memory allocation size":
pdftoppm -r 500 ~/pdftoppm_bogus_memory_allocation_size.pdf /tmp/bogus_mem
But decreasing the resolut...Using Poppler v22.12.0 on Debian Debian GNU/Linux 12 (bookworm)
The following command will error with "Bogus memory allocation size":
pdftoppm -r 500 ~/pdftoppm_bogus_memory_allocation_size.pdf /tmp/bogus_mem
But decreasing the resolution from 500 to 150, the command will complete correctly.
The pdf file is confidential, but I can send it to the interested developer.
Thank you very much!https://gitlab.freedesktop.org/poppler/poppler/-/issues/1435text selection is incorrect when close to some math symbols2023-12-15T12:21:40ZRehan MALAKtext selection is incorrect when close to some math symbolsFrom : https://github.com/vedang/pdf-tools/issues/237
**Describe the bug**
text selection is incorrect when close to some math symbols
**Evince:**
![evince.png](/uploads/dbbbcd022b02dc3645e509f026c96dd4/evince.png)
**Emacs pdf-view ...From : https://github.com/vedang/pdf-tools/issues/237
**Describe the bug**
text selection is incorrect when close to some math symbols
**Evince:**
![evince.png](/uploads/dbbbcd022b02dc3645e509f026c96dd4/evince.png)
**Emacs pdf-view :**
![pdfview.png](/uploads/720e35a60bcc370313fdf942ae881b10/pdfview.png)
**Steps to Reproduce the behaviour**
- <span dir="">`Download https://webusers.imj-prg.fr/~pierre.schapira/LectNotes/CatShv.pdf`</span>
- <span dir="">`Go to page 31`</span>
- <span dir="">`Impossible to select the word "coproduct" in the Definition 2.1.1 ii) when the mouse is over the word 'coproduct'`</span>
- <span dir="">`(it is possible by selecting on the next line, on the 'or' word)`</span>
**What is the expected behaviour?**
- <span dir="">`open https://webusers.imj-prg.fr/~pierre.schapira/LectNotes/CatShv.pdf- directly in Firefox or Okular`</span>
- <span dir="">`Go to page 31`</span>
- <span dir="">`select the word "coproduct" in the Definition 2.1.1 ii)`</span>
**Firefox :**
![firefox.png](/uploads/2a6bbe3a638ce0d333ba100fd1f136b9/firefox.png)
**Okular :**
![okular.png](/uploads/e11f3c19ff75fcdca9bfe9a89911ddde/okular.png)
**Versions :**
```plaintext
libpoppler-*/unstable,now 22.12.0-2+b1 amd64 [installed]
```
```plaintext
OS: Debian GNU/Linux trixie/sid
Emacs Version: GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.38, cairo version 1.16.0) of 2023-09-05
pdf-tools 20230611.239
Evince : GNOME Document Viewer 45.alpha
```https://gitlab.freedesktop.org/poppler/poppler/-/issues/1434The program seems to have fallen into a loop2023-09-10T00:15:58Z刘文The program seems to have fallen into a loopversion:23.08.0 <br>
My system OS:Ubuntu 20.04 <br>
reproduce: pdfdetach -saveall poc.pdf -o out/ <br>[poc.zip](/uploads/76c259146ba35809dd690de67d77fbda/poc.zip)version:23.08.0 <br>
My system OS:Ubuntu 20.04 <br>
reproduce: pdfdetach -saveall poc.pdf -o out/ <br>[poc.zip](/uploads/76c259146ba35809dd690de67d77fbda/poc.zip)https://gitlab.freedesktop.org/poppler/poppler/-/issues/1429Segmentation fault in genops.c2023-09-04T02:38:07Z刘文Segmentation fault in genops.cversion:23.08.0<br>
My system OS:Ubuntu 20.04<br>
reproduce: pdfseparate poc.pdf output-%d.pdf<br>
The stack information is as follows:<br>
Program received signal SIGSEGV, Segmentation fault.<br>
0x00007ffff7603fcc in __GI__IO_default_...version:23.08.0<br>
My system OS:Ubuntu 20.04<br>
reproduce: pdfseparate poc.pdf output-%d.pdf<br>
The stack information is as follows:<br>
Program received signal SIGSEGV, Segmentation fault.<br>
0x00007ffff7603fcc in __GI__IO_default_xsputn (f=0x7fffff7ff5c0, data=0x7ffff7ea6918, n=12) at genops.c:374<br>
374 genops.c: 没有那个文件或目录.<br>
(gdb) bt<br>
#0 0x00007ffff7603fcc in __GI__IO_default_xsputn (f=0x7fffff7ff5c0, data=0x7ffff7ea6918, n=12) at genops.c:374<br>
#1 0x00007ffff75e90fc in __vfprintf_internal (s=s@entry=0x7fffff7ff5c0, format=0x7ffff7ea68f2 "%s (%lld): %s\n", ap=0x7fffff801c80, mode_flags=<optimized out>)
at ../libio/libioP.h:948<br>
#2 0x00007ffff75ebea2 in buffered_vfprintf (s=s@entry=0x7ffff775f5c0 <_IO_2_1_stderr_>, format=format@entry=0x7ffff7ea68f2 "%s (%lld): %s\n",
args=args@entry=0x7fffff801c80, mode_flags=mode_flags@entry=0) at vfprintf-internal.c:2377<br>
#3 0x00007ffff75e8d24 in __vfprintf_internal (s=0x7ffff775f5c0 <_IO_2_1_stderr_>, format=0x7ffff7ea68f2 "%s (%lld): %s\n", ap=ap@entry=0x7fffff801c80,
mode_flags=mode_flags@entry=0) at vfprintf-internal.c:1346<br>
#4 0x00007ffff75d3c6a in __fprintf (stream=<optimized out>, format=<optimized out>) at fprintf.c:32<br>
#5 0x00007ffff7c496f6 in error (category=category@entry=errSyntaxError, pos=3374, msg=<optimized out>) at /Oscar01/liujiahao/poppler/poppler/Error.cc:73<br>
#6 0x00007ffff7d1c7df in Lexer::getObj (this=0x7fffff8023c0, objNum=-1) at /Oscar01/liujiahao/poppler/poppler/Lexer.cc:571<br>
#7 0x00007ffff7d3cc92 in Parser::shift (this=this@entry=0x7fffff8023c0, objNum=objNum@entry=-1) at /Oscar01/liujiahao/poppler/poppler/Parser.cc:356<br>
#8 0x00007ffff7d3bd20 in Parser::getObj (this=this@entry=0x7fffff8023c0, simpleOnly=false, fileKey=0x0, fileKey@entry=0x4365da68 "\260\317eC", encAlgorithm=cryptNone,
encAlgorithm@entry=cryptAES, keyLength=keyLength@entry=0, objNum=12, objGen=0, recursion=4, strict=<optimized out>, decryptString=<optimized out>)
at /Oscar01/liujiahao/poppler/poppler/Parser.cc:183<br>
#9 0x00007ffff7d3c088 in Parser::getObj (this=this@entry=0x7fffff8023c0, simpleOnly=<optimized out>, fileKey=<optimized out>, fileKey@entry=0x668c50 "",
encAlgorithm=<optimized out>, encAlgorithm@entry=cryptAES, keyLength=<optimized out>, keyLength@entry=0, objNum=<optimized out>, objGen=<optimized out>,
recursion=<optimized out>, strict=<optimized out>, decryptString=<optimized out>) at /Oscar01/liujiahao/poppler/poppler/Parser.cc:103<br>
#10 0x00007ffff7d3c372 in Parser::getObj (this=this@entry=0x7fffff8023c0, simpleOnly=<optimized out>, fileKey=<optimized out>, fileKey@entry=0x43643bc8 "\340\264eC",
encAlgorithm=<optimized out>, encAlgorithm@entry=cryptAES, keyLength=<optimized out>, keyLength@entry=0, objNum=<optimized out>, objGen=<optimized out>,
recursion=<optimized out>, strict=<optimized out>, decryptString=<optimized out>) at /Oscar01/liujiahao/poppler/poppler/Parser.cc:144<br>
#11 0x00007ffff7d3c088 in Parser::getObj (this=this@entry=0x7fffff8023c0, simpleOnly=<optimized out>, fileKey=<optimized out>,
fileKey@entry=0x7fff0000000d <error: Cannot access memory at address 0x7fff0000000d>, encAlgorithm=<optimized out>, encAlgorithm@entry=cryptAES,
keyLength=<optimized out>, keyLength@entry=0, objNum=<optimized out>, objGen=<optimized out>, recursion=<optimized out>, strict=<optimized out>,<br>
I have encountered similar issues in xpdf before, and the developer stated that's a loop in the PDF object structure, already assigned CVE-2019-9587.I'm not sure if this is the same reason[poc.pdf](/uploads/a5870f186ef8d2f5ec4309ab3d1048ae/poc.pdf)https://gitlab.freedesktop.org/poppler/poppler/-/issues/1426pdftotext -bbox-layout values are out of bounds2023-08-30T09:21:14ZFawaz Ahmedpdftotext -bbox-layout values are out of boundsThe bbox values are sometimes negative and sometimes more than the pagewidth/pageheight.
bbox values are generated using `pdftotext -bbox-layout` option.
[PDF 1](/uploads/e0c46bbb69592c1908618de96a7e12f5/1162c701-2aa3-4403-aed3-a08ce3e...The bbox values are sometimes negative and sometimes more than the pagewidth/pageheight.
bbox values are generated using `pdftotext -bbox-layout` option.
[PDF 1](/uploads/e0c46bbb69592c1908618de96a7e12f5/1162c701-2aa3-4403-aed3-a08ce3efefed.pdf) - Refer page 11, yMin is negative i.e `yMin="-10.000000"`
[PDF 2](/uploads/ebc079de54b652709a69e52cd0827b8d/cc2c817c-91d2-4600-9274-0b6ccc97921d.pdf) - Refer page 10, xMin is more than pageWidth i.e `pageWidth="612.000000"` and `xMin="647.143036"`
```
$ pdftotext -v
pdftotext version 23.06.0
Copyright 2005-2023 The Poppler Developers - http://poppler.freedesktop.org
Copyright 1996-2011, 2022 Glyph & Cog, LLC
```https://gitlab.freedesktop.org/poppler/poppler/-/issues/1425pdftotext sometimes moves superscript to the previous line2023-08-29T22:37:13ZVincent Lefevrepdftotext sometimes moves superscript to the previous lineThe `pdftotext` utility sometimes moves superscript to the previous line. Consider the following [text.pdf](/uploads/80db40445007b87d3d706e470dbbdd9c/text.pdf) file. On one line, one has "[...] texte... 4 texte [...]". On the next line, ...The `pdftotext` utility sometimes moves superscript to the previous line. Consider the following [text.pdf](/uploads/80db40445007b87d3d706e470dbbdd9c/text.pdf) file. On one line, one has "[...] texte... 4 texte [...]". On the next line, one has "[...] que a² < A,", with the superscript "2" below the "4" (and a bit on the left).
`pdftotext` generates:
```
√texte texte... 24 texte texte texte texte (texte texte texte
t). Texte texte texte texte texte texte A telle que a < A,
```
i.e. it moves the superscript "2" just before the "4".
Note that since the superscript "2" is strictly below the "4" in the PDF rendering, there shouldn't be any ambiguity in the interpretation of the text.
This is under Debian with poppler-utils 22.12.0-2.https://gitlab.freedesktop.org/poppler/poppler/-/issues/1421[Feature Request/glib] access to Trigger Event Actions2023-08-13T22:31:40Zalbrechtd[Feature Request/glib] access to Trigger Event ActionsThe standard PDF 32000-1:2008, section 12.6.3 “Trigger Events”, defines actions which can be bound to e.g. focus events of form input elements. See the attached simple [example](/uploads/15531f98db66da3246c86d4d4cfef3ff/Test.pdf) which ...The standard PDF 32000-1:2008, section 12.6.3 “Trigger Events”, defines actions which can be bound to e.g. focus events of form input elements. See the attached simple [example](/uploads/15531f98db66da3246c86d4d4cfef3ff/Test.pdf) which shows a JavaScript dialogue when the yellow input field receives or looses the focus, respectively, in addition to a JavaScript dialogue bound to the input field's additional `VALIDATE` action.
However, it seems to be impossible to access the scripts bound to the trigger events using the glib bindings. For this example, using `libpoppler-glib8` version 22.12.0-2+b1 on Debian Bookworm:
* The list returned by `poppler_page_get_link_mapping()` does not contain any `POPPLER_ACTION_JAVASCRIPT` items.
* The list returned by `poppler_page_get_annot_mapping()` contains only a `POPPLER_ANNOT_WIDGET` (20) item, for which no corresponding `PopplerAnnot*` structure is defined – this is _probably_ the right items, though.
* The form element, contained in the list returned by `poppler_page_get_form_field_mapping()`, does not have an associated `PopplerAction` (i.e. `poppler_form_field_get_action() == NULL`). Only `poppler_form_field_get_additional_action(item, POPPLER_ADDITIONAL_ACTION_VALIDATE_FIELD)` properly returns a `PopplerActionJavascript`, containing the correct JavaScript.
Would it be possible to provide an interface for accessing these actions?https://gitlab.freedesktop.org/poppler/poppler/-/issues/1419Request: Update TextOutputDev.cc (sync with xpdf)2023-08-19T06:54:03ZRafał MiłeckiRequest: Update TextOutputDev.cc (sync with xpdf)File `TextOutputDev.cc` is important for the `pdftotext` tool. Since the forking it received a lot of improvements:
https://gitlab.freedesktop.org/poppler/poppler/-/commits/master/poppler/TextOutputDev.cc
Original `TextOutputDev.cc` (...File `TextOutputDev.cc` is important for the `pdftotext` tool. Since the forking it received a lot of improvements:
https://gitlab.freedesktop.org/poppler/poppler/-/commits/master/poppler/TextOutputDev.cc
Original `TextOutputDev.cc` (in the Xpdf project) also received a lot of changes since the 3.00 release. It received support for splitting input into blocks and outputting using multiple layouts.
It seems both implementations diverged significantly and both gained some important features. Unfortunately there are some Xpdf-only features that poppler users may be missing. That includes support for `pdftotext` modes like `-simple`, `-simple2` and `-table`.
Is there any sane way of bringing Xpdf `TextOutputDev.cc` improvements into poppler?
It seems like an impossible task to port all poppler changes to the most recent Xpdf's `TextOutputDev.cc`. Too many of them.
There is no public Xpdf git repository so we can't port their commits to poppler one by one. Generating `diff` from release to release results in huge non-described bunch of changes.
Does anyone have any idea how/if this could be solved?https://gitlab.freedesktop.org/poppler/poppler/-/issues/1417Error "Syntax Warning: PDFDoc::markDictionary: Found recursive dicts" using p...2023-10-02T18:41:41Zvf1962Error "Syntax Warning: PDFDoc::markDictionary: Found recursive dicts" using pdfseparateUsing **pdfseparate 23.06.0** (from MSYS2 MinGW x64) on Windows 10 21H2
Trying to split a PDF with Microsoft documentation, only for testing purpose
The PDF is in this compressed file https://interoperability.blob.core.windows.net/files...Using **pdfseparate 23.06.0** (from MSYS2 MinGW x64) on Windows 10 21H2
Trying to split a PDF with Microsoft documentation, only for testing purpose
The PDF is in this compressed file https://interoperability.blob.core.windows.net/files/Exchange_Protocols.zip)
After the split of 3rd page
02/08/2023 13:41 245.991 test001.pdf
02/08/2023 13:41 158.641 test002.pdf
02/08/2023 13:41 155.599 test003.pdf
02/08/2023 13:41 0 test004.pdf
pdfseparate loops until I break execution repeating error message
**Syntax Warning: PDFDoc::markDictionary: Found recursive dicts**
TIA