Hình ảnh JPG hoặc JPEG nằm trong số những hình ảnh raster phổ biến vì chúng sử dụng thuật toán nén mất dữ liệu phức tạp cho phép người dùng tạo đồ họa nhỏ hơn. Phần lớn các thiết bị bao gồm máy tính để bàn, thiết bị di động và các thiết bị cầm tay khác đều hỗ trợ hình ảnh JPG. Bây giờ nếu chúng ta cần chia sẻ hình ảnh số lượng lớn, thì việc chuyển đổi JPG thành PDF dường như là một giải pháp khả thi. Trong bài viết này, chúng ta sẽ thảo luận chi tiết về cách chuyển đổi JPG sang PDF bằng Python.
Gần đây, chúng tôi đã phát triển dịch vụ Chuyển văn bản thành GIF miễn phí, bạn có thể sử dụng dịch vụ này để tạo hoạt ảnh thú vị từ các văn bản đơn giản.
API chuyển đổi JPG sang PDF
Phạm vi của bài viết này chỉ giới hạn trong ngôn ngữ Python, vì vậy chúng tôi sẽ nhấn mạnh việc sử dụng Aspose.PDF Cloud SDK for Python. Nó là một trình bao bọc xung quanh Cloud REST API và cho phép bạn thực hiện tất cả các khả năng xử lý tệp PDF trong các ứng dụng Python. Nó cung cấp khả năng tạo, chỉnh sửa và chuyển đổi tệp PDF thành nhiều định dạng được hỗ trợ. Bạn cũng có thể tải nhiều loại tệp bao gồm EPUB, PS, SVG, XPS, JPEG, v.v. và chuyển đổi chúng thành PDF.
Bây giờ, bước đầu tiên là cài đặt SDK có sẵn để tải xuống qua kho lưu trữ PIP và GitHub. Vui lòng thực hiện lệnh sau trên dấu nhắc lệnh/thiết bị đầu cuối để cài đặt phiên bản SDK mới nhất trên hệ thống.
pip install asposepdfcloud
Sau khi cài đặt, bước quan trọng tiếp theo là đăng ký miễn phí các dịch vụ đám mây của chúng tôi thông qua Bảng điều khiển Aspose.Cloud. Mục đích của đăng ký này là chỉ cho phép những người được ủy quyền truy cập các dịch vụ xử lý tệp của chúng tôi. Nếu bạn có tài khoản GitHub hoặc Google, chỉ cần Đăng ký hoặc nhấp vào nút Tạo tài khoản mới.
Chuyển đổi JPG sang PDF bằng Python
Việc chuyển đổi bằng đoạn mã python khá tiện dụng. Vui lòng làm theo các bước được xác định bên dưới để thực hiện yêu cầu này.
- Đầu tiên, tạo một thể hiện của lớp ApiClient trong khi cung cấp Client ID & Client Secret làm đối số
- Thứ hai, tạo một đối tượng của lớp PdfApi lấy đối tượng ApiClient làm đối số đầu vào
- Thứ ba, tạo một thể hiện của lớp ImageTemplatesRequest nơi chúng tôi xác định tên của hình ảnh nguồn và các thuộc tính liên quan như chiều rộng, chiều cao, chi tiết lề
- Cuối cùng, gọi phương thức putimageinstoragetopdf(..) của lớp PdfApi để thực hiện chuyển đổi
# lấy thông tin đăng nhập của khách hàng từ https://dashboard.aspose.cloud/
def image2PDF():
try:
#Client credentials
client_secret = "1c9379bb7d701c26cc87e741a29987bb"
client_id = "bbf94a2c-6d7e-4020-b4d2-b9809741374e"
#initialize PdfApi client instance using client credetials
pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)
# tạo phiên bản PdfApi trong khi chuyển PdfApiClient làm đối số
pdf_api = PdfApi(pdf_api_client)
#source image file
input_file = 'source.jpg'
#resultant PDF document
resultant_file = 'Resultant.pdf'
image_templates_details = asposepdfcloud.ImageTemplatesRequest
{
"IsOCR": True,
"OCRLangs": "eng",
"ImagesList": [
{
"ImagePath": input_file,
"ImageSrcType": "ImageSrcType.Common",
"LeftMargin": 10,
"RightMargin": 10,
"TopMargin": 10,
"BottomMargin": 10,
"PageWidth": 800,
"PageHeight": 1000,
"MarginInfo": {
"Left": 10,
"Right": 10,
"Top": 10,
"Bottom": 10
}
}
]
}
# gọi API để chuyển đổi hình ảnh sang định dạng PDF
response = pdf_api.put_image_in_storage_to_pdf(name=resultant_file, image_templates= image_templates_details)
# in tin nhắn trong bảng điều khiển (tùy chọn)
print('Image successfully converted to PDF format !')
except ApiException as e:
print("Exception while calling PdfApi: {0}".format(e))
print("Code:" + str(e.code))
print("Message:" + e.message)
Trong trường hợp chúng tôi cần chuyển đổi nhiều hình ảnh trong một lần gọi, vui lòng chỉ định nhiều phiên bản hơn của ImagesList trong đối tượng ImageTemplatesRequest.
JPG sang PDF bằng lệnh cURL
Các lệnh cURL cung cấp một cách thuận tiện để truy cập API REST qua thiết bị đầu cuối dòng lệnh. Vì Aspose.PDF Cloud được phát triển theo kiến trúc REST nên chúng ta cũng có thể truy cập nó thông qua các lệnh cURL. Bây giờ, bước đầu tiên là tạo Mã thông báo web JSON (JWT) dựa trên thông tin đăng nhập khách hàng cá nhân của bạn. Vì vậy, vui lòng thực hiện lệnh sau để tạo mã thông báo JWT.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bbf94a2c-6d7e-4020-b4d2-b9809741374e&client_secret=1c9379bb7d701c26cc87e741a29987bb" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Khi mã thông báo JWT đã được tạo, vui lòng sử dụng lệnh cURL sau để chuyển đổi định dạng JPG sang PDF. Tệp kết quả sau đó được tải lên bộ nhớ đám mây.
curl -v -X PUT "https://api.aspose.cloud/v3.0/pdf/Resultant.pdf/create/images" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-H "Content-Type: application/json" \
-d "{ \"IsOCR\": true, \"OCRLangs\": \"eng\", \"ImagesList\": [ { \"ImagePath\": \"source.jpg\", \"ImageSrcType\": \"Common\", \"LeftMargin\": 10, \"RightMargin\": 10, \"TopMargin\": 10, \"BottomMargin\": 10, \"PageWidth\": 800, \"PageHeight\": 1000, \"MarginInfo\": { \"Left\": 10, \"Right\": 10, \"Top\": 10, \"Bottom\": 10 } } ]}"
Để bạn tham khảo, tệp JPG nguồn và tài liệu PDF kết quả được tải lên qua source.jpg và Image2PDF-Resultant.pdf.
Phần kết luận
Trong bài viết này, chúng tôi đã thảo luận về các bước để chuyển đổi JPG sang PDF bằng Python. Trong khi làm theo các hướng dẫn tương tự, chúng tôi cũng có thể chuyển đổi hình ảnh PNG, BMP và GIF sang PDF. Chúng tôi cũng đã tìm hiểu về phương pháp chuyển đổi JPG sang PDF bằng các lệnh cURL. Tuy nhiên, SDK đám mây của chúng tôi được phát triển theo giấy phép MIT, vì vậy đoạn mã hoàn chỉnh của chúng có sẵn để tải xuống miễn phí qua GitHub.
Nếu bạn có bất kỳ câu hỏi nào liên quan hoặc bạn gặp phải bất kỳ sự cố nào khi sử dụng API của chúng tôi, vui lòng liên hệ với chúng tôi qua diễn đàn hỗ trợ khách hàng miễn phí.
Những bài viết liên quan
Chúng tôi cũng khuyên bạn nên truy cập các liên kết sau để tìm hiểu thêm về