Thêm Bảng vào PDF trong Node.js SDK
API cho làm việc với Bảng trong tài liệu PDF sử dụng Cloud Node.js SDK
Get StartedCách thêm Bảng vào PDF qua Node.js SDK
Để thêm Bảng vào PDF, chúng tôi sẽ sử dụng Aspose.PDF Cloud Node.js SDK. SDK này hỗ trợ lập trình viên Node.js phát triển các ứng dụng tạo, chú thích, chỉnh sửa và chuyển đổi PDF trên nền tảng đám mây sử dụng ngôn ngữ lập trình Node.js thông qua Aspose.PDF REST API. Chỉ cần tạo một tài khoản tại Aspose for Cloud và lấy thông tin ứng dụng của bạn. Khi bạn có App SID & key, bạn đã sẵn sàng sử dụng Aspose.PDF Cloud Node.js SDK.
Lệnh Package Manager Console
npm install asposepdfcloud --save
Các bước thêm Bảng vào PDF qua Cloud Node.js
Các nhà phát triển Aspose.PDF Cloud có thể dễ dàng tải & thêm Bảng vào PDF chỉ với vài dòng mã.
- Đọc tệp PDF cục bộ.
- Tải lên tệp PDF vào kho lưu trữ Aspose PDF Cloud.
- Tạo bảng với bố cục mong muốn.
- Tải xuống tệp PDF đã cập nhật từ kho lưu trữ Aspose PDF Cloud.
Thêm Bảng vào PDF sử dụng Node.js
import credentials from "../../../../Credentials/credentials.json" with { type: "json" };
import fs from 'node:fs/promises';
import path from 'node:path';
import { PdfApi } from "../../../src/api/api.js";
import { Table } from "../../../src/models/table.js";
import { Cell } from "../../../src/models/cell.js";
import { FontStyles } from "../../../src/models/fontStyles.js";
import { GraphInfo } from "../../../src/models/graphInfo.js";
import { Row } from "../../../src/models/row.js";
import { TextRect } from "../../../src/models/textRect.js";
const configParams = {
LOCAL_FOLDER: "C:\\Samples\\",
PDF_DOCUMENT_NAME: "sample.pdf",
LOCAL_RESULT_DOCUMENT_NAME: "output_sample.pdf",
PAGE_NUMBER: 2, // Your document page number...
TABLE_ROWS: 5,
TABLE_COLUMNS: 5,
};
const pdfApi = new PdfApi(credentials.id, credentials.key);
const pdfTables = {
async uploadDocument () {
const fileNamePath = path.join(configParams.LOCAL_FOLDER, configParams.PDF_DOCUMENT_NAME);
const pdfFileData = await fs.readFile(fileNamePath);
await pdfApi.uploadFile(configParams.PDF_DOCUMENT_NAME, pdfFileData);
console.log("File '" + configParams.PDF_DOCUMENT_NAME + "' successfully uploaded!");
},
async downloadResult () {
const changedPdfData = await pdfApi.downloadFile(configParams.PDF_DOCUMENT_NAME);
const filePath = path.join(configParams.LOCAL_FOLDER, configParams.LOCAL_RESULT_DOCUMENT_NAME);
await fs.writeFile(filePath, changedPdfData.body);
console.log("Downloaded: " + filePath);
},
initTable () {
const numOfCols = configParams.TABLE_COLUMNS;
const numOfRows = configParams.TABLE_ROWS;
const headerTextState = {
font: "Arial Bold",
fontSize: 11,
foregroundColor: { a: 0xFF, r: 0xFF, g: 0xFF, b: 0xFF },
fontStyle: FontStyles.Bold,
};
const commonTextState = {
font: "Arial Bold",
fontSize: 11,
foregroundColor: { a: 0xFF, r: 0x70, g: 0x70, b: 0x70 },
};
const table = new Table();
table.rows = [];
let colWidths = "";
for (let colIndex = 0; colIndex < numOfCols; colIndex++)
{
colWidths += " 70";
}
table.columnWidths = colWidths;
const borderTableBorder = new GraphInfo();
borderTableBorder.color = { a: 0xFF, r: 0x00, g: 0xFF, b: 0x00 };
borderTableBorder.lineWidth = 0.5;
table.defaultCellBorder = {
top: borderTableBorder,
right: borderTableBorder,
bottom: borderTableBorder,
left: borderTableBorder,
roundedBorderRadius: 0
};
table.left = 150;
table.top = 250;
for (let rowIndex = 0; rowIndex < numOfRows; rowIndex++)
{
const row = new Row();
row.cells = [];
for (let colIndex = 0; colIndex < numOfCols; colIndex++)
{
const cell = new Cell();
cell.defaultCellTextState = commonTextState;
if (rowIndex == 0) // header cells
{
cell.backgroundColor = { a: 0xFF, r: 0x80, g: 0x80, b: 0x80 };
cell.defaultCellTextState = headerTextState;
}
else {
cell.backgroundColor = { a: 0xFF, r: 0xFF, g: 0xFF, b: 0xFF };
};
const textRect = new TextRect();
if (rowIndex == 0)
textRect.text = "header #" + colIndex;
else
textRect.text = "value #'(" + rowIndex + "," + colIndex + "')";
cell.paragraphs = [textRect];
row.cells.push(cell);
}
table.rows.push(row);
}
return table;
},
async addTableOnPage () {
const jsonTable = this.initTable();
const resultTabs = await pdfApi.postPageTables(configParams.PDF_DOCUMENT_NAME, configParams.PAGE_NUMBER, [ jsonTable ]);
if (resultTabs.body.code == 200) {
console.log("Table successfully added!");
return resultTabs.body.table;
}
else
comsole.error("Unexpected error : can't get links!!!");
},
}
async function main() {
try {
await pdfTables.uploadDocument();
await pdfTables.addTableOnPage();
await pdfTables.downloadResult();
} catch (error) {
console.error("Error:", error.message);
}
}
Làm việc với Bảng trong PDF
Bảng cung cấp một định dạng có cấu trúc để trình bày dữ liệu một cách có hệ thống, giúp người đọc dễ hiểu và phân tích thông tin. Chúng cũng nâng cao sức hấp dẫn về mặt trực quan của tài liệu, thêm phần chuyên nghiệp và tổ chức. Khi làm việc với dữ liệu số hoặc so sánh, bảng cải thiện độ rõ ràng bằng cách nhóm các thông tin liên quan trong một định dạng dễ đọc. Ngoài ra, bảng có thể tích hợp nội dung theo thời gian thực hoặc được tạo động, chẳng hạn như dữ liệu từ cơ sở dữ liệu hoặc bảng điều khiển phân tích. Thêm Bảng vào tài liệu PDF với Aspose.PDF Cloud Node.js SDK.
Với thư viện Node.js của chúng tôi, bạn có thể:
- Thêm tiêu đề & chân trang của tài liệu PDF ở định dạng văn bản hoặc hình ảnh.
- Thêm bảng & con dấu (văn bản hoặc hình ảnh) vào tài liệu PDF.
- Thêm nhiều tài liệu PDF vào một tệp hiện có.
- Làm việc với các tệp đính kèm, chú thích, & trường mẫu của PDF.
- Áp dụng mã hóa hoặc giải mã cho tài liệu PDF & đặt mật khẩu.
- Xóa tất cả các con dấu & bảng khỏi một trang hoặc toàn bộ tài liệu PDF.
- Xóa một con dấu hoặc bảng cụ thể khỏi tài liệu PDF bằng ID của nó.
- Thay thế một hoặc nhiều lần xuất hiện của văn bản trên một trang PDF hoặc từ toàn bộ tài liệu.
- Hỗ trợ rộng rãi cho việc chuyển đổi tài liệu PDF sang nhiều định dạng tệp khác nhau.
- Trích xuất các yếu tố khác nhau của tệp PDF & tối ưu hóa tài liệu PDF.
- Bạn có thể thử sử dụng ứng dụng miễn phí của chúng tôi để trích xuất Bảng vào tệp PDF trực tuyến và kiểm tra chức năng.
- Tài nguyên Học tập
- Tài liệu
- Mã Nguồn
- Tham chiếu API
- Hỗ Trợ Sản Phẩm
- Hỗ Trợ Miễn Phí
- Hỗ Trợ Trả Phí
- Blog
- Tại Sao Chọn Aspose.PDF Cloud cho Node.js?
- Danh Sách Khách Hàng
- Bảo Mật