Free C++ API สำหรับสร้าง, ปรับแต่ง & แยกวิเคราะห์ไฟล์ PDF.

ไลบรารีการจัดการ PDF แบบโอเพนซอร์สชั้นนำช่วยให้นักพัฒนา C++ สามารถสร้าง, ปรับแต่ง, เข้ารหัส, จัดการฟอนต์, และแยกวิเคราะห์เอกสาร PDF ได้อย่างง่ายดายในแอป C++.

PoDoFo Library คืออะไร?

ในโลกของการพัฒนา C++ ความสามารถในการสร้าง แก้ไข และดึงข้อมูลจากไฟล์ PDF อย่างโปรแกรมเมติกเป็นความต้องการทั่วไป ไลบรารี PoDoFo ซึ่งเป็นไลบรารี C++17 แบบเปิดต้นฉบับและพกพาได้ ปรากฏเป็นโซลูชันที่ทรงพลังและหลากหลายสำหรับทุกเรื่องที่เกี่ยวกับ PDF PoDoFo เป็นไลบรารีที่ให้ใช้ฟรีและออกแบบมาสำหรับทำงานกับรูปแบบไฟล์ PDF มันทำให้ผู้พัฒนาซอฟต์แวร์สามารถพาร์สไฟล์ PDF ตรวจสอบเอนทิตีระดับสูงของ PDF (เช่น คำอธิบายและฟิลด์ฟอร์ม) แก้ไขพวกมันในหน่วยความจำ และเขียนการเปลี่ยนแปลงกลับไปยังดิสก์ภายในแอปพลิเคชันของตนเอง ไลบรารีนี้ยังทำให้การสร้าง PDF ใหม่ตั้งแต่ต้นโดยไม่มีการพึ่งพาไลบรารีภายนอกเป็นเรื่องง่าย

PoDoFo เป็นไลบรารี C++ ที่แข็งแกร่งซึ่งช่วยให้นักพัฒนาซอฟต์แวร์สามารถทำงานกับ Portable Document Format (PDF) อย่างโปรแกรมเมติกได้ โดยได้รับอนุญาตภายใต้ LGPL เวอร์ชัน 2.0 หรือใหม่กว่าสำหรับไลบรารี และ GPL เวอร์ชัน 2.0 หรือใหม่กว่าสำหรับเครื่องมือที่มาพร้อมกัน ไลบรารี PoDoFo มอบความยืดหยุ่นและเปิดเผยสำหรับโครงการเชิงพาณิชย์และโอเพนซอร์ส ทั้งยังให้ชุดเครื่องมือที่หลากหลายสำหรับการวิเคราะห์ แก้ไข และสร้างเอกสาร PDF ตั้งแต่ต้น ไม่ว่าคุณจะต้องการอัตโนมัติการสร้างรายงาน ดึงข้อความเพื่อการวิเคราะห์ข้อมูล หรือเพิ่มลายเซ็นดิจิทัลเพื่อความปลอดภัย PoDoFo มี API ที่ครอบคลุมและยืดหยุ่นเพื่อตอบสนองความต้องการของคุณ

Previous Next

เริ่มต้นกับ PoDoFo

วิธีที่แนะนำในการติดตั้ง PoDoFo คือการใช้ CMake โปรดใช้คำสั่งต่อไปนี้เพื่อการติดตั้งที่ราบรื่น.

ติดตั้ง PPTXTemplater จาก GitHub

 vcpkg install fontconfig freetype libxml2 openssl libjpeg-turbo libpng tiff zlib
mkdir build
cd build
cmake -DCMAKE_TOOLCHAIN_FILE=C:\vcpkg\scripts\buildsystems\vcpkg.cmake -DCMAKE_BUILD_TYPE=Debug ..
cmake --build . --config Debug

ติดตั้ง PPTXTemplater จาก GitHub

 git clone https://github.com/podofo/podofo.git

คุณยังสามารถติดตั้งด้วยตนเองได้; ดาวน์โหลดไฟล์รุ่นล่าสุดโดยตรงจากที่เก็บ GitHub

การสร้างและแก้ไข PDF

