2017-02-21 31 views
5

Я не могу заставить мой PDF работать в сети с помощью Adobe Reader DC.PDF JavaScript не работает в Adobe Reader DC, но все остальные читатели

http://www.okeechobeecountytaxcollector.com/Documents/FeeCalculatorRev0909.pdf

Ни одна из кнопок или функциональных возможностей не работает. (Например, когда вы нажимаете motorvehicles, или мобильные дома или какие-либо из этих кнопок сверху, предполагается, что вы выбрали варианты выбора). Но если я открою в любом другом читателе, он отлично работает. Кто-нибудь знает, как я могу редактировать документ для правильной работы в Adobe Reader DC? Есть ли какие-либо настройки в документе или что-то, что вам нужно изменить для работы в DC?

Я попытался изменить настройки в разделе безопасности на Acrobat X и позже, но это также не исправило его.

+0

Без рабочей ссылки на ваш pdf это чистое догадки. – mkl

+0

Часто люди используют общедоступные диски Google или Dropbox. – mkl

+0

Ваш документ зашифрован. Пожалуйста, поделитесь паролем. – mkl

ответ

4

После проверки вашего документа PDF в отладчике Adobe DC JavaScript, я боюсь, что существует только целая куча синтаксических ошибок. Когда вы исправляете один набор синтаксических ошибок, появляется целый новый набор синтаксических ошибок. Из того, что я могу сказать (кто-то может надеяться подтвердить это), заключается в том, что интерпретаторы JavaScript в более старых версиях Adobe менее строги относительно того, как они интерпретируют язык, поэтому ваши формы работают в более старых версиях, но их останавливают последние переводчики в Acrobat DC.

Когда я проверяю JavaScript, который бросает ошибки, я не только замечаю, что Adrobat DC действительно хочет, чтобы вы завершаете свои JavaScript-инструкции точками с запятой (что иногда делает ваш код), но я также нахожу очень странные конструкции, некоторые из которых заставили бы меня поверить, что даже если ваши формы технически не выдают никаких ошибок в более старых версиях Acrobat, вы можете обнаружить, что формы в действительности не работают должным образом в более старых версиях.

Таким образом, чтобы исправить эти ошибки и получить ваши формы в Adobe Acrobat DC, вам придется очистить все возникающие ошибки, что означает перенос (обновление) вашего стиля кодирования в соответствии с новым уровнем строгость во время работы Acrobat DC.

Например, когда я в первый раз открыть форму, используя отладчик JavaScript в Acrobat DC, я получаю следующие ошибки в списке:

 
    SyntaxError: missing ; before statement 
121:Document-Level:CreditCalcException in line 5 of function top_level, script Page-Actions:Page1:Page Open:Action4 
ReferenceError: Loaded is not defined 
5:Page-Actions:Page1:Page Open:Action4Exception in line 2 of function top_level, script AcroForm:LoadCountyLock:Annot1:OnBlur:Action1 
ReferenceError: FormNumber is not defined 
2:AcroForm:LoadCountyLock:Annot1:OnBlur:Action1Exception in line 10 of function top_level, script AcroForm:ButtonMonth1.3.0:Annot1:MouseUp:Action2 
ReferenceError: MonthsNumber is not defined 
10:AcroForm:ButtonMonth1.3.0:Annot1:MouseUp:Action2Exception in line 10 of function top_level, script AcroForm:ButtonMonth1.0.0:Annot1:MouseUp:Action2 
Exception in line 10 of function top_level, script AcroForm:ButtonMonth1.1.0:Annot1:MouseUp:Action2 
ReferenceError: MonthsNumber is not defined 
10:AcroForm:ButtonMonth1.0.0:Annot1:MouseUp:Action2 
SyntaxError: missing ; before statement 
121:Document-Level:CreditCalc 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: missing ; before statement 
121: 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
77:AcroForm:DynolistHS:Annot1:MouseUp:Action2 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56: 
SyntaxError: class is a reserved identifier 
56: 
SyntaxError: class is a reserved identifier 
56: 
SyntaxError: class is a reserved identifier 
56: 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: missing ; before statement 
121: 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
56:Document-Level:SVCFees 
SyntaxError: class is a reserved identifier 
138:AcroForm:DynolistVehicle:Annot1:MouseUp:Action1 

enter image description here

Обратите внимание, как у вас есть все эти ошибки, как:

 
    SyntaxError: class is a reserved identifier 
    SyntaxError: missing ; before statement 

Это хорошие индикаторы, что новый интерпретатор JavaScript в DC держит JS на более высоком уровне и использует более новый язык fea как и ключевое слово class, и наложение соглашения о том, что точки с запятой должны использоваться для завершения операторов.

Когда вы продолжаете щелкать по PDF-файлу, отладчик JavaScript начинает жаловаться на еще большее количество ошибок одинаково (отсутствующие точки с запятой, функции, которые не определены и т. Д.), Поэтому исправление одной проблемы показывает только отверстие другого кролика, но идентичные проблемы.

Таким образом, я бы сказал, что самый быстрый путь к обновлению этой формы и готов к последней версии DC - это пройти через ваши скрипты и применить некоторые соглашения или листинг, чтобы начать очистку синтаксиса (завершение всех операторов точкой с запятой, и т.д). После того как вы очистили синтаксис, интерпретатор JavaScript, скорее всего, начнет находить объявления функций, которые он не смог найти раньше (из-за того, что он рассматривал недействительный синтаксис), что (надеюсь) очистит «функцию, не определенную» "ошибки.

Кроме того, я бы просто сделать некоторые общие испытания, что ваши формы работы, как вы собираетесь, потому что я вижу странный JavaScript, как этот образец взят из CreditCalc функции:

enter image description here

Обратите внимание, что разрыв между линии 123 и 125? Это странно выглядящий JavaScript для моих глаз, и из того, что я вижу, код, который сидит в этом «плавающем» объекте в строке 125, никогда не ударит, он просто существует, но никогда не будет служить цели, это должно быть страшно для вас.

Странные конструкции, подобные плавающим по всем вашим скриптам, наряду с другими ошибками, которые могут потенциально привести к неожиданным поведением, например, с использованием != 0 вместо !== 0.

Так что я боюсь, что здесь нет простого ответа, вам, вероятно, придется сделать много очистки до того, как Acrobat DC позволит вам запустить эту форму.