How to embed fonts into PDF
Ghostscript can do that. One condition though: the font(s) referenced by the original PDF need to be present on the system where you run Ghostscript.
Here is an example command to run on Windows:
gswin32c.exe ^
-sFONTPATH=c:/windows/fonts;d:/some/dir/with/more/fonts ^
-dCompatibilityLevel=1.4 ^
-dPDFSETTINGS=/prepress ^
-dCompressFonts=true ^
-dSubsetFonts=true ^
-dNOPAUSE ^
-dBATCH ^
-sDEVICE=pdfwrite ^
-sOutputFile=output.pdf ^
-c ".setpdfwrite <</NeverEmbed [ ]>> setdistillerparams" ^
-f input.pdf
The resulting output.pdf
should have all fonts embedded which input.pdf
didn't have. Just make sure that -sFONTPATH=...
contains (at least) one directory where the missing fonts are found by the gswin32c
command.