Esploriamo gli scenari relativi alla rotazione nei documenti PDF. Potrebbero esserci situazioni in cui potresti avere un documento PDF scansionato invertito che devi correggere. È possibile correggere un tale documento ruotando le pagine del documento. Potresti anche voler aggiungere filigrane di testo o immagini a un documento PDF ruotandole. A tal fine, questo articolo ti insegnerà come ruotare pagine PDF, testo e immagini in modo programmatico utilizzando C++.

API C++ per la rotazione di pagine PDF, testo e immagini

Aspose.PDF for C++ è una libreria C++ che consente di creare, leggere e aggiornare documenti PDF. Oltre a ciò, l’API supporta la rotazione di pagine PDF, testo e immagini. Puoi installare l’API tramite NuGet o scaricarla direttamente dalla sezione download.

PM> Install-Package Aspose.PDF.Cpp

Ruota le pagine PDF usando C++

Ruotare le pagine con Aspose.PDF per C++ è un gioco da ragazzi. Con poche righe di codice puoi ruotare tutte le pagine del documento PDF. Di seguito sono riportati i passaggi per ruotare le pagine PDF utilizzando C++.

Il codice di esempio seguente mostra come ruotare le pagine PDF utilizzando C++.

// Apri il documento PDF di origine
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample 1.pdf");

// Scorri le pagine
for (System::SharedPtr<Page> page : pdfDocument->get_Pages())
{
	// Ruota pagina
	page->set_Rotate(Aspose::Pdf::Rotation::on180);
}

// Salva il file PDF
pdfDocument->Save(u"OutputDirectory\\Rotated_out.pdf", SaveFormat::Pdf);

Rotazione del testo su pagine PDF utilizzando C++

Durante l’aggiunta di testo ai documenti PDF, puoi modificare molte proprietà del testo, incluso l’angolo. Nell’esempio seguente, aggiungeremo del testo a una pagina PDF e la ruoteremo con un angolo di 45 gradi. Di seguito sono riportati i passaggi per raggiungere questo obiettivo.

Il codice di esempio seguente mostra come ruotare il testo in una pagina PDF usando C++.

// Crea un'istanza della classe Document
auto pdfDocument = MakeObject<Document>();

// Aggiungi nuova pagina
System::SharedPtr<Page> page = pdfDocument->get_Pages()->Add();

// Crea oggetto TextFragment
System::SharedPtr<TextFragment> textFragment = MakeObject<TextFragment>(u"Rotated Text");

// Imposta la posizione del testo
textFragment->set_Position(MakeObject<Position>(200, 600));

// Imposta le proprietà del testo
textFragment->get_TextState()->set_FontSize(12);
textFragment->get_TextState()->set_Font(FontRepository::FindFont(u"TimesNewRoman"));
textFragment->get_TextState()->set_BackgroundColor(Aspose::Pdf::Color::get_LightGray());
textFragment->get_TextState()->set_ForegroundColor(Aspose::Pdf::Color::get_Red());
textFragment->get_TextState()->set_Rotation(45);
textFragment->get_TextState()->set_Underline(true);

// Crea oggetto TextBuilder
System::SharedPtr<TextBuilder> textBuilder = MakeObject<TextBuilder>(page);

// Aggiungi texc alla pagina
textBuilder->AppendText(textFragment);

// Salva il file PDF
pdfDocument->Save(u"OutputDirectory\\Rotated_text_out.pdf", SaveFormat::Pdf);

Ruota un’immagine su una pagina PDF usando C++

Durante l’aggiunta di immagini ai documenti PDF, puoi impostare molte proprietà come altezza, larghezza, opacità, rotazione, ecc. In questo esempio, aggiungeremo un’immagine a una pagina PDF e la ruoteremo di un angolo di 90 gradi. Di seguito sono riportati i passaggi per ruotare un’immagine su una pagina PDF.

Il codice di esempio seguente mostra come ruotare un’immagine su una pagina PDF usando C++.

// Apri il documento PDF di origine
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample 1.pdf");

// Crea oggetto ImageStamp
System::SharedPtr<ImageStamp> imageStamp = MakeObject<ImageStamp>(u"SourceDirectory\\aspose.png");

// Imposta le proprietà di ImageStamp
imageStamp->set_XIndent(250);
imageStamp->set_YIndent(350);
imageStamp->set_Height(100);
imageStamp->set_Width(300);
imageStamp->set_Rotate(Rotation::on90);
imageStamp->set_Opacity(0.5);

// Aggiungi ImageStamp alla pagina
pdfDocument->get_Pages()->idx_get(1)->AddStamp(imageStamp);

// Salva il file PDF
pdfDocument->Save(u"OutputDirectory\\Rotated_image_out.pdf", SaveFormat::Pdf);

Ottieni una licenza gratuita

Puoi provare l’API senza limitazioni di valutazione richiedendo una licenza temporanea gratuita.

Conclusione

In questo articolo hai imparato a ruotare pagine, testo e immagini nei documenti PDF usando C++. Aspose.PDF per C++ è una vasta API che fornisce molte funzionalità aggiuntive per lavorare con i file PDF. Puoi esplorare l’API in dettaglio visitando la documentazione ufficiale. In caso di domande, non esitare a contattarci sul nostro forum di supporto gratuito.

Guarda anche