패키지 설치

이제 아래 코드 조각과 같이 npm install 명령을 사용하여 일부 패키지를 설치합니다.

{
    "name": "adobedocumentservicesapis",
    "version": "1.0.0",
    "description": "",
    "main": "index.js",
    "directories": {
    "test": "test"
    },
    "dependencies": {
    "body-parser": "^1.19.0",
    "config": "^3.3.6",
    "express": "^4.17.1",
    "hbs": "^4.1.1",
    "mongoose": "^5.12.1",
    "morgan": "^1.10.0",
    "multer": "^1.4.2",
    "path": "^0.12.7"
    },
    "devDependencies": {},
    "scripts": {
    "start": "set NODE_ENV=dev && node index.js"
    },
    "repository": {
    "type": "git",
    "url": "git+https://github.com/agavitalis/AdobeDocumentServicesAPIs.git"
    },
    "author": "Ogbonna Vitalis",
    "license": "ISC",
    "bugs": {
    "url": "https://github.com/agavitalis/AdobeDocumentServicesAPIs/issues"
    },
    "homepage": "https://github.com/agavitalis/AdobeDocumentServicesAPIs#readme"
}
###bash
npm install express mongoose config body-parser morgan multer hbs path pdf-parse
Ensure that the content of your package.json file is similar to this code snippet:
###package.json
{

이러한 코드 조각은 보기에 대한 핸들 템플릿 엔진을 포함하여 응용 프로그램 종속성을 설치합니다. scripts 태그에서 응용 프로그램의 런타임 매개 변수를 구성합니다.

Acrobat Services API 통합 중

Acrobat Services에는 세 개의 API가 포함되어 있습니다.

  • Adobe PDF Services API

  • Adobe PDF 포함 API

  • Adobe 문서 생성 API

이러한 API는 클라우드 기반 웹 서비스 세트를 통해 PDF 콘텐츠의 생성, 조작 및 변형을 자동화합니다.

자격 증명을 얻으려면 등록하고 워크플로를 완료해야 합니다. PDF Embed API는 무료로 사용할 수 있습니다. PDF 서비스 API 및 문서 생성 API는 6개월간 무료입니다. 체험 기간이 종료되면 문서 트랜잭션당 단 $0.05의 비용으로 종량제를 사용할 수 있습니다. 회사가 성장하고 더 많은 계약을 처리할 때만 비용을 지불합니다.

자격 증명을 만드는 스크린샷

가입을 완료하면 API 자격 증명이 포함된 코드 샘플이 PC에 다운로드됩니다. 이 코드 샘플을 추출하고 private.key 및 pdftools-api-credentials.json 파일을 응용 프로그램의 루트 디렉터리에 배치합니다.

이제 응용 프로그램의 루트 디렉터리에서 터미널을 사용하여 npm install --save @adobe/documentservices-pdftools-node-sdk 명령을 실행하여 PDF 서비스 Node.js SDK을(를) 설치합니다.

PDF 만들기

Acrobat Services은(는) Microsoft Office 문서(Word, Excel, PowerPoint)와 .txt, .rtf, .bmp, .jpg, .gif, .tiff, .png와 같은 지원되는 파일 형식에서 PDF 만들기를 지원합니다.

지원되는 파일 형식에서 PDF 문서를 만들려면 이 양식을 사용하여 문서를 업로드합니다. GitHub에서 양식의 HTML 및 CSS 파일에 액세스할 수 있습니다.

웹 양식의 스크린샷

이제 controllers/createPDFController.js 파일에 다음 코드 조각을 추가합니다. 이 코드는 문서를 검색하고 이를 PDF으로 변환합니다.

원본 파일과 변형된 파일은 응용 프로그램 내의 폴더에 저장됩니다.

const PDFToolsSdk = require('@adobe/documentservices-pdftools-node-sdk');
/*
* GET / route to show the createPDF form.
*/
function createPDF(req, res) {
//catch any response on the url
let response = req.query.response
res.render('index', { response })
}
/*
* POST /createPDF to create a new PDF File.
*/
function createPDFPost(req, res) {
let filePath = req.file.path;
let fileName = req.file.filename;
try {
// Initial setup, create credentials instance.
const credentials = PDFToolsSdk.Credentials
.serviceAccountCredentialsBuilder()
.fromFile("pdftools-api-credentials.json")
.build();
// Create an ExecutionContext using credentials and create a new operation
instance.
const executionContext = PDFToolsSdk.ExecutionContext.create(credentials),
createPdfOperation = PDFToolsSdk.CreatePDF.Operation.createNew();
// Set operation input from a source file.
const input = PDFToolsSdk.FileRef.createFromLocalFile(filePath);
createPdfOperation.setInput(input);
// Execute the operation and Save the result to the specified location.
createPdfOperation.execute(executionContext)
.then((result) => {
result.saveAsFile('output/createPDFFromDOCX.pdf')
//download the file
res.redirect('/?response=PDF Successfully created')
})
.catch(err => {
if (err instanceof PDFToolsSdk.Error.ServiceApiError
|| err instanceof PDFToolsSdk.Error.ServiceUsageError) {
console.log('Exception encountered while executing operation',
err);
} else {
console.log('Exception encountered while executing operation',
err);
}
});
} catch (err) {
console.log('Exception encountered while executing operation', err);
}
}
//export all the functions
module.exports = { createPDF, createPDFPost };

이 코드 조각에는 PDF 서비스 Node.js SDK가 필요합니다. 다음 기능을 사용합니다.

  • createPDF - 문서 업로드 양식 표시

  • createPDFPost - 업로드된 문서를 PDF으로 변환합니다.

변형된 PDF 문서는 출력 디렉토리에 저장되고 원본 파일은 업로드 디렉토리에 저장됩니다.