Hãy để chúng tôi khám phá các tình huống liên quan đến xoay trong tài liệu PDF. Có thể có những tình huống mà bạn có thể có một tài liệu PDF được quét ngược mà bạn cần sửa. Bạn có thể sửa một tài liệu như vậy bằng cách xoay các trang của tài liệu. Bạn cũng có thể muốn thêm hình mờ văn bản hoặc hình ảnh vào tài liệu PDF bằng cách xoay chúng. Để đạt được điều đó, bài viết này sẽ hướng dẫn bạn cách xoay các trang PDF, văn bản và hình ảnh theo cách lập trình bằng C ++.
- API C ++ để xoay trang PDF, văn bản và hình ảnh
- Xoay các trang PDF bằng C ++
- Xoay văn bản trên trang PDF bằng C ++
- Xoay hình ảnh trên trang PDF bằng C ++
API C ++ để xoay trang PDF, văn bản và hình ảnh
Aspose.PDF for C ++ là thư viện C ++ cho phép bạn tạo, đọc và cập nhật tài liệu PDF. Ngoài ra, API hỗ trợ xoay các trang PDF, văn bản và hình ảnh. Bạn có thể cài đặt API thông qua NuGet hoặc tải xuống trực tiếp từ phần tải xuống.
PM> Install-Package Aspose.PDF.Cpp
Xoay các trang PDF bằng C ++
Xoay trang bằng Aspose.PDF cho C ++ thật dễ dàng. Chỉ với một vài dòng mã, bạn có thể xoay tất cả các trang của tài liệu PDF. Sau đây là các bước để xoay trang PDF bằng C ++.
- Tải tài liệu PDF nguồn bằng lớp Tài liệu.
- Lặp lại các trang của tài liệu. Trong trường hợp bạn chỉ muốn xoay các trang đã chọn, bạn có thể xác định logic đó trong vòng lặp này.
- Xoay từng trang bằng phương pháp Trang-> setRotate (Giá trị xoay).
- Lưu tệp PDF đầu ra bằng phương pháp Document-> Save (System :: String outputFileName, SaveFormat format).
Đoạn mã mẫu sau đây cho thấy cách xoay các trang PDF bằng C ++.
// Mở tài liệu PDF nguồn
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample 1.pdf");
// Lặp lại các trang
for (System::SharedPtr<Page> page : pdfDocument->get_Pages())
{
// Xoay trang
page->set_Rotate(Aspose::Pdf::Rotation::on180);
}
// Lưu tệp PDF
pdfDocument->Save(u"OutputDirectory\\Rotated_out.pdf", SaveFormat::Pdf);
Xoay văn bản trên trang PDF bằng C ++
Trong khi thêm văn bản vào tài liệu PDF, bạn có thể thay đổi nhiều thuộc tính văn bản, bao gồm cả góc của nó. Trong ví dụ sau, chúng tôi sẽ thêm văn bản vào trang PDF và xoay nó một góc 45 độ. Sau đây là các bước để đạt được điều đó.
- Tạo một bản sao của lớp Tài liệu để đại diện cho một tài liệu PDF mới.
- Thêm một trang mới vào tài liệu PDF.
- Tạo một phiên bản của lớp TextFragment với văn bản bạn muốn thêm.
- Đặt vị trí, góc và các thuộc tính khác của văn bản.
- Thêm văn bản vào trang PDF bằng cách sử dụng TextBuilder-> AppendText (System :: SharedPtr textFragment) phương thức.
- Lưu tệp PDF đầu ra bằng phương pháp Document-> Save (System :: String outputFileName, SaveFormat format).
Đoạn mã mẫu sau đây trình bày cách xoay văn bản trên trang PDF bằng C ++.
// Tạo một phiên bản của lớp Tài liệu
auto pdfDocument = MakeObject<Document>();
// Thêm trang mới
System::SharedPtr<Page> page = pdfDocument->get_Pages()->Add();
// Tạo đối tượng TextFragment
System::SharedPtr<TextFragment> textFragment = MakeObject<TextFragment>(u"Rotated Text");
// Đặt vị trí của văn bản
textFragment->set_Position(MakeObject<Position>(200, 600));
// Đặt thuộc tính văn bản
textFragment->get_TextState()->set_FontSize(12);
textFragment->get_TextState()->set_Font(FontRepository::FindFont(u"TimesNewRoman"));
textFragment->get_TextState()->set_BackgroundColor(Aspose::Pdf::Color::get_LightGray());
textFragment->get_TextState()->set_ForegroundColor(Aspose::Pdf::Color::get_Red());
textFragment->get_TextState()->set_Rotation(45);
textFragment->get_TextState()->set_Underline(true);
// Tạo đối tượng TextBuilder
System::SharedPtr<TextBuilder> textBuilder = MakeObject<TextBuilder>(page);
// Thêm texc vào trang
textBuilder->AppendText(textFragment);
// Lưu tệp PDF
pdfDocument->Save(u"OutputDirectory\\Rotated_text_out.pdf", SaveFormat::Pdf);
Xoay hình ảnh trên trang PDF bằng C ++
Trong khi thêm hình ảnh vào tài liệu PDF, bạn có thể đặt nhiều thuộc tính như chiều cao, chiều rộng, độ mờ, xoay, v.v. Trong ví dụ này, chúng tôi sẽ thêm hình ảnh vào trang PDF và xoay nó một góc 90 độ. Sau đây là các bước để xoay hình ảnh trên trang PDF.
- Tải tài liệu PDF nguồn bằng lớp Tài liệu.
- Tạo một thể hiện của lớp ImageStamp với hình ảnh bạn muốn thêm.
- Đặt xoay và các thuộc tính khác của hình ảnh.
- Thêm hình ảnh vào trang PDF bằng cách sử dụng Document-> getPages() -> idxget (1) -> AddStamp (System :: SharedPtr đóng dấu) phương pháp.
- Lưu tệp PDF đầu ra bằng phương pháp Document-> Save (System :: String outputFileName, SaveFormat format).
Đoạn mã mẫu sau đây cho thấy cách xoay hình ảnh trên trang PDF bằng C ++.
// Mở tài liệu PDF nguồn
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample 1.pdf");
// Tạo đối tượng ImageStamp
System::SharedPtr<ImageStamp> imageStamp = MakeObject<ImageStamp>(u"SourceDirectory\\aspose.png");
// Đặt thuộc tính ImageStamp
imageStamp->set_XIndent(250);
imageStamp->set_YIndent(350);
imageStamp->set_Height(100);
imageStamp->set_Width(300);
imageStamp->set_Rotate(Rotation::on90);
imageStamp->set_Opacity(0.5);
// Thêm ImageStamp vào trang
pdfDocument->get_Pages()->idx_get(1)->AddStamp(imageStamp);
// Lưu tệp PDF
pdfDocument->Save(u"OutputDirectory\\Rotated_image_out.pdf", SaveFormat::Pdf);
Nhận giấy phép miễn phí
Bạn có thể dùng thử API mà không có giới hạn đánh giá bằng cách yêu cầu giấy phép tạm thời miễn phí.
Sự kết luận
Trong bài viết này, bạn đã học cách xoay trang, văn bản và hình ảnh trong tài liệu PDF bằng C ++. Aspose.PDF cho C ++ là một API rộng lớn cung cấp nhiều tính năng bổ sung để làm việc với các tệp PDF. Bạn có thể khám phá API chi tiết bằng cách truy cập tài liệu chính thức. Trong trường hợp có bất kỳ câu hỏi nào, vui lòng liên hệ với chúng tôi trên diễn đàn hỗ trợ miễn phí của chúng tôi.