Bug 691079 - Failure to open PDF (font problems?)
Summary: Failure to open PDF (font problems?)
Status: RESOLVED INVALID
Alias: None
Product: Ghostscript
Classification: Unclassified
Component: Font API (show other bugs)
Version: 8.70
Hardware: PC Windows NT
: P4 normal
Assignee: Ken Sharp
URL: http://www.bundesnetzagentur.de/media...
Keywords:
Depends on:
Blocks:
 
Reported: 2010-01-21 06:42 UTC by ghostscript-bugs
Modified: 2010-07-30 14:54 UTC (History)
1 user (show)

See Also:
Customer:
Word Size: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description ghostscript-bugs 2010-01-21 06:42:35 UTC
Attempting to open the PDF file at
http://www.bundesnetzagentur.de/media/archive/16441.pdf in GSview 4.9 (using
Ghostscript 8.70) on Windows Vista (32 bit) fails with the following error messages:

GSview 4.9 2007-11-18
GPL Ghostscript 8.70 (2009-07-31)
Copyright (C) 2009 Artifex Software, Inc.  All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
Scanning PDF file
%GSVIEW_PDF_PAGES: 1 2
Displaying PDF page 1
%GSVIEW_PDF_PAGE: 1
%GSVIEW_PDF_MEDIA: [0 0 595 842]
%GSVIEW_PDF_CROP: [0 0 595 842]
%GSVIEW_PDF_ROTATE: 0
%GSVIEW_PDF_MARK: /PAGE /CropBox [0.0 0.0 595.0 842.0]
Scanning c:\psfonts for fonts... 0 files, 0 scanned, 0 new fonts.
Substituting font Helvetica for ArialMT.
Loading NimbusSanL-Regu font from %rom%Resource/Font/NimbusSanL-Regu... 2380168
1053327 13404996 12104610 3 done.
Substituting font Helvetica-Bold for Arial-BoldMT.
Loading NimbusSanL-Bold font from %rom%Resource/Font/NimbusSanL-Bold... 2477240
1148663 13441780 12138869 3 done.
Can't find (or can't open) font file %rom%Resource/Font/Arial-BoldMT.
Can't find (or can't open) font file Arial-BoldMT.
Can't find (or can't open) font file %rom%Resource/Font/Arial-BoldMT.
Can't find (or can't open) font file Arial-BoldMT.
Querying operating system for font files...
Didn't find this font on the system!
Substituting font Helvetica-Bold for Arial-BoldMT.
Can't find CID font "Arial".
Substituting CID font /Adobe-Identity for /Arial, see
doc/Use.htm#CIDFontSubstitution.
The substitute CID font "Adobe-Identity" is not provided either. Will exit with
error.
Error: /undefined in findresource
Operand stack:
   --dict:11/20(L)--   C2_0   1   --dict:5/5(L)--   --dict:5/5(L)--   Arial,Bold
  --dict:11/12(ro)(G)--   --nostringval--   CIDFontObject   --dict:7/7(L)--  
--dict:7/7(L)--   Adobe-Identity
Execution stack:
   %interp_exit   .runexec2   --nostringval--   --nostringval--  
--nostringval--   2   %stopped_push   --nostringval--   --nostringval--   false
  1   %stopped_push   1862   1   3   %oparray_pop   1861   1   3   %oparray_pop
  1845   1   3   %oparray_pop   1739   1   3   %oparray_pop   --nostringval--  
%errorexec_pop   .runexec2   --nostringval--   --nostringval--   --nostringval--
  2   %stopped_push   --nostringval--   --nostringval--   --nostringval--  
--nostringval--   --nostringval--   %array_continue   --nostringval--   false  
1   %stopped_push   --nostringval--   %loop_continue   --nostringval--  
--nostringval--   --nostringval--   --nostringval--   --nostringval--  
--nostringval--   %array_continue   --nostringval--   --nostringval--  
--nostringval--   --nostringval--   --nostringval--   %loop_continue  
--nostringval--   --nostringval--   --nostringval--   %loop_continue
Dictionary stack:
   --dict:1159/1684(ro)(G)--   --dict:1/20(G)--   --dict:79/200(L)--  
