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 ที่ครอบคลุมและยืดหยุ่นเพื่อตอบสนองความต้องการของคุณ
เริ่มต้นกับ 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 และกระบวนการลงลายเซ็นแบบอะซิงโครนัสหรือแบบล่าช้า