[KOR] Process of JS in PDF at Adobe

mntly·2024년 8월 21일
0

[그림 1] Adobe에서 PDF에 내장된 JS script를 처리하는 과정


  • PDF는 내장 JavaScript code를 가질 수 있고, Adobe는 이를 실행한다.
  • PDF에 내장된 JS Script는 JS Engine인 SpiderMonkey가 Adobe의 EScript.api 모듈을 이용해 실행한다.
    • Adobe에서 사용하는 JS Engine인 SpiderMonkey는 C++로 구현되었다.
  • 만약 PDF에 URL이 지정되어 있다면 Adobe는 IA32.api 모듈로 URL 관련 작업 및 인터넷 접속을 수행한다.
  • PDF는 Adobe에게 두 종류의 URL을 전달할 수 있다.
    1. base URL

      • https://…와 같이 URL의 base를 나타낸다.
      • base URL은 PDF 파일 내부에서 객체로 설정하며 Adobe로 전달할 수 있다.
      11 0 obj
      <<
      /Base <FEFF68747470733A2F2F7777772E61612E636F6D2F414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141412F>
      >>
      endobj

    1. relative URL

      • base URL 뒤에 나오는 URL을 나타낸다.
      • PDF에서는 내장된 JS script에서 relative URL을 인터넷 엑세스 관련 함수의 인자로 이용하면, relative URL을 Adobe로 전달할 수 있다.
      • 이때 this.submitForm(), app.launchURL()와 같은 JS code를 사용한다.
      try {
        this.submitForm('relative URL');
      } catch (err) { }

피드백은 언제나 환영합니다

0개의 댓글