Всем здравствуйте!
Открываем Америку.
Поделюсь.
Касается только первой половины заголовка темы.
Здесь уже звучали слабые (и не слабые) голоса за вывод PS из программы верстки.
Например, первые из них
тут и
тут и т. д.
Налетели мы, как водится, на кривые шрифты (всякие, некоторые у нас еще с 90-х годов) и опрометчивое использование в верстке системных, типа Times New Roman.
Речь идет, повторюсь,
не об исправлении "неудачных" PDF файлов, а их генерации заново.
Понятное дело, должны иметься сохраненные файлы верстки.
Работает такая схема:
1) Устанавливаем в систему старенький PS-принтер, у нас AGFA-Avantra25SF.
2) Настраиваем стиль печати, в котором выбираем опцию "Шрифты загружать полностью".
См. рис.
3) Выводим PS-ы полос.
4) Из проводника объединяем их в Акробат.
5) Совокупный PDF из Акробата печатаем в PS-файл через ту же AGFA-Avantra25SF
6) Результирующий PS-файл обрабатываем Дистиллером с предустановкой "PDFA 1b 2005 (RGB)"
7) На всякий случай готовый электронный экземпляр проверяем в Акробате "Verify compliance with PDF/A-1b" и делаем копипаст текста из Акробата в текстовый редактор, видим нормальный текст без кракозябр или квадратиков. Поиск текста в PDF работает.
Принимает как робот РГБ, так и оператор на втором этапе проверки. Сданы успешно сотни файлов.
Описан случай, когда полосы верстаются отдельными файлами. Если полос много (больше одной), то можно написать небольшой сценарий, для ускорения вывода. Тогда в основном только по <Enter> шлепаем.
Rem AllActiveDocsToPSfiles.vbs
Rem Скрипт экспортирует все открытые документы в PS на принтер AGFA-Avantra25SF
Set myInDesign = CreateObject("InDesign.Application")
For Each myDocument In myInDesign.Documents
With myDocument.PrintPreferences
.Printer = "AGFA-Avantra25SF"
Rem If the printer property is the name of a printer, then the ppd property
Rem is locked (and will return an error if you try to set it).
.PaperSize = "A2"
On Error Resume Next
Rem ppd = "AGFA-Avantra25SF"
.ScaleMode = idScaleModes.idScaleWidthHeight
.ScaleProportional = True
.Tile = False
.ColorOutput = idCompositeRGB
.TextAsBlack = False
.SendImageData = idImageDataTypes.idAllImageData
.FontDownloading = idFontDownloading.idComplete
If Err.Number <> 0 Then
Err.Clear
End If
End With
myInDesign.ActiveDocument = myDocument
myDocument.PrintOut True
myDocument.Close idSaveOptions.idNo
Next