C / C ++ uygulaması için açık kaynaklı PDF kitaplığı? [kapalı]


91

(Yerel) C ++ Windows uygulamamdan PDF çıktısı oluşturabilmek istiyorum. Bunu yapmak için herhangi bir ücretsiz / açık kaynak kitaplığı var mı?

Bu sorunun yanıtlarına baktım , ancak çoğunlukla .Net ile ilgili.

Yanıtlar:


62

LibHaru

Haru, ANSI-C ile yazılmış PDF oluşturmak için ücretsiz, çapraz platformlu, açık kaynaklı bir yazılım kitaplığıdır. Hem statik kitaplık (.a, .lib) hem de paylaşılan kitaplık (.so, .dll) olarak çalışabilir.

Kendim denemedim, ama belki sana yardımcı olabilir


LibHaru ile pdf dosyalarını okuyabilir miyiz yoksa sadece oluşturabilir miyiz?
Rui Carneiro

5
@Rui: Ne yazık ki sadece yaratın.
Mark Ransom

2
FWIW, libHaru için bir POCO sarıcı yazdım ( github.com/pocoproject/poco/tree/master/PDF ). Hiç yayınlamadık, ancak üretim düzeyine yakın bir kod.
Alex

Maalesef LibHaru PDF okumayı ve düzenlemeyi desteklemiyor. Benim için çok işe yaramaz.
dondur

19

Pdf raporu gerektiren bir proje üzerinde çalıştım. Çevrimiçi aradıktan sonra PoDoFo kütüphanesini buldum. Çok sağlam görünüyordu. Tüm özelliklere ihtiyacım yoktu, bu yüzden karmaşıklığın bir kısmını soyutlamak için bir paketleyici yarattım. Çok zor olmadı. Kitaplığı burada bulabilirsiniz:

http://podofo.sourceforge.net/

Zevk almak!


Mac'te PdDoFo oluşturmak büyük bir acı, bu yüzden sonunda denemekten vazgeçtim. LibHaru'yu kurmak çok kolaydı.

Podofo, iki dosyaya #include <climits>, <numeric_limits> ekledikten sonra 2 derleyici sorunu aldı, paketi oluşturabildi. Ama bir şekilde, GCC'nin iki sürümüne sahip olduğum Linux sistemimde cmake sistemi iyi çalışmıyor (eskisi Centos6.5'im ve en son yaptığım 5.3 ile geldi). Bağlanmak bir sorundur. Dünyayı birbirine bağlamayı başardım, ancak test programı boş bir belge üretti. Bu sorunu çözmek çok zor.
Kemin Zhou

1
Ancak podofo , LGPL değil , GPL olan freetype2 kitaplığını GEREKTİRİR . Kaynağınızı herkese açık hale getirmek istemiyorsanız
18C

@ 18C: Freetype, ticari kapalı kaynak uygulamalarına dahil edilmeye izin verir. Bunu
Congenital Optimist


8

PDF Humus. http://pdfhummus.com/ için bkz. - işleme dışında PDF dosyalarıyla işlem yapmak için gerekli tüm özellikleri içerir.


1
Yakın zamanda Hummus ile büyük bir PDF-Export yaptım ve tavsiye edebilirim. Muhtemelen mevcut PDFSpec'in tüm özelliklerini kapsama açısından tamamlanmamış (oldukça kapsamlı), ancak anlaşılması kolay ve bir dizi sanal işlev içeren bir geri arama sınıfı aracılığıyla genişletilebilir ( github.com/galkahana/PDF-Writer/blob/ ana / PDFWriter /… ). Yazı tipi işleme için TIFF / JPEG işlemeyi ve serbest yazı kitaplığını içerir.
KIRMIZI YUMUŞAK ADAIR

bunu dinamik bağlantılı bir kitaplık olarak derleyebildiniz mi? Yoksa sadece statik bağlantılı kitaplığı mı destekliyor?
Sam


7

İhtiyaçlarınıza göre değişir. Bazı araç takımları çizimde daha iyidir, diğerleri metin yazmak için daha iyidir. Kahire'de çizim yapmak için oldukça iyidir (pdf dahil çok çeşitli ekran ve dosya türlerini destekler), ancak iyi tipografi için ideal olmayabilir.



4
  • LibHaru birçok kişi tarafından kullanılıyor gibi görünüyor.

Açık kaynak olmayan bir yaklaşım: C ++, C #, Delphi, ASP, ASP.NET, VB, VB.NET, VBScript, PHP ve Python dahil olmak üzere daha fazla dil seçeneği sağlayan PDF Creator Pilot


1

Deneyin Wkhtmltopdf'i

Yazılım özellikleri

Çapraz platform. Açık kaynak. Webkit kullanarak herhangi bir web sayfasını PDF belgelerine dönüştürün. Üstbilgi ve altbilgi ekleyebilirsiniz. TOC üretimi. Toplu mod dönüşümleri. Bir XServer ile Linux sunucusunda çalışabilir (X11 istemci kitaplıkları yüklenmelidir). PHP veya Python tarafından libwkhtmltox'a bağlanarak doğrudan kullanılabilir.


Bu iyi. Ancak, tarihli webkit kullandığından, bazı sayfalar şikayet edebilir (örneğin youtube)
swdev

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.