Summary: | Failure to open PDF (font problems?) | ||
---|---|---|---|
Product: | Ghostscript | Reporter: | ghostscript-bugs |
Component: | Font API | Assignee: | Ken Sharp <ken.sharp> |
Status: | RESOLVED INVALID | ||
Severity: | normal | CC: | mingqiang |
Priority: | P4 | ||
Version: | 8.70 | ||
Hardware: | PC | ||
OS: | Windows NT | ||
URL: | http://www.bundesnetzagentur.de/media/archive/16441.pdf | ||
Customer: | Word Size: | --- |
Description
ghostscript-bugs
2010-01-21 06:42:35 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. 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! |