Znak wodny w dokumencie identyfikuje stan dokumentu z tekstami takimi jak poufne, robocze itp. i utrudnia kopiowanie oryginalnego dokumentu. Znaki wodne mogą być oparte na obrazie lub tekście i są często używane w dokumentach PDF. Może być konieczne dodanie znaków wodnych do dokumentów PDF w aplikacjach C++. W tym celu w tym artykule dowiesz się, jak dodawać i usuwać tekstowe i graficzne znaki wodne z dokumentów PDF za pomocą języka C++.
- C++ API do wstawiania i usuwania tekstowych/obrazowych znaków wodnych
- Wstaw tekstowy znak wodny do pliku PDF za pomocą C++
- Wstaw znak wodny obrazu do pliku PDF za pomocą C++
- Usuń znak wodny tekstu lub obrazu z pliku PDF za pomocą C++
C++ API do wstawiania i usuwania tekstowych/obrazowych znaków wodnych
Aspose.PDF for C++ to biblioteka C++, która umożliwia tworzenie, odczytywanie i aktualizowanie dokumentów PDF. Ponadto interfejs API obsługuje wstawianie i usuwanie znaków wodnych obrazu/tekstu w dokumentach PDF. Możesz zainstalować API przez NuGet lub pobrać bezpośrednio z sekcji downloads.
PM> Install-Package Aspose.PDF.Cpp
Wstaw tekstowy znak wodny do pliku PDF za pomocą C++
Dzięki Aspose.PDF for C++ API możesz kontrolować styl czcionki, tekst, kolor, kąt, krycie itp. Tekstowego znaku wodnego. Poniżej przedstawiono kroki dodawania tekstowego znaku wodnego do pliku PDF.
- Załaduj plik PDF przy użyciu klasy Document.
- Utwórz instancję klasy TextStamp z tekstem znaku wodnego.
- Ustaw pozycję i inne właściwości znaku wodnego.
- Dodaj znak wodny do strony za pomocą Document->getPages()->idxget(1)->AddStamp(System::SharedPtr stempel) metoda.
- Zapisz plik PDF za pomocą metody Document->Save(System::String outputFileName, SaveFormat format).
Poniższy przykładowy kod pokazuje, jak dodać tekstowy znak wodny do pliku PDF przy użyciu języka C++.
// Otwórz źródłowy dokument PDF
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample 1.pdf");
// Utwórz instancję klasy TextStamp
System::SharedPtr<TextStamp> textStamp = MakeObject<TextStamp>(u"CONFIDENTIAL");
// Ustaw pozycję znaku wodnego
textStamp->set_XIndent(70);
textStamp->set_YIndent(300);
// Ustaw właściwości tekstu
textStamp->get_TextState()->set_Font(FontRepository::FindFont(u"Arial"));
textStamp->get_TextState()->set_FontSize(72.0F);
textStamp->get_TextState()->set_ForegroundColor(Aspose::Pdf::Color::get_Red());
textStamp->set_Opacity(0.4);
textStamp->set_RotateAngle(45);
textStamp->setStampId(123456);
// Dodaj znak wodny do strony PDF
pdfDocument->get_Pages()->idx_get(1)->AddStamp(textStamp);
// Zapisz plik PDF
pdfDocument->Save(u"OutputDirectory\\Text-Watermark-Out.pdf", SaveFormat::Pdf);
Wstaw znak wodny obrazu do pliku PDF za pomocą C++
Znaki wodne obrazu są zwykle używane do pokazania własności dokumentu za pomocą logo lub innego możliwego do zidentyfikowania obrazu. Możesz dodać znak wodny obrazu do plików PDF, wykonując czynności podane poniżej.
- Załaduj plik PDF przy użyciu klasy Document.
- Utwórz instancję klasy ImageStamp z obrazem znaku wodnego.
- Ustaw pozycję i inne właściwości znaku wodnego.
- Dodaj znak wodny do strony za pomocą Document->getPages()->idxget(1)->AddStamp(System::SharedPtr stempel) metoda.
- Zapisz plik PDF za pomocą metody Document->Save(System::String outputFileName, SaveFormat format).
Poniższy przykładowy kod ilustruje sposób dodawania znaku wodnego obrazu w pliku PDF przy użyciu języka C++.
// Otwórz źródłowy dokument PDF
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample 1.pdf");
// Utwórz instancję klasy ImageStamp
System::SharedPtr<ImageStamp> imageStamp = MakeObject<ImageStamp>(u"SourceDirectory\\aspose.png");
// Ustaw położenie znaku wodnego
imageStamp->set_XIndent(150);
imageStamp->set_YIndent(350);
// Ustaw inne właściwości
imageStamp->set_Height(100);
imageStamp->set_Width(300);
imageStamp->set_RotateAngle(45);
imageStamp->set_Opacity(0.4);
imageStamp->setStampId(12345678);
// Dodaj znak wodny do strony PDF
pdfDocument->get_Pages()->idx_get(1)->AddStamp(imageStamp);
// Zapisz plik PDF
pdfDocument->Save(u"OutputDirectory\\Image-Watermark-Out.pdf", SaveFormat::Pdf);
Usuń znak wodny tekstu lub obrazu z pliku PDF za pomocą C++
Mogą wystąpić sytuacje, w których trzeba usunąć znaki wodne z dokumentu PDF. W poprzednich przykładach zdefiniowaliśmy identyfikatory zarówno tekstowych, jak i graficznych znaków wodnych. Użyjemy tych identyfikatorów do usunięcia znaków wodnych z dokumentów PDF. Poniżej przedstawiono kroki usuwania znaków wodnych z plików PDF.
- Utwórz instancję klasy PdfContentEditor.
- Załaduj dokument PDF za pomocą metody PdfContentEditor->BindPdf(System::String inputFile).
- Usuń znak wodny za pomocą metody PdfContentEditor->DeleteStampById(int32t stampId).
- Zapisz plik PDF za pomocą metody Document->Save(System::String outputFileName, SaveFormat format).
Poniższy przykładowy kod pokazuje, jak usunąć tekstowe i graficzne znaki wodne z plików PDF przy użyciu języka C++.
// Utwórz instancję klasy PdfContentEditor
System::SharedPtr<PdfContentEditor> contentEditor = MakeObject<PdfContentEditor>();
// Otwórz plik PDF zawierający znak wodny
contentEditor->BindPdf(u"SourceDirectory\\SampleImageWatermark.pdf");
// Usuń znak wodny według identyfikatora
contentEditor->DeleteStampById(12345678);
// Zapisz plik PDF
pdfDocument->Save(u"OutputDirectory\\Remove-Watermark-Out.pdf", SaveFormat::Pdf);
Uzyskaj bezpłatną licencję
Możesz wypróbować interfejs API bez ograniczeń ewaluacyjnych, prosząc o bezpłatną licencję tymczasową.
Wniosek
W tym artykule nauczyłeś się, jak pracować ze znakami wodnymi w plikach PDF przy użyciu języka C++. W szczególności nauczyłeś się dodawać i usuwać graficzne i tekstowe znaki wodne z dokumentów PDF za pomocą Aspose.PDF for C++ API. Interfejs API zapewnia wiele dodatkowych funkcji do automatyzacji zadań związanych z plikami PDF. Możesz szczegółowo zapoznać się z interfejsem API, odwiedzając oficjalną dokumentację. W przypadku jakichkolwiek pytań skontaktuj się z nami na naszym darmowym forum wsparcia.