Metadate și Utilitare

Metadata și Utilitare

Aspose.PDF FOSS for .NET include clase utilitare pentru acces la metadate, geometrie coordonată, colecții de imagini și artefacte la nivel de pagină. Aceste blocuri de construcție susțin operații de nivel superior în întreaga bibliotecă.


metadate XMP

Metadata pe un document oferă acces la fluxul de metadate XMP. Citește și scrie proprietăți XMP standard sau personalizate.

using var doc = Document.Open(pdfBytes);

// Read existing metadata
foreach (var entry in doc.Metadata)
{
    Console.WriteLine($"{entry.Key}: {entry.Value}");
}

// Set a custom property
doc.Metadata.Add("xmp:CustomProp", new XmpValue("custom value"));
doc.Save("with-metadata.pdf");

Geometrie coordonată

Rectangle și Matrix sunt utilizate în tot API-ul pentru poziționare și transformare.

var rect = new Rectangle(72, 700, 300, 720);
bool inside = rect.ContainsPoint(150, 710);

// Transformation matrix (translate by 100, 200)
var matrix = new Matrix(1, 0, 0, 1, 100, 200);

Operații de colecție de pagini

PageCollection suportă indexarea, iterarea și acceptarea modelului vizitator.

using var doc = Document.Open(pdfBytes);

for (int i = 1; i <= doc.Pages.Count; i++)
{
    var page = doc.Pages[i];
}

Colecții de imagini

XImageCollection gestionează imaginile încorporate în resursele unei pagini. XImage oferă metode pentru inspectarea proprietăților imaginii.

var images = doc.Pages[1].Resources.Images;
foreach (var img in images)
{
    Console.WriteLine($"Color type: {img.GetColorType()}");
}

Artefacte

Artifact reprezintă elemente non-conținut, cum ar fi filigrane, antete și subsoluri. Folosiți artefacte pentru numerotarea paginilor și elemente decorative.

var artifact = new Artifact(ArtifactType.Watermark);
artifact.SetPageNumberReplacementString("Page {0}");

Sfaturi și bune practici

  • Cheile de metadate XMP urmează specificațiile Dublin Core și XMP — utilizați prefixe de spațiu de nume standard.
  • Coordonatele Rectangle sunt în unități de spațiu utilizator PDF (1/72 inch), cu originea în colțul din stânga jos.
  • Utilizați Matrix pentru transformări afine: translație, rotație, scalare și înclinare.
  • XmpValue suportă tipuri string, integer, double, date și array.
  • Artefactele sunt elemente structurale — nu apar în traversările arborelui de accesibilitate.

Probleme comune

ProblemăCauzăRemediere
Cheia de metadate nu a fost găsităCheia folosește un prefix de spațiu de nume diferitListează mai întâi toate cheile pentru a găsi prefixul corect
Coordonatele dreptunghiului par inversateOriginea PDF este în partea de jos‑stânga, nu în partea de sus‑stângaAjustează coordonatele Y în consecință
Colecția de imagini este goalăImaginile sunt în XObjects de tip formă, nu în resursele directe ale paginiiVerifică XFormCollection pentru resurse de imagini imbricate

Întrebări frecvente

Cum pot citi titlul documentului din metadate?

Accesați doc.Metadata["dc:title"] pentru proprietatea titlu Dublin Core.

Pot adăuga un artefact de filigran?

Da. Creează un Artifact cu tipul Watermark și adaugă-l pe pagină.

Ce sistem de coordonate folosește Rectangle?

Spațiul de utilizator PDF: origine în colțul din stânga jos, unități de 1/72 inch. O pagină standard US Letter are 612 x 792 unități.


Sumar al referinței API

Class / MethodDescription
MetadataDicționar de metadate XMP al documentului
XmpValueÎmpachetare tipizată pentru valorile proprietăților XMP
RectangleCutie de delimitare aliniată pe axe (llx, lly, urx, ury)
Rectangle.ContainsPointTestează dacă un punct se află în interiorul dreptunghiului
MatrixMatrice de transformare afină 2D
Matrix.TranslateCreează o matrice de translație
PageCollectionColecție de pagini ordonată cu indexare începând de la 1
XImageCollectionResurse de imagini pe o pagină
XImageImagine încorporată unică cu detectare a tipului de culoare
ArtifactElement de pagină non-conținut (filigran, antet, subsol)
Artifact.SetPageNumberReplacementStringȘablon pentru artefacte de număr de pagină

Vezi și

 Română