我们使用cairo来编写pdf文件。结果很棒,文件是可编辑的,所以我们可以通过copy& amp;粘贴甚至打开并编辑Adobe Illustrator和Inkscape中的文件以更改字体属性。
但是,只要我们将PDF转换为EPS,所有字体都会转换为轮廓。
我最喜欢的工具是 pdftops 和 gs ,这就是我尝试过的方式:
gs -sDEVICE=eps2write -dLanguageLevel=3 -dEmbedAllFonts=true -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.eps input.pdf
和
pdftops -eps -level3 input.pdf output.eps
此外,我通过命令行尝试了ps2eps,ps2epsi,epspdf和Inkscape,但结果始终相同,并且所有字体都转换为轮廓。
我们使用的是Dejavu字体,字体嵌入似乎没问题:
$ pdffonts input.pdf
name type encoding emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
JTFVDF+DejaVuSans-Bold TrueType WinAnsi yes yes yes 5 0
BTWYHK+DejaVuSansCondensed-Bold TrueType WinAnsi yes yes yes 6 0
VIBPBS+DejaVuSans-Oblique TrueType WinAnsi yes yes yes 7 0
TKGUZX+DejaVuSansCondensed TrueType WinAnsi yes yes yes 8 0
知道如何使用可编辑的字体生成EPS文件吗?
这是我的档案:https://www.dropbox.com/s/11afckra7i8trdq/input.pdf?dl=0
答案 0 :(得分:1)
Ghostscript的eps2write设备不会将字体转换为轮廓。顺便说一句,你怎么知道字体被转换为轮廓?
我会抓住你提供的示例文件(荣誉!一大群人不这样做)并尽快报告,我可以想到2种可能性:
[后来]
嗯,复杂的文件。解压缩这是> 11 MB ....
无论如何,页面都在透明组中:
9 0 obj
<<
/Type /Page
/Parent 1 0 R
/MediaBox [ 0 0 720 720 ]
/Contents 3 0 R
/Group <<
/Type /Group
/S /Transparency
/I true
/CS /DeviceRGB
>>
/Resources 2 0 R
>>
endobj
然而,看起来Ghostscript决定透明度可能会被删除,因为页面不是一个完整的位图。
我拿出的eps文件没有将字体转换为轮廓,它嵌入完整的字体,并使用它们,例如:
8 0 obj
<</BaseFont/ENTCOM+DejaVuSansCondensed-Bold/FontDescriptor 9 0 R/Type/Font
/FirstChar 32/LastChar 220/Widths[
313 0 0 0 0 0 0 0 0 0 0 0 0 374 0 0
0 0 0 0 0 626 626 626 0 0 0 0 0 0 0 0
0 696 686 660 747 615 615 738 753 334 0 697 573 896 753 765
659 765 693 648 614 730 696 993 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 730]
/Encoding 20 0 R/Subtype/TrueType>>
endobj
%%EndResource
9 0 obj
<</Type/FontDescriptor/FontName/ENTCOM+DejaVuSansCondensed-Bold/FontBBox[-362 -176 964 927]/Flags 4
/Ascent 745
/CapHeight 745
/Descent -176
/ItalicAngle 0
/StemV 144
/MissingWidth 540
/FontFile2 17 0 R>>
endobj
%%EndResource
%%BeginResource: file (PDF FontFile obj_17)
17 0 obj
<</Filter/ASCII85Decode
/Length1 6088/Length 7019>>stream
!!*'"!"ApY!!<3t:K&o%z!!!e-!!!""@r5Xnz!!!\J!!!)-@s2r:5.NBR!!!#S!!!("AoMC">68U0
!!!*T!!!##B5Dj*z!!!DJ!!!86BOtU_%6ag,!!!gs!!!!WBP:sc%JC""!!!,V!!!!EBPhj9z!!!f0
.....
Lots of data omitted
.....
!!)s8!!<3$zzzzzzz!!*'"!!6K:Z*:FC?Oo9l!$;IHze&!X4ze&!X4peC[h%QOi,!!*'*zz~>
endstream
endobj
这是一个TrueType字体,稍后使用:
10 0 0 10 0 0 cm BT
/R8 12.96 Tf
1 0 0 1 262.795 318.916 Tm
[(N)1(E)1(US)0.998415(T)79.0063(ADT)1.00218]TJ
126.609 339.675 Td
[(F)1(IN)1.00218(DO)0.998415(R)1.00218(F)0.998415(F)1.00218]TJ
-338.998 -203.387 Td
[(W)1(O)1(L)166.005(T)1(M)1(E)1(R)1(S)1(H)1(A)29.9863(US)1(E)1(N)1]TJ
373.499 -12.6809 Td
[(M)0.998415(IT)-21.9915(T)0.998415(E)1.00218]TJ
ET
可能是您使用的是旧版本,我使用的是当前版本,9.21。如果没有明显的问题,“为什么你认为字体是轮廓?”