ไลบรารีโอเพ่นซอร์ส PoDoFo ได้รวมการสนับสนุนเต็มรูปแบบสำหรับการสร้างและการจัดการเอกสาร PDF ภายในไลบรารี C++ โดยพื้นฐานแล้ว PoDoFo มีความเชี่ยวชาญในการสร้างเอกสาร PDF ใหม่และแก้ไขเอกสารที่มีอยู่ นักพัฒนาซอฟต์แวร์สามารถเพิ่มหน้าใหม่, วาดข้อความ, และแทรกองค์ประกอบกราฟิกต่าง ๆ, เปิดเอกสารที่เข้ารหัสได้อย่างง่ายดาย ตัวอย่างง่ายต่อไปนี้แสดงให้เห็นว่า นักพัฒนาซอฟต์แวร์สามารถสร้างเอกสาร PDF แบบง่ายภายในแอปพลิเคชัน C++ ได้อย่างไร

วิธีสร้าง PDF แบบง่ายผ่านไลบรารี C++?

#include 

using namespace PoDoFo;

int main() {
    PdfStreamedDocument document("HelloWorld.pdf");
    PdfPainter painter;
    PdfPage* pPage;

    try {
        pPage = document.CreatePage(PdfPage::CreateStandardPageSize(ePdfPageSize_A4));
        painter.SetPage(pPage);
        PdfFont* pFont = document.CreateFont("Arial");
        pFont->SetFontSize(18.0);
        painter.SetFont(pFont);
        painter.DrawText(56.69, pPage->GetPageSize().GetHeight() - 56.69, "Hello World!");
        painter.FinishPage();
        document.Close();
    } catch (const PdfError & e)

วิธีโหลดและดึงข้อความจากไฟล์ PDF ผ่าน API ของ C++?

#include 
using namespace PoDoFo;

PdfMemDocument pdf("document.pdf");
int pageCount = pdf.GetPageCount();
for (int i = 0; i < pageCount; ++i) {
    PdfPage* page = pdf.GetPage(i);
    PdfContentsTokenizer tokenizer(page);

    const char* token = nullptr;
    PdfVariant var;
    EPdfContentsType type;

    while (tokenizer.ReadNext(type, token, var)) {
        if (type == ePdfContentsType_Keyword) {
            printf("Operator: %s\n", token);
        } else if (type == ePdfContentsType_Variant) {
            // Examine var as needed
        }
    }
}

 

เพิ่มลายเซ็นดิจิทัลใน PDF ผ่าน C++ API?

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

วิธีเพิ่มลายเซ็นดิจิทัลใน PDF ผ่าน C++?

 // Conceptual Code - Not a complete working example
#include 

using namespace PoDoFo;

int main() {
    PdfMemDocument document("unsigned.pdf");
    PdfPage* pPage = document.GetPage(0);

    // Create a signature field
    PdfSignatureField sigField(pPage,
        PdfRect(100, pPage->GetPageSize().GetHeight() - 100, 200, 50),
        &document);

    // Set signature properties
    // ...

    // Sign the document using a custom signer implementation
    // MySigner signer("my_certificate.pfx", "password");
    // document.Sign(sigField, signer);

    document.Write("signed.pdf");

    return 0;
}
 

การจัดการฟอนต์และการสนับสนุน Unicode

ไลบรารี PoDoFo ฟรีให้การสนับสนุนที่แข็งแกร่งสำหรับประเภทฟอนต์ต่าง ๆ รวมถึงฟอนต์ TrueType และ Type1 ไลบรารียังจัดการการย่อยฟอนต์ ซึ่งช่วยลดขนาดไฟล์ของ PDF ที่สร้างขึ้น นอกจากนี้การสนับสนุน Unicode ที่ยอดเยี่ยมของมันทำให้คุณสามารถทำงานกับหลายภาษาและชุดอักขระได้อย่างเต็มที่ การสนับสนุนเต็มรูปแบบสำหรับการลงลายเซ็น PDF (ตามมาตรฐาน PAdES-B) การเข้ารหัส RSA/ECDSA และกระบวนการลงลายเซ็นแบบอะซิงโครนัสหรือแบบล่าช้า

 ไทย