Exporting Cantarell/CFF2 fonts from Libreoffice Writer to PDF is broken

When I either
a) export an odt. file to (“save as”) PDF or
b) print to file > PDF in Libreoffice Writer,
The result ist just the page header and images from the document end up in the pdf, the rest is blank - i.e. typed text from the .odt isn’'t rendered.

Exporting and .odg file from LO Draw to PDF works fine though.

Haven’t tried exporting other file formats to PDF or in other apps, but find it strange that Print To File is malfunctioning in the same way, because I thought that is a system wide feature provided by CUPS. Maybe LO Writer (but not Draw???) and CUPS both make use of the same library…?

EDIT: exporting .docx files from LO Writer has the same result. Exporting them from Onlyoffice yields a document full of weird glyphs (not what’s in the original)

No, it is not broken. I save ODT file as PDF’s all the time. If you’re using libreoffice-still, try libreoffice-fresh.

Telling us something is broken tells us absolutely nothing. Please see the following and edit your topic title and first post accordingly.

I really don’t know what other information I could provide to make this a better question at the moment. I’m glad it works for you, but I’ve been doing this a lot too, it always used to work, but now, on my system it clearly is broken, inexplicably. I tried to explain the problem in all the detail that I can think of as relevant, but maybe you can think of other infos or things to try that haven’t come to my mind so far? Will it be better if I replace “broken” with “not working”?
Putting all the details in the title is probably not what we’re aiming for either…?

EDIT: I tried Libreoffice-Fresh. Now the resulting PDF contains the images, the page header (like before), plus all the words in bold - all the rest of the text is still missing.

Is it broken for every odt file or just for some specific files? Can you share a odt file that is not working for you?

For me it works as expected, but I usually export quite simple documents.

1 Like

Good question, thanks. I’ve tried several different files, and it works normally with some. The ones that have the same problem are all in Cantarell font (one of my favorites) - in LO fresh, only Cantarell bold words make it into the pdf, and in LO still, none at all (again, this used to work normally for me also with Cantarell, but not anymore)

Can you maybe try and reproduce it on your system?

Reproduced!

Using libreoffice-still (7.4.6-1), I made a document with blocks of text in different fonts. Just like you, the block with Cantarell did not show in the exported PDF. The other text blocks appeared normally.

Interestingly, if I used the text selection tool in Okular, I could select the “blank” Cantarell lines and copy/paste the text back into LO Writer. So the text is there, but is not being rendered.

LibreOffice bug report suggests that a fix may be in place for version 7.5.4.
https://bugs.documentfoundation.org/show_bug.cgi?id=155161

4 Likes

I can seconded the reproduced, exactly as you stated.
Using:
Version: 7.5.3.2 (X86_64) / LibreOffice Community
Build ID: 50(Build:2)
CPU threads: 8; OS: Linux 6.3; UI render: default; VCL: kf5 (cairo+xcb)
Locale: en-CA (en_CA.UTF-8); UI: en-US
7.5.3-2
Calc: threaded

1 Like

Yes, it is the same for me. This font is not visible in a exported PDF.

The CUPS PDF printer (package: cups-pdf) which is not the same as print in file (which is the same as the export), produces an empty page and a GhostScript error

ERROR:
invalidfont
OFFENDING COMMAND:
findfont
STACK:
/Cantarell-Regular
/Cantarell-Regular
false
--nostringval--
6

This can maybe fixed, but I don’t know.

1 Like

So can we assume that Cantarell is a “font with CFF2 table”? (and this problem would occur with all other fonts that also have a CFF2 table)?

Certainly there is a shared library in use between the two? Otherwise, why would the same problem happen in both?

I don’t believe it is the same problem. Ghostscript (which is used by the CUPS PDF printer) can’t load the font.

Loading Cantarell-Regular font from /usr/share/fonts/cantarell/Cantarell-VF.otf... Error: /invalidfont in findfont

The main problem for Ghostscript seems to be that Cantarell is a OpenType variable font. I did not found out if Ghostscript should support a OpenType variable font. But I found older posts (2020), that indicates Ghostscript does not support this type of font.

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.