PDF/A를 PDF 형식으로 변환

PDF/A를 PDF 형식으로 변환


  /*웹 워커 생성*/
    const AsposePDFWebWorker = new Worker("AsposePDFforJS.js");
    AsposePDFWebWorker.onerror = evt => console.log(`웹 워커 오류: ${evt.message}`);
    AsposePDFWebWorker.onmessage = evt => document.getElementById('output').textContent = 
      (evt.data == 'ready') ? '로드 완료!' :
        (evt.data.json.errorCode == 0) ? `결과:\n${DownloadFile(evt.data.json.fileNameResult, "application/pdf", evt.data.params[0])}` : `오류: ${evt.data.json.errorText}`;

    /*이벤트 핸들러*/
    const ffilePdfAConvertToPDF = e => {
      const file_reader = new FileReader();
      file_reader.onload = event => {
        /*PDF/A 파일을 PDF로 변환하고 "ResultConvertToPDF.pdf"로 저장 - 웹 워커 요청*/
        AsposePDFWebWorker.postMessage({ "operation": 'AsposePdfAConvertToPDF', "params": [event.target.result, e.target.files[0].name, "ResultConvertToPDF.pdf"] }, [event.target.result]);
      };
      file_reader.readAsArrayBuffer(e.target.files[0]);
    };
  /// [코드 스니펫]

    /*결과 파일을 다운로드할 링크 생성*/
    const DownloadFile = (filename, mime, content) => {
        mime = mime || "application/octet-stream";
        var link = document.createElement("a"); 
        link.href = URL.createObjectURL(new Blob([content], {type: mime}));
        link.download = filename;
        link.innerHTML = "파일 " + filename + " 다운로드하려면 여기를 클릭하세요";
        document.body.appendChild(link); 
        document.body.appendChild(document.createElement("br"));
        return filename;
      }

다음의 JavaScript 코드 스니펫은 PDF/A를 PDF로 변환하는 간단한 예제를 보여줍니다:

  1. 변환할 PDF 파일을 선택합니다.
  2. ‘FileReader’를 생성합니다.
  3. AsposePdfAConvertToPDF 함수가 실행됩니다.
  4. 결과 파일의 이름을 설정합니다. 이 예제에서는 “ResultConvertToPDFA.pdf"입니다.
  5. 다음으로, ‘json.errorCode’가 0이면, DownloadFile은 앞서 지정한 이름을 받습니다. ‘json.errorCode’ 매개변수가 0이 아니고, 이에 따라 파일에 오류가 있는 경우, 이러한 오류에 대한 정보는 ‘json.errorText’ 파일에 포함됩니다.
  6. 결과적으로, DownloadFile 함수는 링크를 생성하고 사용자의 운영 체제로 결과 파일을 다운로드할 수 있게 합니다.

    var ffilePdfAConvertToPDF = function (e) {
      const file_reader = new FileReader();
      file_reader.onload = (event) => {
        /*PDF/A 파일을 PDF로 변환하고 "ResultConvertToPDF.pdf"로 저장*/
        const json = AsposePdfAConvertToPDF(event.target.result, e.target.files[0].name, "ResultConvertToPDF.pdf");
        if (json.errorCode == 0) document.getElementById('output').textContent = json.fileNameResult;
        else document.getElementById('output').textContent = json.errorText;
        /*결과 파일을 다운로드할 링크 생성*/
        DownloadFile(json.fileNameResult, "application/pdf");
      };
      file_reader.readAsArrayBuffer(e.target.files[0]);
    };