แยกเอกสาร PDF โดยใช้ REST API ใน Node.js

คุณอาจต้องแยกไฟล์ PDF ออกเป็นหลายๆ ไฟล์โดยทางโปรแกรม ด้วยการแยกเอกสาร PDF คุณสามารถแยกและแบ่งปันข้อมูลเฉพาะหรือชุดข้อมูลกับผู้มีส่วนได้ส่วนเสียได้อย่างง่ายดาย ในฐานะนักพัฒนา Node.js คุณสามารถแยกเอกสาร PDF ออกเป็นหลายเอกสารบนคลาวด์ได้ ในบทความนี้ คุณจะได้เรียนรู้วิธีแยกเอกสาร PDF โดยใช้ REST API ใน Node.js

หัวข้อต่อไปนี้จะครอบคลุมในบทความนี้:

PDF Splitter REST API และ Node.js SDK

สำหรับการแยกไฟล์ PDF ฉันจะใช้ API ของ Node.js SDK ของ GroupDocs.Merger Cloud ช่วยให้คุณสามารถแยก รวม ลบ และจัดเรียงหน้าเดียวหรือหลายหน้าจาก รูปแบบเอกสารที่รองรับ จาก Word, Excel, PowerPoint, ภาพวาด Visio, PDF และ HTML

คุณสามารถติดตั้ง GroupDocs.Merger Cloud ลงในแอปพลิเคชัน Node.js ของคุณโดยใช้คำสั่งต่อไปนี้ในคอนโซล:

npm install groupdocs-merger-cloud

โปรด รับรหัสลูกค้าและข้อมูลลับจากแดชบอร์ด ก่อนทำตามขั้นตอนดังกล่าว เมื่อคุณมี ID และรหัสลับของคุณแล้ว ให้เพิ่มรหัสตามที่แสดงด้านล่าง:

global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";

const configuration = new groupdocs_merger_cloud.Configuration(clientId, clientSecret);
configuration.apiBaseUrl = "https://api.groupdocs.cloud";

แยกเอกสาร PDF เป็นเอกสารหน้าเดียวโดยใช้ REST API ใน Node.js

คุณสามารถแยกไฟล์ PDF โดยทางโปรแกรมบนคลาวด์โดยทำตามขั้นตอนง่าย ๆ ที่กล่าวถึงด้านล่าง:

อัปโหลดไฟล์ PDF

ขั้นแรก อัปโหลดไฟล์ PDF ไปยัง Cloud โดยใช้ตัวอย่างโค้ดด้านล่าง:

// สร้าง FileApi
let fileApi = groupdocs_merger_cloud.FileApi.fromConfig(configuration);
let file = 'C:\\Files\\merger\\ten-pages.pdf';

// อ่านไฟล์ทีละไฟล์
fs.readFile(file, (err, fileStream) => {
  // สร้างคำขออัปโหลดไฟล์
  let request = new groupdocs_merger_cloud.UploadFileRequest("ten-pages.pdf", fileStream, myStorage);
  // อัพโหลดไฟล์
  fileApi.uploadFile(request)
});

ด้วยเหตุนี้ ไฟล์ PDF ที่อัปโหลดจะอยู่ใน ส่วนไฟล์ ของแดชบอร์ดของคุณบนระบบคลาวด์

แยกเอกสาร PDF โดยใช้ REST API ใน Node.js

คุณสามารถแยกหน้าของไฟล์ PDF ใดๆ ออกเป็นเอกสาร PDF ที่แยกจากกันซึ่งประกอบด้วยหนึ่งหน้าในเอกสารโดยทางโปรแกรมโดยทำตามขั้นตอนด้านล่าง:

  • สร้างอินสแตนซ์ของ DocumentApi
  • สร้างอินสแตนซ์ของ FileInfo
  • จากนั้นกำหนดเส้นทางไปยังไฟล์ PDF อินพุต
  • สร้างอินสแตนซ์ของ SplitOptions
  • จากนั้นกำหนด FileInfo ให้กับ SplitOptions
  • กำหนดหมายเลขหน้าเฉพาะในอาร์เรย์ที่คั่นด้วยเครื่องหมายจุลภาคเพื่อแยกเอกสาร
  • ตั้งค่าโหมดแยกเอกสารเป็น Pages อนุญาตให้ API แยกหมายเลขหน้าที่กำหนดในอาร์เรย์ที่คั่นด้วยเครื่องหมายจุลภาคเป็นเอกสาร PDF แยกต่างหาก
  • สร้าง SplitRequest ด้วย SplitOptions
  • สุดท้าย เรียกเมธอด DocumentAPI.split() ด้วย SplitRequest และรับผลลัพธ์

