mengenkripsi mendekripsi pdf C++

Enkripsi PDF adalah proses melindungi dokumen menggunakan kata sandi serta beberapa algoritme kriptografi termasuk AES atau RC4. Anda juga dapat mengatur hak istimewa yang berbeda untuk membatasi akses pengguna ke operasi yang berbeda. Misalnya, Anda hanya dapat mengizinkan pencetakan, menambahkan anotasi, mengisi formulir, dan lain-lain. Pada artikel ini, Anda akan mempelajari cara mengenkripsi file PDF menggunakan C++. Selain itu, artikel ini juga membahas cara mengatur berbagai hak istimewa dan mendekripsi file PDF yang dilindungi kata sandi menggunakan C++.

C++ API untuk Mengenkripsi atau Mendekripsi File PDF

Aspose.PDF for C++ adalah API C++ asli yang memungkinkan Anda membuat, membaca, dan memanipulasi dokumen PDF. Selain itu, ini juga memungkinkan Anda mengenkripsi PDF dengan kata sandi dan mendekripsi PDF terenkripsi dalam beberapa baris kode. Anda dapat mendownload API dari bagian downloads atau menginstalnya menggunakan NuGet.

Enkripsi File PDF menggunakan C++

Berikut adalah langkah-langkah untuk mengenkripsi file PDF menggunakan Aspose.PDF for C++.

Contoh kode berikut menunjukkan cara mengenkripsi file PDF menggunakan C++.

For complete examples and data files, please go to https://github.com/aspose-pdf/Aspose.Pdf-for-C
// Muat dokumen PDF yang ada
auto doc = MakeObject<Document>(L"..\\Data\\SecurityAndSignatures\\input.pdf");

// Cara 1: Menggunakan hak istimewa yang telah ditentukan secara langsung.
System::SharedPtr<Aspose::Pdf::Facades::DocumentPrivilege> privilege = Aspose::Pdf::Facades::DocumentPrivilege::get_Print();
doc->Encrypt(L"user", L"owner", privilege, CryptoAlgorithm::AESx128, false);
doc->Save(L"..\\Data\\SecurityAndSignatures\\SetPrivelegesWay1_out.pdf");

// Cara2: Berdasarkan hak istimewa yang telah ditentukan sebelumnya dan ubah beberapa izin khusus.
System::SharedPtr<Aspose::Pdf::Facades::DocumentPrivilege> privilege2 = Aspose::Pdf::Facades::DocumentPrivilege::get_AllowAll();
privilege->set_AllowPrint(false);
privilege->set_AllowModifyContents(false);
doc->Encrypt(L"user", L"owner", privilege2, CryptoAlgorithm::AESx128, false);
doc->Save(L"..\\Data\\SecurityAndSignatures\\SetPrivelegesWay2_out.pdf");

// Cara3: Berdasarkan hak istimewa yang telah ditentukan sebelumnya dan ubah beberapa kombinasi izin Adobe Professional khusus.
System::SharedPtr<Aspose::Pdf::Facades::DocumentPrivilege> privilege3 = Aspose::Pdf::Facades::DocumentPrivilege::get_ForbidAll();
privilege->set_ChangeAllowLevel(1);
privilege->set_PrintAllowLevel(2);
doc->Encrypt(L"user", L"owner", privilege3, CryptoAlgorithm::AESx128, false);
doc->Save(L"..\\Data\\SecurityAndSignatures\\SetPrivelegesWay3_out.pdf");

// Cara4: Mencampur cara2 dan cara3
System::SharedPtr<Aspose::Pdf::Facades::DocumentPrivilege> privilege4 = Aspose::Pdf::Facades::DocumentPrivilege::get_ForbidAll();
privilege->set_ChangeAllowLevel(1);
privilege->set_AllowPrint(true);
doc->Encrypt(L"user", L"owner", privilege4, CryptoAlgorithm::AESx128, false);
doc->Save(L"..\\Data\\SecurityAndSignatures\\SetPrivelegesWay4_out.pdf");

Dekripsi File PDF menggunakan C++

Berikut adalah langkah-langkah untuk mendekripsi file PDF menggunakan Aspose.PDF for C++.

Contoh kode berikut menunjukkan cara mendekripsi PDF menggunakan C++.

For complete examples and data files, please go to https://github.com/aspose-pdf/Aspose.Pdf-for-C
// Muat dokumen PDF yang ada
auto doc = MakeObject<Document>(L"..\\Data\\SecurityAndSignatures\\Decrypt.pdf", L"password");
// Dekripsi PDF
doc->Decrypt();
// Simpan dokumen yang diperbarui
doc->Save(L"..\\Data\\SecurityAndSignatures\\Decrypt_out.pdf");

Kesimpulan

Pada artikel ini, Anda telah mempelajari cara mengenkripsi atau mendekripsi file PDF menggunakan C++. Contoh kode juga menunjukkan cara mengatur hak istimewa yang berbeda saat mengenkripsi file PDF. Anda dapat mempelajari lebih lanjut tentang C++ PDF API menggunakan dokumentasi.

Lihat juga