1. Produk
  2.   PDF
  3.   C++
  4.   LibHaru

LibHaru

 
 

Pustaka C++ Sumber Terbuka untuk Dokumen PDF

Jana, Edit, Manipulasi & Tukar Fail PDF melalui API C++ Sumber Terbuka.

LibHaru ialah perpustakaan C++ sumber terbuka yang membolehkan pembangun perisian menjana format fail PDF, pada masa ini, API tidak membenarkan membaca atau mengedit dokumen PDF sedia ada. Menggunakan API anda boleh menjana fail PDF - tambahkan teks, baris dan anotasi ke dalamnya. Tambahan pula, anda juga boleh menambah imej format PNG dan JPEG dalam dokumen. LibHaru juga membenarkan memampatkan dokumen PDF dengan format deflate-decode dan menjana dokumen PDF yang disulitkan.

LibHaru ditulis ANSI-C dan boleh berfungsi sebagai perpustakaan statik dan perpustakaan kongsi. Untuk menggunakannya dengan program C++ anda boleh menyusunnya dengan mana-mana pengkompil C++ dan menggunakannya sebagai perpustakaan statik.

Previous Next

Bermula dengan LibHaru

LibHaru ditulis dalam ANSI-C dan untuk menggunakannya dengan C++, anda boleh menyusunnya dengan mana-mana pengkompil C++ yang mematuhi. Pertama sekali, anda boleh memuat turun dan mengekstrak versi terkini API. Terdapat beberapa jenis makefile, untuk setiap pengkompil, dalam direktori skrip. Bina perpustakaan dengan makefile yang sesuai.

Terdapat beberapa jenis makefile, untuk setiap pengkompil, dalam direktori skrip. Bina perpustakaan dengan makefile yang sesuai.

Bina Perpustakaan untuk Pengkompil

 //Microsoft VC++ Compiler 
NMAKE -f script/Makefile.msvc
//Borland C++ Compiler
make -f script/Makefile.BCC

Perpustakaan C++ untuk Menjana Format Fail PDF

LibHaru telah menyediakan satu set ciri yang membolehkan pembangun perisian menjana format fail PDF. Menggunakan API anda boleh membuat dokumen PDF baharu, menetapkan atribut objek dokumen, mencipta halaman baharu, menetapkan objek halaman, menetapkan penerangan halaman dan menyimpan dokumen ke strim fail atau memori.

Benamkan Imej dalam PDF menggunakan C++

LibHaru membolehkan pembangun perisian membenamkan imej JPEG dan PNG dalam dokumen PDF. Menggunakan API anda boleh mendapatkan saiz imej, lebar, ketinggian, bit setiap komponen dan ruang warna. Tambahan pula, anda boleh menetapkan topeng warna dan imej topeng untuk imej terbenam.

Cipta Fail PDF Disulitkan menggunakan C++ API

Penyulitan ialah mekanisme yang sangat berguna yang membolehkan pengekodan maklumat ke dalam kod rahsia yang menyembunyikan maksud sebenar maklumat. Pustaka sumber terbuka LibHaru membolehkan pembangun perisian mencipta fail PDF yang disulitkan tanpa sebarang kebergantungan luaran.

Cipta Fail PDF Disulitkan melalui C++

 const static char* text = "This is an encrypt document example.";
const static char* owner_passwd = "owner";
const static char* user_passwd = "user";
jmp_buf env;
#ifdef HPDF_DLL
void __stdcall
#else
void
#endif
error_handler (HPDF_STATUS  error_no,
        HPDF_STATUS  detail_no,
        void     *user_data)
{
  printf ("ERROR: error_no=%04X, detail_no=%u\n", (HPDF_UINT)error_no,
        (HPDF_UINT)detail_no);
  longjmp(env, 1);
}
int
main (int argc, char **argv)
{
  HPDF_Doc pdf;
  HPDF_Font font;
  HPDF_Page page;
  char fname[256];
  HPDF_REAL tw;
  strcpy (fname, argv[0]);
  strcat (fname, ".pdf");
  pdf = HPDF_New (error_handler, NULL);
  if (!pdf) {
    printf ("error: cannot create PdfDoc object\n");
    return 1;
  }
  if (setjmp(env)) {
    HPDF_Free (pdf);
    return 1;
  }
  /* create default-font */
  font = HPDF_GetFont (pdf, "Helvetica", NULL);
  /* add a new page object. */
  page = HPDF_AddPage (pdf);
  HPDF_Page_SetSize (page, HPDF_PAGE_SIZE_B5, HPDF_PAGE_LANDSCAPE);
  HPDF_Page_BeginText (page);
  HPDF_Page_SetFontAndSize (page, font, 20);
  tw = HPDF_Page_TextWidth (page, text);
  HPDF_Page_MoveTextPos (page, (HPDF_Page_GetWidth (page) - tw) / 2,
        (HPDF_Page_GetHeight (page) - 20) / 2);
  HPDF_Page_ShowText (page, text);
  HPDF_Page_EndText (page);
  HPDF_SetPassword (pdf, owner_passwd, user_passwd);
  /* save the document to a file */
  HPDF_SaveToFile (pdf, fname);
  /* clean up */
  HPDF_Free (pdf);
  return 0;
}
        
 Melayu