ข้อมูลโค้ดต่อไปนี้แสดงวิธีแยกไฟล์ PDF โดยใช้ REST API ใน Node.js

// การเริ่มต้น API
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

// ระบุเส้นทางไฟล์อินพุต
let fileInfo = new groupdocs_merger_cloud.FileInfo();
fileInfo.filePath = "ten-pages.pdf";

// กำหนดตัวเลือกการแยก
let options = new groupdocs_merger_cloud.SplitOptions();
options.fileInfo = fileInfo;
options.outputPath = "Output";
options.pages = [1, 3];
options.mode = groupdocs_merger_cloud.SplitOptions.ModeEnum.Pages;

// สร้างคำขอแยก
let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);

// แยกเอกสาร
let result = await documentApi.split(splitRequest);
result.documents.forEach(element => {
  console.log("Document Path: " + element.path);
});
แยกไฟล์ PDF เป็นเอกสารหน้าเดียวโดยใช้ Node.js

แยกไฟล์ PDF เป็นเอกสารหน้าเดียวโดยใช้ Node.js

ดาวน์โหลดไฟล์แยก

ตัวอย่างโค้ดด้านบนจะบันทึกไฟล์ที่แยกไว้บนคลาวด์ คุณสามารถดาวน์โหลดได้โดยใช้ตัวอย่างโค้ดต่อไปนี้:

// เริ่มต้น API
let fileApi = groupdocs_merger_cloud.FileApi.fromConfig(configuration);
let folderApi = new groupdocs_merger_cloud.FolderApi(configuration);

// ดึงรายการไฟล์
var listRequest = new groupdocs_merger_cloud.GetFilesListRequest("Output", myStorage);
let res = await folderApi.getFilesList(listRequest);
res.value.forEach(element => {
  // ดาวน์โหลดไฟล์
  var request = new groupdocs_merger_cloud.DownloadFileRequest(element.name, myStorage);
  fileApi.downloadFile(request)
    .then(function (response) {
      // บันทึกไฟล์รูปภาพในไดเร็กทอรีการทำงาน
      fs.writeFile("C:\\Files\\merger\\downloads\\" + element.name, response, "binary", function (err) { });
      console.log("Expected response type is Stream: " + response.length);
    })
    .catch(function (error) {
      console.log("Error: " + error.message);
    });
});

แยกไฟล์ PDF เป็นเอกสาร PDF หลายหน้าโดยใช้ Node.js

คุณสามารถแยกไฟล์ PDF เป็นเอกสาร PDF หลายหน้าโดยทางโปรแกรมโดยทำตามขั้นตอนด้านล่าง:

  • สร้างอินสแตนซ์ของ DocumentApi
  • สร้างอินสแตนซ์ของ FileInfo
  • จากนั้นกำหนดเส้นทางไปยังไฟล์ PDF อินพุต
  • สร้างอินสแตนซ์ของ SplitOptions
  • จากนั้นกำหนด FileInfo ให้กับ SplitOptions
  • กำหนดช่วงเวลาของหมายเลขหน้าจากตำแหน่งที่จะแยกในอาร์เรย์ที่คั่นด้วยเครื่องหมายจุลภาค
  • ตั้งค่าโหมดแยกเอกสารเป็นช่วงเวลา อนุญาตให้ API แยกหน้าเอกสารตามช่วงเวลาของหน้าที่กำหนดในอาร์เรย์ที่คั่นด้วยเครื่องหมายจุลภาค
  • สร้าง SplitRequest ด้วย SplitOptions
  • สุดท้าย เรียกเมธอด DocumentAPI.split() ด้วย SplitRequest และรับผลลัพธ์

ข้อมูลโค้ดต่อไปนี้แสดงวิธีแยกไฟล์ PDF เป็นเอกสาร PDF หลายหน้าโดยใช้ REST API ใน Node.js

// การเริ่มต้น API
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

// ระบุเส้นทางไฟล์อินพุต
let fileInfo = new groupdocs_merger_cloud.FileInfo();
fileInfo.filePath = "ten-pages.pdf";

