At that time, filesystems did not have file permissions. Stack Overflow for Teams — Collaborate and share knowledge with a private group. Create a free Team What is Teams? Collectives on Stack Overflow. Learn more. Converting postscript to pdf Ask Question. Asked 5 years, 6 months ago. Active 3 years, 9 months ago. Viewed 5k times.
Following Converting correctly pdf to ps and vice-versa I used the following command to convert a postscript file to pdf: gs -o output. How can I make it work? Improve this question. Community Bot 1 1 1 silver badge. All the normal switches and procedures for interpreting PostScript files also apply to PDF files, with a few exceptions.
At present the old PostScript-based interpreter remains the default, in future releases the new C-based interpreter will become the default, though we would encourage people to experiment with the new interpreter and send us feedback.
While there are two interpreters the command-line switch NEWPDF will allow selection of the existing interpreter when false and the new interpreter when true. This is useful for creating fixed size images of PDF files that may have a variety of page sizes, for example thumbnail images.
Annotation types listed in this array will be drawn, whilst those not listed will not be drawn. The list of pages should be given in increasing order, you cannot process pages out of order and inserting higher numbered pages before lower numbered pages in the list will generate an error. The PDF interpreter and the other language interpreters handle these in slightly different ways. Because PDF files enable random access to pages in the document the PDF inerpreter only interprets and renders the required pages.
PCL and PostScript cannot be handled in ths way, and so all the pages must be interpreted. However only the requested pages are rendered, which can still lead to savings in time. Because the PostScript and PCL interpreters cannot determine when a document terminates, sending multple files as input on the command line does not reset the PageList between each document, each page in the second and subsequent documents is treated as following on directly from the last page in the first document.
The PDF interpreter, however, does not work this way. The PostScript interpreter, by contrast, would only render pages 1 and 2 from the first file. This means you must exercise caution when using this switch, and probably should not use it at all when processing a mixture of PostScript and PDF files on the same command line.
Pages processed in order 1, 2, 1, 2. In many cases, this is because of incorrectly generated PDF. Acrobat tends to be very forgiving of invalid PDF files. Ghostscript tends to expect files to conform to the standard.
In the past, Ghostscript's policy has been to simply fail with an error message when confronted with these files. This policy has, no doubt, encouraged PDF generators to be more careful. However, we now recognize that this behavior is not very friendly for people who just want to use Ghostscript to view or print PDF files. Our new policy is to try to render broken PDF's, and also to print a warning, so that Ghostscript is still useful as a sanity-check for invalid files.
If you provide PDF to standard input using the special filename ' - ' , Ghostscript will copy it to a temporary file before interpreting the PDF. Encapsulated PostScript EPS files are intended to be incorporated in other PostScript documents and may not display or print on their own. For the official description of the EPS file format, please refer to the Adobe documentation in their tech note In general with PostScript and PDF interpreters, the handling of overprinting and spot colors depends upon the process color model of the output device.
Devices that produce gray or RGB output have an additive process color model. Devices which produce CMYK output have a subtractive process color model. Devices may, or may not, have support for spot colors. With devices which use a subtractive process color model, both PostScript and PDF allow the drawing of objects using colorants inks for one or more planes without affecting the data for the remaining colorants. Thus the inks for one object may overprint the inks for another object.
In some cases this produces a transparency like effect. The effects of overprinting should not be confused with the PDF 1. Overprinting is not allowed for devices with an additive process color model. With files that use overprinting, the appearance of the resulting image can differ between devices which produce RGB output versus devices which produce CMYK output.
Ghostscript automatically overprints if needed when the output device uses a subtractive process color model. For example, if the file is using overprinting, differences can be seen in the appearance of the output from the tiff24nc and tiff32nc devices which use an RGB and a CMYK process color models. Most of the Ghostscript output devices do not have file formats which support spot colors.
Instead spot colors are converted using the tint transform function contained within the color space definition.. However there are several devices which have support for spot colors. This allows Photoshop to simulate the appearance of the spot colors.
The display device, when using its CMYK plus spot color separation mode, also uses an equivalent CMYK color to simulate the appearance of the spot color. The tiffsep device creates output files for each separation CMYK and any spot colors present.
The xcfcmyk device creates output files with spot colors placed in separate alpha channels. The XCF file format does not currently directly support spot colors. Overprinting with spot colors is not allowed if the tint transform function is being used to convert spot colors.
Thus if spot colors are used with overprinting, then the appearance of the result can differ between output devices. If the test succeeds, Ghostscript tries to open the file using the name given. Otherwise it tries directories in this order:. By default, Ghostscript no longer searches the current directory first but provides -P switch for a degree of backward compatibility. Note that Ghostscript does not use this file searching algorithm for the run or file operators: for these operators, it simply opens the file with the name given.
To run a file using the searching algorithm, use runlibfile instead of run. Adobe specifies that resources are installed in a single directory. Ghostscript instead maintains a list of resource directories, and uses an extended method for finding resource files. The search for a resource file depends on whether the value of the system parameter GenericResourceDir specifies an absolute path. The user may set it as explained in Resource-related parameters.
The first path with Resource in it is used, including any prefix up to the path separator character following the string Resource. If the value of the system parameter GenericResourceDir is an absolute path the default , Ghostscript assumes a single resource directory. It concatenates :. If the value of the system parameter GenericResourceDir is not an absolute path, Ghostscript assumes multiple resource directories.
In this case it concatenates :. Due to possible variety of the part 1, the first successful combination is used. For example, if the value of the system parameter GenericResourceDir is the string.. So in this example, if the user on a Windows platform specifies the command line option -I. The string.. In the case of multiple resource directories, the default ResourceFileName procedure retrieves either a path to the first avaliable resource, or if the resource is not available it returns a path starting with GenericResourceDir.
Consequently Postscript installers of Postscript resources will overwrite an existing resource or add a new one to the first resource directory. To look up fonts, after exhausting the search method described in the next section , it concatenates together.
Ghostscript has a slightly different way to find the file containing a font with a given name. See the documentation of fonts for details. Then, when Ghostscript needs to find a font that isn't already loaded into memory, it goes through a series of steps. CID fonts e. Chinese, Japanese and Korean are found using a different method. SGI in place of Fontmap or Fontmap. It says: "15 files, 15 scanned, 0 new fonts". We think this problem has been fixed in Ghostscript version 6.
See Fontmap. Sol instead. Also, on Solaris 2. The fonts Sun distributes on Solaris 2. These paths may not be exactly right for your installation; if the indicated directory doesn't contain files whose names are familiar font names like Courier and Helvetica, you may wish to ask your system administrator where to find these fonts. Adobe Acrobat comes with a set of fourteen Type 1 fonts, on Unix typically in a directory called There is no particular reason to use these instead of the corresponding fonts in the Ghostscript distribution which are of just as good quality , except to save about a megabyte of disk space, but the installation documentation explains how to do it on Unix.
CID fonts are PostScript resources containing a large number of glyphs e. Please refer to the PostScript Language Reference, third edition, for details. CID font resources are a different kind of PostScript resource from fonts.
In particular, they cannot be used as regular fonts. 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. This allows the reuse of a collection of glyphs with different encodings.
Another method is possible using the composefont operator. They are not found using Font lookup on the search path or font path. In general, it is highly recommended that CIDFonts used in the creation of PDF jobs should be embedded or available to Ghostscript as CIDFont resources, this ensures that the character set, and typeface style are as intended by the author.
In cases where the original CIDFont is not available, the next best option is to provide Ghostscript with a mapping to a suitable alternative CIDFont - see below for details on how this is achieved.
As shipped, this uses the DroidSansFallback. This font contains a large number of glyphs covering several languages, but it is not comprehensive. There is, therefore, a chance that glyphs may be wrong, or missing in the output when this fallback is used.
As with any font containing large numbers of glyphs, DroidSansFallback. The build system will cope with the file being removed, and the initialization code will avoid adding the internal fall back mapping if the file is missing. If DroidSansFallback. As the name suggests, this will result in all the glyphs from a missing CIDFont being replaced with a simple bullet point.
This type of generic fall back CIDFont substitution can be very useful for viewing and proofing jobs, but may not be appropriate for a "production" workflow, where it is expected that only the original font should be used. The file forms a table of records, each of which should use one of three formats, explained below. Note that the default Ghostscript build includes such configuration and resource files in a rom file system built into the executable.
So, to ensure your changes have an effect, you should do one of the following: rebuild the executable; use the "-I" command line option to add the directory containing your modified file to Ghostscript's search path; or, finally, build Ghostscript to use disk based resources.
Please pay attention that both them must be designed for same character collection. The trailing semicolon and the space before it are both required. If the array consists of 2 elements, the first element is a string, which specifies Ordering ; the second element is a number, which specifies Supplement.
If the array consists of 3 elements, the first element is a string, which specifies Registry ; the second element is a string, which specifies Ordering ; the third element is a number, which specifies Supplement. The TrueType font must contain enough characters to cover an Adobe character collection, which is specified in Ordering and used in documents. The script can also be run separately e. Note that the font file path uses Postscript syntax. Because of this, backslashes in the paths must be represented as a double backslash.
This can complicate substitutions for fonts with non-Roman names. This cannot be used directly in a cidfmap file because the xx notation in names is a PDF-only encoding.
Instead, try something like:. This lets you specify a name using any sequence of bytes through the encodings available for Postscript strings.
There is no reliable way to generate a character ordering for truetype fonts. The 7. This is replaced in the 8. As a workaround the PDF interpreter applies an additional substitution method when a requested CID font resource is not embedded and it is not available. The latter may look some confusing for a font name, but we keep it for compatibility with older Ghostscript versions, which do so due to a historical reason.
If the CID font file is not embedded, the Adobe-Identity record depends on the document and a correct record isn't possible when a document refers to multiple Far East languages. In the latter case add individual records for specific CID font names used in the document.
Ghostscript can make use of Truetype fonts with a Unicode character set. To do so, you should generate a NOTE: non-standard! The resulting output will be compliant with the spec unlike the input. Ghostscript currently doesn't do a very good job of deleting temporary files if it exits because of an error; you may have to delete them manually from time to time.
The original PostScript language specification, while not stating a specific word sise, defines 'typical' limits which make it clear that it was intended to run as a bit environment. Ghostscript was originally coded that way, and the heritage remains within the code base. This is the only real purpose in adding support for large integers, however since that time, we have made some efforts to allow for the use of bit words; in particular the use of integers, but also lifting the 64K limit on strings and arrays, among other areas.
Even when the build supports bit words, you should be aware that there are areas of Ghostscript which do not support bit values. Sometimes these are dependent on the build and other times they are inherent in the architecture of Ghostscript the graphics library does not support bit co-ordinates in device space for example, and most likely never will.
Note that the extended support for bit word size can be disabled by executing 'true. The Ghostscript distribution includes some Unix shell scripts to use with Ghostscript in different environments. These are all user-contributed code, so if you have questions, please contact the user identified in the file, not Artifex Software. For instance,. If the "directory" name ends with a closing square bracket " ] ", it is taken to refer to a real directory, for instance.
To preserve the case of switches, quote them like this:. If you are using on an X Windows display, you can set it up with the node name and network transport, for instance. When passing options to ghostcript through a batch file wrapper such as ps2pdf. For example:. There is also an older version for MS Windows called just gswin32 that provides its own window for the interactive postscript prompt.
For printer devices, the default output is the default printer. This can be modified as follows. Invoking Ghostscript from the command prompt in Windows is supported by the Windows executable described above. In addition to the device parameters recognized by all devices , Ghostscript's X driver provides parameters to adjust its performance.
Users will rarely need to modify these. Note that these are parameters to be set with the -d switch in the command line e. Xdefaults file. Because of bugs in the SCO Unix kernel, Ghostscript will not work if you select direct screen output and also allow it to write messages on the console. If you are using direct screen output, redirect Ghostscript's terminal output to a file. Because Ghostscript must initialize the PostScript environment before executing the commands specified by this option it should be specified after other setup options.
Specifically this option 'bind's all operations and sets the systemdict to readonly. Note that by "library files" here we mean all the files identified using the search rule under " How Ghostscript finds files " above: Ghostscript's own initialization files, fonts, and files named on the command line. This means that -p can do the job of both -d and -s. Broadly, only use -p if you cannot set what you want using -s or -d.
In addition, the PDF specification has continued to evolve, whereas the PostScript language has remained static. PDF has added features like transparency, which have no equivalent in PostScript, and the only way for us to support these has been to add special, often undocumented, PostScript extensions. It has also become increasingly evident that many PDF producers do not create PDF files that conform to the specification.
If Acrobat will open the file then it must be OK! Sadly it turns out that Acrobat is really very tolerant of badly formed PDF files and will always attempt to open them. Because Acrobat will open these files, there is considerable pressure for Ghostscript to do so as well, though we do try to at least flag warnings to the user when something is found to be incorrect, giving the user a chance to intervene.
In general, when something goes wrong in a PostScript program the expectation is that the PostScript interpreter will generate an error message and stop. It is possible to do better, but it is not trivial. As time has gone on, and we have encountered more and more PDF files with ever more unexpected deviations from the specification, it has become harder and harder to come up with new strategies to work around these faults without re-introducing previously fixed problems or failing to process compliant files.
It is also true that many of these workarounds have led to decreased performance when processing all PDF files, not just the malformed ones. This has performance implications starting up a PostScript interpreter is quite a complex process and imposes a resource overhead in that we need both the PostScript interpreter and a complex PostScript program before we even start to interpret the PDF file.
What Is Ghostscript? There are various products in the Ghostscript family; this document describes what they are, and how they are related. GhostPDF Prior to release 9. The intention is that the new interpreter will replace the old one, which will be withdrawn. All rights reserved. This software is provided AS-IS with no warranty, either express or implied.
0コメント