Bug 106771 - FILESAVE: LibreOffice fails to embed fonts while saving PPTX files
Summary: FILESAVE: LibreOffice fails to embed fonts while saving PPTX files
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: filters and storage (show other bugs)
Version:
(earliest affected)
5.2.6.2 release
Hardware: All All
: low normal
Assignee: Not Assigned
URL:
Whiteboard: target:25.8, inReleaseNotes:25.8
Keywords: filter:pptx
: 165828 (view as bug list)
Depends on:
Blocks: PPTX PPT Fonts-Embedded
  Show dependency treegraph
 
Reported: 2017-03-26 01:22 UTC by MP
Modified: 2025-05-24 13:03 UTC (History)
6 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description MP 2017-03-26 01:22:14 UTC
Description:
When saving PPT file, LibreOffice does not embed fonts even if "Embed fonts in the document" has been chosen in Properties.

Steps to Reproduce:
1. Create a new Impress presentation.
2. Enter some text.
3. Choose "Properties" from "File" menu.
4. Check "Embed fonts in the document" in the "Font" tab and click "OK".
5. Save the file choosing the PPT file type (confirm the choice in dialog).
6. Close Impress and open the saved file in Microsoft PowerPoint.
7. Check the save options.

Actual Results:  
The checkbox "Embed fonts in a file" is unchecked in Microsoft PowerPoint.

Expected Results:
The checkbox "Embed fonts in a file" should be checked in Microsoft PowerPoint.


Reproducible: Always

User Profile Reset: No

Additional Info:
It is also possible to see the unchecked checkbox after reopening the file in Impress itself, but in this case that's also because Impress doesn't detect embedded fonts in PPT files.


User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0
Comment 1 Buovjaga 2017-03-29 16:44:55 UTC
I confirm it does not work, but maybe it's a ppt limitation.. I did find this https://support.microsoft.com/en-us/help/291924

I only found information online, that LibO supports embedding fonts in ODF. And even then, it must conform to the font's meta info: "Allow embedding or not"
Comment 2 MP 2017-06-06 00:42:00 UTC
(In reply to Buovjaga from comment #1)
> I confirm it does not work, but maybe it's a ppt limitation.. I did find
> this https://support.microsoft.com/en-us/help/291924

That link does explain how to embed fonts to a ppt file with MS Office (versions 2002 and 2003 existed before pptx format was introduced), thus such files do support embedding fonts. For example, http://bcicommtech10.weebly.com/uploads/6/4/0/6/6406570/introduction_to_typography_-_a.ppt is a ppt file with embedded fonts (only characters used in it).

> I only found information online, that LibO supports embedding fonts in ODF.
> And even then, it must conform to the font's meta info: "Allow embedding or
> not"

I suppose that the same conditions could be applied to ppt files as well, at least in principle?
Comment 3 QA Administrators 2019-05-28 02:47:16 UTC Comment hidden (obsolete)
Comment 4 Oliver Grimm 2019-12-10 13:06:44 UTC
still a bug in LO 6.3.3
+ also confirmed for pptx files
Comment 5 Oliver Grimm 2019-12-10 14:22:03 UTC
"embed fonts" feature is also lost with XLSX files
But works fine for ODS files.
Comment 6 Denis 2020-01-12 19:38:42 UTC
Also it doesn't work when re-saving an ODF presentation to ppt/pptx format. Embedded fonts are just lost.
LO 6.3.4, Win 10, Manjaro Linux
Comment 7 Oliver Grimm 2020-02-15 20:58:37 UTC
still a bug in LO 6.4.0.3
Comment 8 Bella vGFH 2022-02-04 09:47:13 UTC
Continuation of long standing issue:

With latest release, LO Impress 7.3.0.3,
[] Create presentation,
[] Selecting/ ticking FILE > PROPERTIES > FONT > "Embed fonts in the document"
[] Save in native ODP format ---> Fonts are embedded correctly.

However, 
[X] Save in MS PowerPoint format ---> Fonts are NOT embedded.
[X] Closer inspection shows that in resulting *.pptx (rename to .zip), the directory /ppt/fonts is NOT created.
[X] Subsequently, the needed font*.fntdata files are NOT available.

[] Loading the LO Impress generated *.pptx file into MS PowerPoint, and saving it there with fonts embedded does create /ppt/fonts and embeds the fonts applied by $USER correctly (when fonts are available within OS).
Comment 9 Roland Baudin 2023-04-12 08:25:26 UTC
The bug is still there in LO 7.5.2.2 (in Linux and Windows).

To sum up, LO Impress does not embed fonts when saving as .pptx, while LO Writer does when saving as .docx.

The workaround indicated in Comment 8 works:

1. Embed fonts in .odp (Linux or Windows)

2. Save as .pptx (Linux or Windows)

3. In Windows, with these fonts installed, open the .pptx with PowerPoint and embed fonts there (use File / Options / Save, then Embed Fonts in File and select the desired embedding option)

4. Now the .pptx file has embedded fonts

I didn't tested this workaround in MacOS X.
Comment 10 Tristan Miller 2024-12-11 02:51:28 UTC
Confirming bug still exists in LibreOffice 24.8.2.1.
Comment 11 Timur 2025-05-20 10:56:35 UTC
This ticket is large and from user perspective all is expected. 
But, from dev perspective not all may be resolved at once. Removing filter:xlsx.

There are commits from Tomaž Vajngerl which improve the situtation. With these, fonts are now embedded in PPTX. No change in PPT, it may be split to another ticket. 
Embedded fonts are recognized in LO, but not in MSO. Also, "embed only used" does not work. We may keep this open. 


https://gerrit.libreoffice.org/c/core/+/184287
commit faf45f80e1963534d72a60636836b816f6d27442
oox: import embedded font if it exists in impress

The fonts are usually EOT fonts so this needs libEOT to work. The
EmbeddedFontHelper takes care the conversion and make the font
available in LibreOffice (which is then used automatically in the
document).


https://gerrit.libreoffice.org/c/core/+/184288
commit d0ee08cfbf12145027eee7ad46448a8734693c06
oox: export embedded font used in a presentation document

This adds support to export the fonts that are used in an
presentation document. The fonts are converted to EOT fonts.
Adds an EOT converter, which converts a TTF font to EOT font by
writing a EOT header and adding the TTF font data.
Adds BigEndianTypes so we can read a structure that is defined in
big endian and the types get converted (if needed) to system
endian when accessed. + test
Adds TTF reader which reads the true type font structure in an
easy way that is used by the EOTConverter. + test
Comment 12 Timur 2025-05-22 13:03:13 UTC
Embedded fonts are now also recognized in MSO. Tested with yesterday's master build. 

"Embed only used" is separate issue.
OOXML doesn't have "Only embed fonts that are used..." (it does it by default) and no options for each script type, so when we reopen those will not be set. 
It is side issue to this ticket and is being worked on separately. 

I think this one may be closed. Feel free to retest and add feedback.
PPT is separate, I will not open another one for that, as it is old enough not to expect resolution.
Comment 13 Gerald Pfeifer 2025-05-24 13:03:23 UTC
*** Bug 165828 has been marked as a duplicate of this bug. ***