2017-02-03 6 views
0

Со ссылкой на этот пост, GhostScript Conversion Font Issues, безопасно предположить, что программе Ghostscript PS к PDF преобразования еще не гарантируют зоват & -paste текст из преобразованного документа? Потому что я тоже получаю искаженный экземпляр - & - отсканируйте результаты с отформатированными документами, хотя он работает с текстовыми файлами.GhostScript PS для преобразования PDF - No Color

По вопросу цвета, я использую Microsoft PS драйвера класса для печати документов в файлы формата PostScript, а затем преобразовать их в формат PDF с помощью G hostScript v9.20 DLL (пример источника и выходов прилагается выше). Возможные варианты:

-dNOPAUSE 
-dBATCH 
-dSAFER 
-sDEVICE=pdfwrite 
-sColorConversionStrategy=/RGB 
-dProcessColorModel=/DeviceRGB 

Однако он преобразуется без цвета. Я пропустил какой-то вариант?

ответ

1

Вы никогда не можете гарантировать получение PDF-файла с текстом, который вы можете вырезать и вставить из программы PostScript. Нет никакой гарантии, что в программе PostScript есть какая-либо информация из ToUnicode, и без этого, если шрифт является подмножеством, как здесь, тогда нет способа узнать, что означает код Unicode для данного глифа.

Что касается цвета, предоставленный вами файл PostScript не содержит цвета, поэтому его не Ghostscript, проблема в том, как вы создали PostScript. По предположению вы использовали определение принтера (файл PPD), которое предназначено для монохромного принтера.

Вы могли быть в состоянии улучшить текст, играя с вариантами загрузки шрифтов, основная проблема заключается в том, что ваша программа PostScript не содержит информацию, которую мы должны быть в состоянии построить ToUnicode CMAP. Без этого мы вынуждены предположить, что коды символов являются ASCII, и в вашем случае, поскольку шрифты являются подмножествами, они не являются ASCII.

По какой-то причине содержимое вашего PostScript, похоже, загружает шрифт в виде растровых изображений. Это уродливо, не очень хорошо масштабируется и может быть источником вашей неспособности вставить данные ToUnicode. Это также может быть вызвано использованием шрифтов, вы можете попробовать некоторые стандартные системные шрифты (если вы еще не зарегистрированы), например TimesNewRoman.

В то время как это замечательно, что вы представили пример, я бы предположил, что в будущем вы делаете пример меньшим, намного меньше .... В этом нет необходимости в 13 страницах многократно повторяющегося контента. дело. Больше контента означает, что требуется больше времени для расшифровки, попробуйте сохранить файлы примеров до минимума, необходимые для демонстрации проблемы.

Короче говоря, похоже, что ваши проблемы вызваны тем, как вы (или приложение) генерируете PostScript.

+0

,,, что может привести к вопросу, почему вы не устанавливаете принтер pdf вместо двойной сложности, которую вы в настоящее время пытаетесь получить? –

+0

@StefanHegny Это было бы предельно, но я не хочу выбирать сторонний продукт. Windows 10 имеет встроенный драйвер печати PDF, но не более ранние версии.Было бы здорово, если бы у GhostScript был такой драйвер для печати, вместо того, чтобы бить вокруг куста с помощью PostScript. – iSofia

+0

@KenS Спасибо за другое замечательное объяснение. Я подозревал столько же, но думал, что драйвер Microsoft PS Class выдаст цвет. Рассмотрев все варианты, я был бы более чем счастлив, чтобы просто выводить правильно отформатированное изображение распечатки вместо того, чтобы возиться с неточными PDF-файлами. Pity GhostScript не может печатать в PDF или печатать на JPG. – iSofia

Смежные вопросы