สร้าง PDF ผ่านโอเพ่นซอร์ส C ++ API
ไลบรารี C++ แบบโอเพ่นซอร์สสำหรับการสร้าง แก้ไข จัดการ และแยกวิเคราะห์ไฟล์ PDF
PDF-Writer คืออะไร?
PDF-Writer เป็นไลบรารี C++ แบบโอเพ่นซอร์สที่รองรับการสร้าง แก้ไข จัดการ และแยกวิเคราะห์ไฟล์ PDF รวมถึงสตรีม ห้องสมุดได้รับการพัฒนาด้วยวิธี "ครั้งเดียว" หลักในการสร้างไฟล์ PDF นั่นเป็นสาเหตุว่าทำไมมันถึงทำงานเร็วและใช้หน่วยความจำเหลือน้อยไม่ว่าไฟล์จะใหญ่ขนาดไหน ดังนั้นจึงเป็นการดีที่สุดที่จะสร้างไฟล์ PDF ขนาดเล็กหรือสร้างเอกสาร PDF ขนาดใหญ่
การเพิ่มเนื้อหาลงใน PDF นั้นสำคัญมากเสมอ และช่วยนักพัฒนาในการสร้าง PDF แบบกำหนดเอง ไลบรารีได้รวมการรองรับคุณสมบัติที่สำคัญหลายประการสำหรับการประมวลผลไฟล์ PDF เช่น การสร้างหน้า PDF, ตัวดำเนินการ PDF สำหรับการวาดภาพเนื้อหา, การฝังรูปภาพ JPG หรือ PNG และ TIFF, การแก้ไข PDF, การผสานหรือแยกไฟล์ PDF, การแสดงไฟล์ PDF, การดึงข้อมูลจาก PDF , รองรับข้อความ Unicode, รองรับฟอนต์ TrueType และ OpenType และอีกมากมาย
เริ่มต้นใช้งาน PDF-Writer
วิธีที่แนะนำในการสร้างห้องสมุด และตัวอย่างการใช้งานคือการใช้ CMake คุณสามารถรับได้จากเว็บไซต์ CMake ไลบรารีขึ้นอยู่กับ Zlib, LibTiff, LibJpeg, FreeType และ LibPng ซึ่งหมายความว่าคุณควรคอมไพล์มันด้วย ก่อนที่จะใช้ไลบรารี PDF ในบริบทที่เชื่อมโยง
คุณยังสามารถติดตั้งได้ด้วยตนเอง ดาวน์โหลดไฟล์รุ่นล่าสุดได้โดยตรงจากที่เก็บ GitHub
การสร้างและแก้ไข PDF ผ่าน C++
นักพัฒนาซอฟต์แวร์สามารถใช้ PDF-Writer API เพื่อสร้างไฟล์ PDF ใหม่ภายในแอปพลิเคชัน C++ ของตนเอง ห้องสมุดยังอำนวยความสะดวกให้นักพัฒนาแก้ไขตามความต้องการของตนเอง คุณสามารถฝังรูปภาพ JPG, PNG และ TIFF ได้อย่างง่ายดาย การกำหนดวัตถุที่นำกลับมาใช้ใหม่ ฝังหน้า PDF ที่มีอยู่ รวมทั้งข้อความได้อย่างง่ายดาย คุณสามารถใช้หน้า PDF ที่มีอยู่โดยผนวกหน้านั้นเป็นหน้าของ PDF หรือใช้เป็นส่วนเพื่อรวมไว้ในกราฟิกของหน้าที่สร้างขึ้นใหม่ โดยใช้ขั้นตอนต่อไปนี้ คุณสามารถสร้าง PDF ได้อย่างง่ายดาย
สร้าง PDF ใน C++
- สร้างอินสแตนซ์ของอ็อบเจ็กต์ PDFWriter
- เปิดไฟล์ PDF เพื่อเขียน
- ตอนนี้ไปข้างหน้าและเพิ่มเนื้อหาลงใน PDF
- บันทึกเอกสาร PDF
การสร้าง PDF ใน C++
// Create an instance of the PDFWriter objec
PDFWriter pdfWriter;
// Open a PDF file for writing
pdfWriter.StartPDF("c:\\myFile.pdf",ePDFVersion13);
// ...add content to PDF file...
pdfWriter.EndPDF();
การเพิ่มหน้าใหม่ลงในเอกสาร PDF
ด้วยไลบรารี่ PDF-Writer คุณสามารถเพิ่มหน้าใหม่และกำหนดขนาดภายในเอกสาร PDF ง่ายมากและต้องใช้โค้ด C++ เพียงไม่กี่บรรทัดในการเพิ่มหน้าใหม่ลงในไฟล์ PDF ห้องสมุดยังให้อำนาจนักพัฒนาในการแก้ไขหน้าที่มีอยู่หรือลบหน้า คุณสามารถเพิ่มเนื้อหาลงในหน้า PDF ที่สร้างไว้แล้วได้
การฝังรูปภาพในเอกสาร PDF
ไลบรารี PDF-Writer รองรับการฝังรูปภาพ TIFF, PNG และ JPG รวมถึงหน้า PDF มีวิธีการระดับสูงที่ใช้กันทั่วไปสำหรับรูปภาพทุกประเภท นอกจากนั้น ยังมีวิธีการระดับล่างสำหรับการใช้งานขั้นสูงของรูปภาพ ได้ให้การสนับสนุนรูปภาพ JPG ผ่านตัวถอดรหัส DCT ดั้งเดิม PNG ผ่านการถอดรหัสด้วย LibPng และรูปภาพ TIFF ผ่านการเข้ารหัส/ถอดรหัสด้วยความช่วยเหลือของ LibTiff
การฝังรูปภาพใน PDF ผ่าน C++
pdfWriter.StartPDF("HighLevelImages.PDF",ePDFVersion13);
PDFPage* page = new PDFPage();
page->SetMediaBox(PDFRectangle(0,0,595,842));
PageContentContext* cxt = pdfWriter.StartPageContentContext(page);
cxt->DrawImage(10,10,"soundcloud_logo.jpg"));
pdfWriter.EndPageContentContext(cxt);
pdfWriter.WritePageAndRelease(page);
pdfWriter.EndPDF();
เข้าร่วมเอกสาร PDF ต่างๆ
เมื่อใช้ Open Source PDF combiner API ผู้ใช้สามารถรวมเอกสาร PDF หลายฉบับได้อย่างรวดเร็วโดยไม่ต้องพึ่งพาภายนอกโดยใช้โค้ดเพียงไม่กี่บรรทัด PDF-Writer ช่วยให้นักพัฒนาซอฟต์แวร์สามารถสร้างเอกสาร PDF ใหม่จากไฟล์ PDF ที่มีอยู่ได้ ช่วยให้ผู้ใช้จัดเก็บและตรวจสอบเอกสาร PDF ได้ง่ายขึ้น
การรวมเนื้อหาหน้า PDF ผ่าน C++
PDFPage* page = new PDFPage();
page->SetMediaBox(PDFRectangle(0,0,595,842));
PDFPageRange singlePageRange;
singlePageRange.mType = PDFPageRange::eRangeTypeSpecific;
singlePageRange.mSpecificRanges.push_back(ULongAndULong(0,0));
pdfWriter.MergePDFPagesToPage(page,"C:\\Other2PagePDF.PDF",singlePageRange);
pdfWriter.WritePageAndRelease(page);