2017-05-02 9 views
0

조치 마법사를 사용하여 대량 PDF 문서에 대한 강조 표시를 수행하고 있습니다. 또한 처리 된 날짜 (날짜 작업 마법사 실행)의 PDF 파일에 날짜 스탬프를 추가하고 싶습니다. 매우 가까이에 있다고 생각합니다.Adobe Acrobat 액션 마법사 JavaScript. TextFiled를 만들고 현재 날짜로 TextField를 업데이트 하시겠습니까?

필자는 필요한 텍스트 필드를 만들 수 있지만 작업 마법사에있는 JavaScript 코드를 통해 현재 날짜의 텍스트 필드를 업데이트하는 데 문제가 있습니다. 왜 이것이 필드를 만들지 만 날짜를 추가하지는 않습니까?

var fld = this.getField("MacroDate"); 
if (fld==null) { 
    var f = this.addField("info", "text", 0, [11,11, 61,26]); 
    f.delay = true; 
    f.alignment = "center"; 
    f.fillColor = color.white; 
    f.lineWidth = 1; 
    f.strokeColor = color.black; 
    f.borderStyle = style.s; 
    f.textSize = 14; 
    f.textColor = color.black; 
    f.textFont = font.Arial; 
    f.defaultValue = "MacroDate"; 
    f.editable = false; 
    f.multiline = false; 
    f.doNotScroll = true; 
    f.delay = false; 
    var TodayDate = this.getField("MacroDate"); 
    TodayDate.value = util.printd("mm/dd/yyyy", new date()); 
} 

좀 더 일을 내가 얻을 관리 않았다 파고 후에 작동합니다 :

를이 일을하는 이유는 정확히 잘 모르겠지만, 여기 사람이 그것을 설명하고자하는 경우 코드는 다음과 같습니다

var AcDate = new Date(); 
var AcDateFormat = "mm/dd/yyyy" 

for (var p = 0; p < this.numPages; p++){ 

    var fd = this.addField("xftDate", "text", 0, [10, 10, 100, 25]); 
    fd.value = util.printd(AcDateFormat, AcDate); 
    fd.textSize = 16; 
    fd.readonly = true; 
    fd.alignment = "right"; 
} 
flattenPages(); 
자바 스크립트에서

TodayDate.value = util.printd("mm/dd/yyyy", new date()); 

, 대문자 : 그냥 순간적으로

답변

1

는 문제는 마지막 줄에 상관 없습니다. Date Object가 대문자로 표시됩니다. 그러므로 :

TodayDate.value = util.printd("mm/dd/yyyy", new Date()) ; 

또한 오류가 발생하면 메시지를 받게되는 콘솔을 활성화해야합니다.

+0

어도비 아크로뱃 프로에서 콘솔을 활성화하는 방법을 잘 모르겠습니다. 또한 Date의 대문자 사용은 도움이되지 않았습니다. –

+0

어도비 아크로바트 콘솔에 들어가는 방법을 알아 냈습니다. 지금 문제 해결 중입니다. 나는 그것을 이해할 수없는 경우 오류를 포함하도록 내 질문을 업데이트하기 전에 그것을 조금 어지럽 혀질 것입니다. –

+0

감사합니다. 나는 acrobat에서 콘솔을 여는 방법을 찾았다. 도움. 나는 처음부터 콘솔이 있다는 것을 몰랐다. –

1

필드를 나타내는 변수가 있으므로 값을 설정할 수 있습니다. 다음을 사용하여 약간 단순화 할 수 있습니다.

var fld = this.getField("MacroDate"); 
if (fld = "undefined") { 
    var f = this.addField("MacroDate", "text", 0, [11,11, (72*1.5)+11,26]); 
    f.delay = true; 
    f.alignment = "center"; 
    f.fillColor = color.white; 
    f.lineWidth = 1; 
    f.strokeColor = color.black; 
    f.borderStyle = border.s; 
    f.textSize = 14; 
    f.textColor = color.black; 
    f.textFont = font.Helv; 
    f.readonly = false; 
    f.multiline = false; 
    f.doNotScroll = true; 
    f.value = util.printd("mm/dd/yyyy", new Date()); 
    f.delay = false; 
} 
+0

사실 이런 식으로 시작했습니다. 그것은 저에게 동일한 문제를주고있었습니다. 그래서 다른 옵션을 가지고 노는 것입니다. pdf 파일에 필드를 만들지 만 필드를 현재 날짜로 업데이트하지 않습니다. 그게 뭐든지. –

+0

더 많은 코드 수정으로 내 대답을 업데이트했습니다. 속성에 많은 문제가있었습니다. 실제로 작동 시키면 내용에 맞게 rect를 확장했습니다. – joelgeraci

+0

나는 실제로 내가 가지고 있던 문제를 고쳤다. 문제는 내가 사용하려고했던 글꼴과 더 관련이 있습니다. 웬일인지 그 글꼴을 정말로 좋아하지 않았다. 내 문제를 해결하기 위해 무엇을했는지 보여주는 질문에 편집 섹션을 추가했습니다. –