--dict:106/127(ro)(G)--   --dict:285/300(ro)(G)--   --dict:23/25(L)--  
--dict:4/6(L)--   --dict:26/40(L)--
Current allocation mode is local
Last OS error: No such file or directory
pdf_page failed
Comment 1 Ken Sharp 2010-01-21 07:09:26 UTC
This error occurs because you don't have a CIDFont called Arial, we can't
substitute a regular font for a CIDFont, so we can't use the normal fallback
mechanism (as is done for the font Arial-BoldMT here).

GS does have a different fallback mechanism for CIDFonts, it uses the
CIDSystemInfo to construct a 'generic' replacement name, in this case called
'Adobe-Identity' (which tells me your PDF file contains a request for a CIDFont
called Arial with an Adobe Registry and Identity Ordering in the CIDSystemInfo
of hte FontDescriptor)

However it seems you don't have a CIDFont called Adobe-Identity defined either,
so Ghostscript gives up.

You need to define a CIDFont called 'Arial', or define the generic substitute
CIDFont 'Adobe-Identity'. Please see /gs/doc/Use.htm, section 8.4 'CID font
substitution' (as directed by Ghostscript in the log you've quoted)

Since you are on Windows you can define a substitution for arial.ttf as CIDFont
/Arial.
Comment 2 Ming 2010-07-30 14:54:35 UTC
I have a very similar problem but with TimesNewRoman on Linux with Ghostscript 8.70: gs myfile.pdf

GPL Ghostscript 8.71 (2010-02-10)
Copyright (C) 2010 Artifex Software, Inc.  All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
Processing pages 1 through 3.
Page 1
Can't find CID font "TimesNewRoman".
Substituting CID font /Adobe-Identity for /TimesNewRoman, see doc/Use.htm#CIDFontSubstitution.
The substitute CID font "Adobe-Identity" is not provided either. Will exit with error.
Error: /undefined in findresource
Operand stack:
   --dict:8/17(L)--   C2_4   1   --dict:5/5(L)--   --dict:5/5(L)--   TimesNewRoman,Bold   --dict:10/12(ro)(G)--   --nostringval--   CIDFontObject   --dict:7/7(L)--   --dict:7/7(L)--   Adobe-Identity
Execution stack:
   %interp_exit   .runexec2   --nostringval--   --nostringval--   --nostringval--   2   %stopped_push   --nostringval--   --nostringval--   --nostringval--   false   1   %stopped_push   1878   1   3   %oparray_pop   1877   1   3   %oparray_pop   1861   1   3   %oparray_pop   --nostringval--   --nostringval--   2   1   3   --nostringval--   %for_pos_int_continue   --nostringval--   --nostringval--   --nostringval--   --nostringval--   %array_continue   --nostringval--   false   1   %stopped_push   --nostringval--   %loop_continue   --nostringval--   --nostringval--   --nostringval--   --nostringval--   --nostringval--   --nostringval--   %array_continue   --nostringval--   --nostringval--   --nostringval--   --nostringval--   --nostringval--   %loop_continue   --nostringval--   --nostringval--   --nostringval--   %loop_continue
Dictionary stack:
   --dict:1158/1684(ro)(G)--   --dict:1/20(G)--   --dict:75/200(L)--   --dict:75/200(L)--   --dict:108/127(ro)(G)--   --dict:288/300(ro)(G)--   --dict:22/25(L)--   --dict:6/8(L)--   --dict:26/40(L)--
Current allocation mode is local
Last OS error: 2
GPL Ghostscript 8.71: Unrecoverable error, exit code 1

I have tried everything mentioned in Use.htm but none works. I was from section 8.3, "CID font resources must first be combined with a CMap resource, which defines specific codes for glyphs, before it can be used as a font. The simplest method to request a font composed of a CID font resource and a CMap resource in a PostScript document is    /CIDFont-CMap findfont ...CID fonts must be placed in the /Resource/CIDFont/ directory".

But I don't know even have a CIDFont directory in my Resource dir. How can I do /CIDFont-CMap findfont? Thanks!