클라우드에서 프로그래밍 방식으로 Word 문서를 쉽게 편집할 수 있습니다. 문서의 내용을 추가, 편집하거나 Node.js 애플리케이션에서 프로그래밍 방식으로 Word 문서의 텍스트 서식을 적용할 수 있습니다. 이 기사에서는 Node.js에서 REST API를 사용하여 Word 문서를 편집하는 방법에 중점을 둘 것입니다.
이 문서에서는 다음 항목을 다룹니다.
- 문서 편집기 REST API 및 Node.js SDK
- Node.js에서 REST API를 사용하여 Word 문서 편집
- Node.js를 사용하여 Word 문서에 테이블 추가
- Node.js를 사용하여 Word 문서에 이미지 삽입
문서 편집기 REST API 및 Node.js SDK
DOCX 파일을 편집하기 위해 GroupDocs.Editor Cloud의 Node.js SDK API를 사용할 것입니다. Word, Excel 스프레드시트, PowerPoint, TXT, HTML, XML과 같은 지원되는 형식의 문서를 프로그래밍 방식으로 편집할 수 있습니다. API를 사용하면 편집을 위해 문서를 HTML로 변환하고 문서를 편집한 후에도 동일한 모양을 유지하면서 원래 형식으로 다시 변환할 수 있습니다. 또한 Cloud API용 문서 편집기 제품군으로 .NET, Java, PHP, Ruby, Android 및 Python SDK를 제공합니다.
콘솔에서 다음 명령을 사용하여 GroupDocs.Editor Cloud를 Node.js 애플리케이션에 설치할 수 있습니다.
npm install groupdocs-editor-cloud
언급된 단계를 따르기 전에 대시보드에서 클라이언트 ID와 비밀을 얻으십시오. ID와 시크릿이 있으면 아래와 같이 코드를 추가합니다.
global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";
const configuration = new groupdocs_editor_cloud.Configuration(clientId, clientSecret);
configuration.apiBaseUrl = "https://api.groupdocs.cloud";
Node.js에서 REST API를 사용하여 Word 문서 편집
아래에 언급된 간단한 단계에 따라 Word 문서를 편집할 수 있습니다.
문서 업로드
먼저 아래 제공된 코드 예제를 사용하여 Word 문서(DOCX)를 클라우드에 업로드합니다.
// FileApi 구성
let fileApi = groupdocs_editor_cloud.FileApi.fromConfig(configuration);
let resourcesFolder = 'C:\\Files\\sample.docx';
fs.readFile(resourcesFolder, (err, fileStream) => {
let request = new groupdocs_editor_cloud.UploadFileRequest("sample.docx", fileStream, myStorage);
fileApi.uploadFile(request);
});
결과적으로 업로드된 DOCX 파일은 클라우드 대시보드의 파일 섹션에서 사용할 수 있습니다.
Node.js를 사용하여 Word 문서 편집
프로그래밍 방식으로 Word 문서를 편집하려면 아래에 언급된 단계를 따르십시오.
- FileAPI 및 EditAPI의 인스턴스 생성
- FileInfo에 입력 파일 경로를 제공하십시오.
- WordProcessingLoadOptions 만들기
- LoadOptions로 LoadRequest 생성
- EditAPI의 load() 메서드로 파일 불러오기
- 로드된 파일로 DownloadFileRequest 생성
- FileAPI의 downloadFile() 메서드를 사용하여 HTML 문서 다운로드
- 다운로드한 HTML 문서 편집
- UploadFileRequest 만들기
- FileAPI의 uploadFile() 메서드를 사용하여 HTML을 다시 업로드
- DOCX에 저장할 WordProcessingSaveOptions 제공
- SaveOptions로 SaveRequest 만들기
- Edit API의 save() 메서드를 사용하여 HTML을 다시 DOCX에 저장
다음 코드 스니펫은 Node.js에서 REST API를 사용하여 Word 문서를 편집하는 방법을 보여줍니다.
// API 초기화
let editApi = groupdocs_editor_cloud.EditApi.fromKeys(clientId, clientSecret);
let fileApi = groupdocs_editor_cloud.FileApi.fromKeys(clientId, clientSecret);
// 입력 파일
let fileInfo = new groupdocs_editor_cloud.FileInfo();
fileInfo.filePath = "Sample.docx";
// 로드 옵션 정의
let loadOptions = new groupdocs_editor_cloud.WordProcessingLoadOptions();
loadOptions.fileInfo = fileInfo;
loadOptions.outputPath = "output";
// 로드 요청 생성
let loadRequest = new groupdocs_editor_cloud.LoadRequest(loadOptions);
let loadResult = await editApi.load(loadRequest);
// HTML 문서 다운로드
let downloadRequest = new groupdocs_editor_cloud.DownloadFileRequest(loadResult.htmlPath);
let buf = await fileApi.downloadFile(downloadRequest);
let htmlString = buf.toString("utf-8");
// 뭔가 편집...
htmlString = htmlString.replace("Title of the document", "Welcome");
htmlString = htmlString.replace("Subtitle #1", "Hello world");
// html을 저장소에 다시 업로드
let uploadRequest = new groupdocs_editor_cloud.UploadFileRequest(loadResult.htmlPath, new Buffer.from(htmlString, "utf-8"));
await fileApi.uploadFile(uploadRequest);
// html을 docx에 다시 저장
let saveOptions = new groupdocs_editor_cloud.WordProcessingSaveOptions();
saveOptions.fileInfo = fileInfo;
saveOptions.outputPath = "output/edited.docx";
saveOptions.htmlPath = loadResult.htmlPath;
saveOptions.resourcesPath = loadResult.resourcesPath;
// 저장 요청 생성
let saveRequest = new groupdocs_editor_cloud.SaveRequest(saveOptions);
let saveResult = await editApi.save(saveRequest);
console.log("Document edited: " + saveResult.path);
업데이트된 파일 다운로드
위의 코드 샘플은 편집된 Word 문서(DOCX)를 클라우드에 저장합니다. 다음 코드 샘플을 사용하여 다운로드할 수 있습니다.
// 초기화 API
var fileApi = groupdocs_editor_cloud.FileApi.fromConfig(configuration);
// 파일 다운로드 요청 생성
let request = new groupdocs_editor_cloud.DownloadFileRequest("output/edited.docx", myStorage);
// 파일 다운로드
let response = await fileApi.downloadFile(request);
// 작업 디렉토리에 이미지 파일 저장
fs.writeFile("C:\\Files\\edited.docx", response, "binary", function (err) { });
Node.js를 사용하여 Word 문서에 테이블 추가
아래 언급된 단계에 따라 프로그래밍 방식으로 Word 문서에 테이블을 추가할 수 있습니다.
- FileAPI 및 EditAPI의 인스턴스 생성
- FileInfo에 입력 파일 경로를 제공하십시오.
- WordProcessingLoadOptions 만들기
- LoadOptions로 LoadRequest 생성
- EditAPI의 load() 메서드로 파일 로드
- 로드된 파일로 DownloadFileRequest 생성
- FileAPI의 downloadFile() 메서드를 사용하여 HTML 문서 다운로드
- 다운로드한 HTML 문서 편집 and add a table
- UploadFileRequest 만들기
- FileAPI의 uploadFile() 메서드를 사용하여 HTML을 다시 업로드합니다.
- DOCX에 저장할 WordProcessingSaveOptions 제공
- SaveOptions로 SaveRequest 만들기
- EditAPI의 save() 메서드를 사용하여 HTML을 DOCX에 다시 저장
다음 코드 스니펫은 Node.js에서 REST API를 사용하여 Word 문서에 테이블을 추가하는 방법을 보여줍니다.
// API 초기화
let editApi = groupdocs_editor_cloud.EditApi.fromKeys(clientId, clientSecret);
let fileApi = groupdocs_editor_cloud.FileApi.fromKeys(clientId, clientSecret);
// 입력 파일
let fileInfo = new groupdocs_editor_cloud.FileInfo();
fileInfo.filePath = "Sample.docx";
// 로드 옵션 정의
let loadOptions = new groupdocs_editor_cloud.WordProcessingLoadOptions();
loadOptions.fileInfo = fileInfo;
loadOptions.outputPath = "output";
// 로드 요청 생성
let loadRequest = new groupdocs_editor_cloud.LoadRequest(loadOptions);
let loadResult = await editApi.load(loadRequest);
// HTML 문서 다운로드
let downloadRequest = new groupdocs_editor_cloud.DownloadFileRequest(loadResult.htmlPath);
let buf = await fileApi.downloadFile(downloadRequest);
let htmlString = buf.toString("utf-8");
// 테이블 추가
htmlString = htmlString.replace("left-aligned.", "left-aligned. <br/><table style=\"width: 100%;background-color: #dddddd;\">"
+ "<caption style=\"font-weight:bold;\"> Persons List</caption>"
+ "<tr><th>First Name</th><th>Last Name</th><th>Age</th></tr>"
+ "<tr><td>Jill</td><td>Smith</td><td>50</td></tr>"
+ "<tr><td>Eve</td><td>Jackson</td><td>94</td></tr>"
+ "</table>");
// html을 저장소에 다시 업로드
let uploadRequest = new groupdocs_editor_cloud.UploadFileRequest(loadResult.htmlPath, new Buffer.from(htmlString, "utf-8"));
await fileApi.uploadFile(uploadRequest);
// html을 docx에 다시 저장
let saveOptions = new groupdocs_editor_cloud.WordProcessingSaveOptions();
saveOptions.fileInfo = fileInfo;
saveOptions.outputPath = "output/edited.docx";
saveOptions.htmlPath = loadResult.htmlPath;
saveOptions.resourcesPath = loadResult.resourcesPath;
// 저장 요청 생성
let saveRequest = new groupdocs_editor_cloud.SaveRequest(saveOptions);
let saveResult = await editApi.save(saveRequest);
console.log("Document edited: " + saveResult.path);
Node.js를 사용하여 Word 문서에 이미지 삽입
아래 언급된 단계에 따라 프로그래밍 방식으로 Word 문서에 이미지를 삽입할 수 있습니다.
- FileAPI 및 EditAPI의 인스턴스 생성
- FileInfo에 입력 파일 경로를 제공하십시오.
- WordProcessingLoadOptions 만들기
- LoadOptions로 LoadRequest 생성
- EditAPI의 load() 메소드로 파일 불러오기
- 로드된 파일로 DownloadFileRequest 생성
- FileAPI의 downloadFile() 메서드를 사용하여 HTML 문서 다운로드
- 다운로드한 HTML 문서 편집 and insert an image
- UploadFileRequest 만들기
- FileAPI의 uploadFile() 메서드를 사용하여 HTML을 다시 업로드합니다.
- DOCX에 저장할 WordProcessingSaveOptions 제공
- SaveOptions로 SaveRequest 만들기
- EditAPI의 save() 메서드를 사용하여 HTML을 DOCX에 다시 저장
다음 코드 스니펫은 Node.js에서 REST API를 사용하여 Word 문서에 이미지를 삽입하는 방법을 보여줍니다.
// API 초기화
let editApi = groupdocs_editor_cloud.EditApi.fromKeys(clientId, clientSecret);
let fileApi = groupdocs_editor_cloud.FileApi.fromKeys(clientId, clientSecret);
// 입력 파일
let fileInfo = new groupdocs_editor_cloud.FileInfo();
fileInfo.filePath = "Sample.docx";
// 로드 옵션 정의
let loadOptions = new groupdocs_editor_cloud.WordProcessingLoadOptions();
loadOptions.fileInfo = fileInfo;
loadOptions.outputPath = "output";
// 로드 요청 생성
let loadRequest = new groupdocs_editor_cloud.LoadRequest(loadOptions);
let loadResult = await editApi.load(loadRequest);
// HTML 문서 다운로드
let downloadRequest = new groupdocs_editor_cloud.DownloadFileRequest(loadResult.htmlPath);
let buf = await fileApi.downloadFile(downloadRequest);
let htmlString = buf.toString("utf-8");
// 이미지 삽입
htmlString = htmlString.replace("left-aligned.", "left-aligned. <br/> <img src=\"sample.png\" alt=\"signatures\" style=\"width: 128px; height: 128px;\">");
// html을 저장소에 다시 업로드
let uploadRequest = new groupdocs_editor_cloud.UploadFileRequest(loadResult.htmlPath, new Buffer.from(htmlString, "utf-8"));
await fileApi.uploadFile(uploadRequest);
// html을 docx에 다시 저장
let saveOptions = new groupdocs_editor_cloud.WordProcessingSaveOptions();
saveOptions.fileInfo = fileInfo;
saveOptions.outputPath = "output/edited.docx";
saveOptions.htmlPath = loadResult.htmlPath;
saveOptions.resourcesPath = loadResult.resourcesPath;
// 저장 요청 생성
let saveRequest = new groupdocs_editor_cloud.SaveRequest(saveOptions);
let saveResult = await editApi.save(saveRequest);
console.log("Document edited: " + saveResult.path);
온라인 시도
위의 API를 사용하여 개발된 다음 무료 온라인 DOCX 편집 도구를 사용해 보십시오. https://products.groupdocs.app/editor/docx
결론
이 기사에서는 클라우드에서 Word 문서를 편집하는 방법을 배웠습니다. Node.js에서 REST API를 사용하여 DOCX 파일에 테이블을 추가하는 방법도 배웠습니다. 또한 프로그래밍 방식으로 Word 문서에 이미지를 삽입하는 방법을 배웠습니다. 이 기사에서는 프로그래밍 방식으로 DOCX 파일을 클라우드에 업로드한 다음 클라우드에서 편집된 파일을 다운로드하는 방법도 설명했습니다. 문서를 사용하여 GroupDocs.Editor Cloud API에 대해 자세히 알아볼 수 있습니다. 또한 브라우저를 통해 직접 API를 시각화하고 상호 작용할 수 있는 API 참조 섹션을 제공합니다. 모호한 점이 있으면 언제든지 포럼으로 문의해 주십시오.