--- poppler-git-29feb12-fonts/poppler/GfxFont.cc- 2012-02-29 05:17:15.482720979 +0100 +++ poppler-git-29feb12-fonts/poppler/GfxFont.cc 2012-02-29 05:21:37.057467364 +0100 @@ -660,7 +660,8 @@ } //----- PS passthrough - if (ps && !isCIDFont() && globalParams->getPSFontPassthrough()) { + //----- PS not substituting (want the font on the final print device) + if (ps && !isCIDFont() && (globalParams->getPSFontPassthrough() || !globalParams->getPSSubstFonts())) { fontLoc = new GfxFontLoc(); fontLoc->locType = gfxFontLocResident; fontLoc->fontType = fontType1; --- poppler-git-29feb12-fonts/poppler/GlobalParams.cc- 2012-02-29 05:17:15.484720985 +0100 +++ poppler-git-29feb12-fonts/poppler/GlobalParams.cc 2012-02-29 05:21:37.057467364 +0100 @@ -1540,6 +1540,15 @@ return e; } +GBool GlobalParams::getPSSubstFonts() { + GBool e; + + lockGlobalParams; + e = psSubstFonts; + unlockGlobalParams; + return e; +} + GBool GlobalParams::getPSFontPassthrough() { GBool e; --- poppler-git-29feb12-fonts/poppler/GlobalParams.h- 2012-02-29 05:17:15.484720985 +0100 +++ poppler-git-29feb12-fonts/poppler/GlobalParams.h 2012-02-29 05:21:37.058467367 +0100 @@ -160,6 +160,7 @@ GBool getPSEmbedTrueType(); GBool getPSEmbedCIDPostScript(); GBool getPSEmbedCIDTrueType(); + GBool getPSSubstFonts(); GBool getPSFontPassthrough(); GBool getPSPreload(); GBool getPSOPI();