// กำหนดตัวเลือกการแยก
let options = new groupdocs_merger_cloud.SplitOptions();
options.fileInfo = fileInfo;
options.outputPath = "Output";
options.pages = [3, 6, 8];
options.mode = groupdocs_merger_cloud.SplitOptions.ModeEnum.Intervals;

// สร้างคำขอแยก
let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);

// แยกเอกสาร
let result = await documentApi.split(splitRequest);
result.documents.forEach(element => {
  console.log("Document splitted: " + element.path);
});
แยกไฟล์ PDF เป็นเอกสาร PDF หลายหน้าโดยใช้ Node.js

แยกไฟล์ PDF เป็นเอกสาร PDF หลายหน้าโดยใช้ Node.js

แยกหน้าตามช่วงหน้าโดยใช้ REST API ใน Node.js

คุณสามารถแยกและบันทึกหน้าจากไฟล์ PDF โดยระบุช่วงของหมายเลขหน้าโดยทางโปรแกรมโดยทำตามขั้นตอนด้านล่าง:

  • สร้างอินสแตนซ์ของ DocumentApi
  • สร้างอินสแตนซ์ของ FileInfo
  • จากนั้นกำหนดเส้นทางไปยังไฟล์ PDF อินพุต
  • สร้างอินสแตนซ์ของ SplitOptions
  • จากนั้นกำหนด FileInfo ให้กับ SplitOptions
  • กำหนดหมายเลขหน้าเริ่มต้นและหมายเลขหน้าสิ้นสุด
  • ตั้งค่าโหมดแยกเอกสารเป็น Pages
  • สร้าง SplitRequest ด้วย SplitOptions
  • สุดท้าย เรียกเมธอด DocumentAPI.split() ด้วย SplitRequest และรับผลลัพธ์

ข้อมูลโค้ดต่อไปนี้แสดงวิธีแยกไฟล์ PDF ตามช่วงหมายเลขหน้าโดยใช้ REST API ใน Node.js

// การเริ่มต้น API
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

let fileInfo = new groupdocs_merger_cloud.FileInfo();
fileInfo.filePath = "ten-pages.pdf";

// กำหนดตัวเลือกการแยก
let options = new groupdocs_merger_cloud.SplitOptions();
options.fileInfo = fileInfo;
options.outputPath = "Output";
options.startPageNumber = 3;
options.endPageNumber = 7;
options.mode = groupdocs_merger_cloud.SplitOptions.ModeEnum.Pages;

// สร้างคำขอแยก
let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);

// แยกเอกสาร
let result = await documentApi.split(splitRequest);
result.documents.forEach(element => {
  console.log("Document splitted: " + element.path);
});
แยกหน้าตามช่วงหน้าโดยใช้ REST API ใน Node.js

แยกหน้าตามช่วงหน้าโดยใช้ REST API ใน Node.js

ลองออนไลน์

โปรดลองใช้เครื่องมือแยก PDF ออนไลน์ฟรีต่อไปนี้ ซึ่งพัฒนาโดยใช้ API ด้านบน https://products.groupdocs.app/splitter/pdf/

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีแยกเอกสาร PDF โดยใช้ REST API บนคลาวด์ นอกจากนี้ คุณได้เห็นวิธีแยกไฟล์ PDF เป็นเอกสาร PDF หลายหน้าโดยทางโปรแกรม บทความนี้ยังอธิบายวิธีอัปโหลดไฟล์ PDF ไปยังระบบคลาวด์โดยทางโปรแกรม จากนั้นดาวน์โหลดไฟล์ที่แยกจากกันจากระบบคลาวด์ API ยังช่วยให้คุณสามารถจัดลำดับใหม่หรือแทนที่หน้าเอกสาร เปลี่ยนการวางแนวหน้า จัดการรหัสผ่านของเอกสาร และดำเนินการจัดการอื่นๆ ได้อย่างง่ายดายสำหรับรูปแบบไฟล์ที่รองรับ นอกจากนี้ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ GroupDocs.Merge Cloud API โดยใช้ เอกสารประกอบ นอกจากนี้ เรายังมีส่วน การอ้างอิง API ที่ช่วยให้คุณแสดงภาพและโต้ตอบกับ API ของเราได้โดยตรงผ่านเบราว์เซอร์ ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราได้ที่ ฟอรัม

ดูสิ่งนี้ด้วย