首页 > 解决方案 > 使用 gs 时如何修复“gsicc_open_search():找不到”错误消息

问题描述

我正在尝试修复 PDF 转换中的纯黑色文本问题。我能够将我的 sRGB pdf 转换为 CMYK pdf,但文本颜色不会保持为纯黑色。我已经尝试使用ghostscript:将 PDF 转换为 CMYK,保留纯黑色作为文本技巧,但即使我在当前目录中编译了“ apple_... ”文件,我总是得到:

gsicc_open_search():找不到 ~/temp/AdobeCPs/CMYK/apple_to_jNP_neutrals.icc。

我正在使用的命令:

gs -q -sDEVICE=pdfwrite -o sample.pdf -sColorConversionStrategy=CMYK -sSourceObjectICC=control.txt test.pdf

我的输出是:

 ./base/gsicc_manage.c:1088: gsicc_open_search(): Could not find Graphic_RGB apple_to_jNP_neutrals.icc    0   1   0
+ ./base/gsicc_manage.c:660: gsicc_set_srcgtag_struct(): setting of control.txt src obj color info failed
| ./base/gsicc_manage.c:2731: gs_setsrcgtagicc(): cannot find srctag file
While reading gs_lev2.ps:
Error: /unknownerror in --.setuserparams--
Operand stack:
   (gs_res.ps\000gs_typ42.ps\000gs_cidfn.ps\000gs_cidcm.ps\000gs_fntem.ps\000gs_cidtt.ps\000gs_cidfm.ps\000gs_cmap.ps\000gs_setpd.ps\000gs_fapi.ps\000gs_typ32.ps\000gs_frsd.ps\000gs_ll3.ps\000gs_mex_e.ps\000gs_mro_e.ps\000gs_pdf_e.ps\000gs_wan_e.ps\000pdf...)   (gs_lev2.ps)   --dict:31/31(G)--   --dict:1/1(G)--   --dict:1/1(G)--
Execution stack:
   %interp_exit   --nostringval--   --nostringval--   %loop_continue   --nostringval--   --nostringval--   --nostringval--   false   1   %stopped_push   --nostringval--   --nostringval--
Dictionary stack:
   --dict:798/1123(G)--   --dict:71/200(L)--   --dict:798/1123(G)--   --dict:133/251(G)--   --dict:21/25(L)--
Last OS error: No such file or directory
Current file position is 24631
Unrecoverable error: syntaxerror in --nostringval--
Operand stack:
    gs_res.psgs_typ42.psgs_cidfn.psgs_cidcm.psgs_fntem.psgs_cidtt.psgs_cidfm.psgs_cmap.psgs_setpd.psgs_fapi.psgs_typ32.psgs_frsd.psgs_ll3.psgs_mex_e.psgs_mro_e.psgs_pdf_e.psgs_wan_e.pspdf_ops.psgs_l2img.pspdf_rbld.pspdf_base.pspdf_draw.pspdf_font.pspdf_main.pspdf_sec.psgs_cff.psgs_mgl_e.psgs_ttf.psgs_icc.psgs_dps.psgs_dpnxt.psgs_epsf.psgs_pdfwr.ps  gs_lev2.ps  --nostringval--  --nostringval--  --nostringval--  false
Unrecoverable error: undefined in .uninstallpagedevice
Operand stack:
    gs_res.psgs_typ42.psgs_cidfn.psgs_cidcm.psgs_fntem.psgs_cidtt.psgs_cidfm.psgs_cmap.psgs_setpd.psgs_fapi.psgs_typ32.psgs_frsd.psgs_ll3.psgs_mex_e.psgs_mro_e.psgs_pdf_e.psgs_wan_e.pspdf_ops.psgs_l2img.pspdf_rbld.pspdf_base.pspdf_draw.pspdf_font.pspdf_main.pspdf_sec.psgs_cff.psgs_mgl_e.psgs_ttf.psgs_icc.psgs_dps.psgs_dpnxt.psgs_epsf.psgs_pdfwr.ps  gs_lev2.ps  --nostringval--  --nostringval--  --nostringval--  false

我的 control.txt 文件是:

Image_RGB   apple_to_jNP_photo.icc       0   1   0
Graphic_RGB apple_to_jNP_neutrals.icc    0   1   0
Text_RGB    apple_to_jNP_neutrals.icc    0   1   0

echo $GS_LIB
/usr/share/ghostscript/9.18/Resource

ls /usr/share/ghostscript/9.18/Resource
CIDFont  CIDFSubst  CMap  ColorSpace  Decoding  Encoding  Font  IdiomSet  Init  SubstCID

当前目录:

~/temp/AdobeCPs/CMYK$ ls
AppleRGB.icc               CoatedGRACoL2006.icc         JapanColor2003WebCoated.icc  USWebCoatedSWOP.icc
apple_to_jNP_neutrals.icc  control.txt                  JapanWebCoated.icc           USWebUncoated.icc
apple_to_jNP_photo.icc     JapanColor2001Coated.icc     sample.pdf                   WebCoatedFOGRA28.icc
CoatedFOGRA27.icc          JapanColor2001Uncoated.icc   test.pdf                     WebCoatedSWOP2006Grade3.icc
CoatedFOGRA39.icc          JapanColor2002Newspaper.icc  UncoatedFOGRA29.icc          WebCoatedSWOP2006Grade5.icc

你能帮忙吗 ?

标签: pdfpdf-generationghostscriptpostscript

解决方案


即使这是一个相当古老的线程,它似乎还没有解决。我遇到了与上面提到的相同的错误,在 control.txt 中使用空格作为分隔符而不是制表符(如 Ghostscript版本的颜色管理白皮书中所述)。更改为标签为我解决了这个问题。


推荐阅读