šifrovat dešifrovat pdf C++

Šifrování PDF je proces ochrany dokumentu pomocí hesla a některých kryptografických algoritmů včetně AES nebo RC4. Můžete také nastavit různá oprávnění, abyste omezili přístup uživatele k různým operacím. Můžete například povolit pouze tisk, přidávání anotací, vyplňování formulářů atd. V tomto článku se dozvíte, jak šifrovat soubory PDF pomocí C++. Kromě toho tento článek také popisuje, jak nastavit různá oprávnění a dešifrovat soubory PDF chráněné heslem pomocí C++.

C++ API pro šifrování nebo dešifrování souborů PDF

Aspose.PDF for C++ je nativní C++ API, které umožňuje vytvářet, číst a manipulovat s dokumenty PDF. Kromě toho vám také umožňuje šifrovat soubory PDF pomocí hesel a dešifrovat šifrované soubory PDF během několika řádků kódu. API si můžete stáhnout ze sekce ke stažení nebo si jej nainstalovat pomocí NuGet.

Šifrujte soubory PDF pomocí C++

Níže jsou uvedeny kroky k zašifrování souboru PDF pomocí Aspose.PDF for C++.

Následující ukázka kódu ukazuje, jak zašifrovat soubor PDF pomocí C++.

For complete examples and data files, please go to https://github.com/aspose-pdf/Aspose.Pdf-for-C
// Načtěte existující dokument PDF
auto doc = MakeObject<Document>(L"..\\Data\\SecurityAndSignatures\\input.pdf");

// Způsob 1: Přímé použití předdefinovaných oprávnění.
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");

// Způsob 2: Na základě předdefinovaného oprávnění a změnit některá specifická oprávnění.
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");

// Způsob 3: Na základě předdefinovaných oprávnění a změn některých konkrétních kombinací oprávnění Adobe Professional.
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");

// Way4: Míchá cestu 2 a cestu 3
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");

Dešifrování souborů PDF pomocí C++

Níže jsou uvedeny kroky k dešifrování souboru PDF pomocí Aspose.PDF for C++.

Následující ukázka kódu ukazuje, jak dešifrovat PDF pomocí C++.

For complete examples and data files, please go to https://github.com/aspose-pdf/Aspose.Pdf-for-C
// Načtěte existující dokument PDF
auto doc = MakeObject<Document>(L"..\\Data\\SecurityAndSignatures\\Decrypt.pdf", L"password");
// Dešifrovat PDF
doc->Decrypt();
// Uložte aktualizovaný dokument
doc->Save(L"..\\Data\\SecurityAndSignatures\\Decrypt_out.pdf");

Závěr

V tomto článku jste se naučili šifrovat nebo dešifrovat soubory PDF pomocí C++. Ukázka kódu také ukázala, jak nastavit různá oprávnění při šifrování souboru PDF. Více o C++ PDF API můžete prozkoumat pomocí dokumentace.

Viz také