У цій статті описано, як видобувати посилання з PDF за допомогою C#. Він містить параметри IDE, кроки та зразок коду для розробки витягувача посилань PDF за допомогою C#. Ви навчитеся отримувати вибрані анотації зі сторінки та отримувати URI з анотацій типу посилання.
Кроки для вилучення URL-адреси з PDF за допомогою C#
- Налаштуйте IDE на використання Aspose.PDF for .NET для отримання URI зі сторінки PDF
- Завантажте вихідний PDF file і перегляньте всі сторінки в ньому
- Створіть annotation selector для пошуку анотацій посилань на сторінці
- Витягніть усі анотації та отримайте список вибраних анотацій
- Перегляньте кожну анотацію посилання та знайдіть відповідні дії
- Передайте дію GoToURIAction для доступу та відображення URI
Ці кроки описують, як витягти гіперпосилання з PDF за допомогою C#. Створіть селектор анотацій для анотацій посилань і використовуйте його для вибору списку цільових анотацій. Переведіть кожну анотацію посилання в GoToURIAction і отримайте URI з цієї дії.
Код для вилучення гіперпосилання з PDF за допомогою C#
using System; | |
using System.Linq; | |
using Aspose.Pdf; | |
using Aspose.Pdf.Annotations; | |
class PdfLinkExtractor | |
{ | |
static void Main() | |
{ | |
// Initialize and apply the Aspose.PDF license | |
new License().SetLicense("license.lic"); | |
// Load the PDF document containing hyperlinks | |
using (var pdfDocument = new Document("PdfWithLinks.pdf")) | |
{ | |
// Loop through each page in the PDF document | |
foreach (var (pdfPage, pageNumber) in pdfDocument.Pages.Select((page, index) => (page, index + 1))) | |
{ | |
// Display the current page number | |
Console.WriteLine($"Processing Page {pageNumber}"); | |
// Create an annotation selector to find link annotations on the page | |
var linkSelector = new AnnotationSelector(new LinkAnnotation(pdfPage, Rectangle.Trivial)); | |
// Extract all annotations from the current page | |
pdfPage.Accept(linkSelector); | |
// Retrieve the list of selected link annotations | |
var linkAnnotations = linkSelector.Selected; | |
// Iterate through each link annotation | |
foreach (var annotation in linkAnnotations) | |
{ | |
// Check if the annotation has any associated actions | |
if (annotation.Actions.Any()) | |
{ | |
// Cast the action to a GoToURIAction to access the URI | |
var uriAction = (GoToURIAction)((LinkAnnotation)annotation).Action; | |
// Display the extracted URI | |
Console.WriteLine($"Found URI: {uriAction.URI}"); | |
} | |
} | |
} | |
} | |
// Indicate that the process is complete | |
Console.WriteLine("URI extraction completed."); | |
} | |
} |
Наведений вище код демонструє, як витягти всі посилання з PDF за допомогою C#. AnnotationSelector приймає об’єкт LinkAnnotation, який вимагає об’єкта page і rectangle. Метод Accept() у класі Page приймає об’єкт вибору посилань і зберігає анотації посилань у колекції Selected.
Цей короткий підручник навчив нас процесу вилучення гіперпосилань зі сторінки PDF. Щоб видалити гіперпосилання з PDF-файлу, перегляньте статтю Як видалити гіперпосилання з PDF на C#.