转换为PDF / A后,* some *页面上的文本无法选择

时间:2014-03-04 11:38:52

标签: pdf ghostscript pdfa

我有一个XeTeX生成的PDF文档,我需要将其转换为PDF / A-1b。问题是,在第二次调用gs之后,在最终PDF文档的某些页面上,其上有图像,文本看起来非常糟糕,并且无法在 evince中选择 / AcrobatPro 了。这仅适用于某些带有图像的页面,而不是带有图像的所有页面。

在第一次通话中,我嵌入了这样的字体:

gs -dSAFER -dNOPLATFONTS -dNOPAUSE -dQUIET -dBATCH \
   -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dUseCIEColor \
   -dPDFSETTINGS=/printer -dCompatibilityLevel=1.4 \
   -dMaxSubsetPct=100 -dSubsetFonts=true -dEmbedAllFonts=true \
   -sOutputFile=PhD-Thesis_Hilboll_v1.1-fontsembedded.pdf \
   -f PhD-Thesis_Hilboll.pdf 

然后,在第二次调用gs时,我会进行PDF / A转换:

gs -dPDFA -dBATCH -dNOPAUSE -dQUIET -dNOOUTERSAVE -dUseCIEColor \
   -sProcessColorModel=DeviceCMYK -sDEVICE=pdfwrite \
   -sOutputFile=PhD-Thesis_Hilboll_v1.1-PDFA.pdf \
   PhD-Thesis_Hilboll_v1.1-fontsembedded.pdf \
   PhD-Thesis_Hilboll-def.ps

PDF / A定义文件PhD-Thesis_Hilboll-def.ps如下所示:

%!
% $Id: PDFA_def.ps 8284 2007-10-10 17:40:38Z giles $
% This is a sample prefix file for creating a PDF/A document.
% Feel free to modify entries marked with "Customize".

% This assumes an ICC profile to reside in the file (ISO Coated sb.icc),
% unless the user modifies the corresponding line below.


systemdict /ProcessColorModel known {
  systemdict /ProcessColorModel get dup /DeviceGray ne exch /DeviceCMYK ne and
} {
  true
} ifelse 
{ (ERROR: ProcessColorModel must be /DeviceGray or DeviceCMYK.)=
  /ProcessColorModel cvx /rangecheck signalerror
} if


% Define entries to the document Info dictionary :

%/ICCProfile (eciRGB_v2.icc) def
/ICCProfile (/usr/share/color/icc/ISOcoated_v2_eci.icc) def

[ /Title (Tropospheric nitrogen dioxide from satellite measurements: SCIAMACHY limb/nadir matching and multi-instrument trend analysis) % Customize.
/Author (Andreas Hilboll) % Customize.
%/Subject (Dissertation angefertigt an der Universitaet Bremen) % Customize.
  /DOCINFO pdfmark

% Define an ICC profile :

[/_objdef {icc_PDFA} /type /stream /OBJ pdfmark
[{icc_PDFA} <</N systemdict /ProcessColorModel get /DeviceGray eq {1} {4} ifelse >> /PUT pdfmark
[{icc_PDFA} ICCProfile (r) file /PUT pdfmark

% Define the output intent dictionary :

[/_objdef {OutputIntent_PDFA} /type /dict /OBJ pdfmark
[{OutputIntent_PDFA} <<
  /Type /OutputIntent             % Must be so (the standard requires).
  /S /GTS_PDFA1                   % Must be so (the standard requires).
  /DestOutputProfile {icc_PDFA}            % Must be so (see above).
  /OutputConditionIdentifier (CGATS TR001)      % Customize
>> /PUT pdfmark
[{Catalog} <</OutputIntents [ {OutputIntent_PDFA} ]>> /PUT pdfmark

非常感谢任何帮助!

更新:我刚刚意识到,当我直接执行PDF / A步骤时,错误也会发生,而不会先嵌入字体。

0 个答案:

没有答案