如果你在制作PDF文件的時候沒有嵌入字體,可能會導致其在不同的PDF浏覽器和操作系統上呈現出不一樣的樣式,在打印文檔的時候也可能會缺少字體,所以在PDF文件中嵌入字體是很有必要的,下面小編就給大家介紹下Linux下PDF文件嵌入LaTex所有字體的方法。
提問: 我通過編譯LaTex源文件生成了一份PDF文檔。然而,我注意到,並不是所有字體都嵌入到了PDF文檔中。我怎樣才能確保所有的字體嵌入在由LaTex生成的PDF文檔中?
解答:當你創建一個PDF文件時,在PDF文件中嵌入字體是一個好主意。如果你不嵌入字體,PDF浏覽器可以在計算機上沒有字體的情況下使用其他東西代替。這將導致文件被在不同的PDF浏覽器或操作系統平台上呈現不同的樣式。當你打印出來的文檔時,缺少的字體是一個問題。
當你從LaTex中生成PDF文檔時(例如用pdflatex或dvipdfm),可能並不是所有的字體都嵌入在PDF文檔中。例如,pdffonts下面的輸出中提示PDF文檔中有缺少的字體(如Helvetica)。
為了避免這樣的問題,下面是如何在LaTex編譯時嵌入所有的字體。
$ latex document.tex$ dvips -Ppdf -G0 -t letter -o document.ps document.dvi$ ps2pdf -dPDFSETTINGS=/prepress \-dCompatibilityLevel=1.4 \-dAutoFilterColorImages=false \-dAutoFilterGrayImages=false \-dColorImageFilter=/FlateEncode \-dGrayImageFilter=/FlateEncode \-dMonoImageFilter=/FlateEncode \-dDownsampleColorImages=false \-dDownsampleGrayImages=false \document.ps document.pdf
現在你可以看到所有的字體都被嵌入到PDF中了。
上面就是Linux下PDF文件嵌入LaTex所有字體的方法,需要注意的是,給PDF文件嵌入字體的時候最好的所有字體,缺少一部分也可能造成字體顯示的問題。