Metadata a nástroje
Overview
Aspose.PDF FOSS pro .NET zahrnuje třídy utility pro přístup k metadatům, souřadnicovou geometriku, kolekce obrázků a artefakty na úrovni stránky. Tyto stavební bloky podporují operace vyšší úrovně v celé knihovně.
XMP metadata
Metadata na dokumentu poskytuje přístup k XMP metadata streamu. Čtení a zápis standardních nebo vlastních XMP vlastností.
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");Souřadnicová geometrie
Rectangle a Matrix jsou v celém API používány pro umístění a transformaci.
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);Operace s kolekcí stránek
PageCollection podporuje indexování, iteraci a akceptaci návštěvnického vzoru.
using var doc = Document.Open(pdfBytes);
for (int i = 1; i <= doc.Pages.Count; i++)
{
var page = doc.Pages[i];
}Kolekce obrázků
XImageCollection spravuje obrázky vložené do zdrojů stránky. XImage poskytuje metody pro inspekci vlastností obrázku.
var images = doc.Pages[1].Resources.Images;
foreach (var img in images)
{
Console.WriteLine($"Color type: {img.GetColorType()}");
}Artifacts
Artifact představuje neobsahové prvky jako vodoznaky, hlavičky a patičky. Používejte artefakty pro číslování stránek a dekorativní prvky.
var artifact = new Artifact(ArtifactType.Watermark);
artifact.SetPageNumberReplacementString("Page {0}");Tipy a osvědčené postupy
- Klíče metadat XMP se řídí specifikacemi Dublin Core a XMP — používejte standardní předpony jmenných prostorů.
- Souřadnice
Rectanglejsou v jednotkách uživatelského prostoru PDF (1/72 palce) s počátkem v levém dolním rohu. - Použijte
Matrixpro afinní transformace: translaci, rotaci, škálování a zkosení. XmpValuepodporuje typy string, integer, double, date a array.- Artefakty jsou strukturální prvky — neobjevují se při procházení stromu přístupnosti.
Běžné problémy
| Problém | Příčina | Oprava |
|---|---|---|
| Klíč metadat nebyl nalezen | Klíč používá jiný prefix jmenného prostoru | Nejdříve vylistujte všechny klíče, abyste našli správný prefix |
| Souřadnice obdélníku se zdají být převrácené | Počátek PDF je v levém dolním rohu, ne v levém horním rohu | Podle toho upravte souřadnice Y |
| Kolekce obrázků je prázdná | Obrázky jsou ve formě XObjectů, ne přímých zdrojů stránky | Zkontrolujte XFormCollection na vnořené zdroje obrázků |
FAQ
Jak mohu přečíst název dokumentu z metadat?
Přistupte k doc.Metadata["dc:title"] pro vlastnost názvu Dublin Core.
Mohu přidat artefakt vodoznaku?
Ano. Vytvořte Artifact typu Watermark a přidejte jej na stránku.
Jaký souřadnicový systém používá Rectangle?
Uživatelský prostor PDF: počátek v levém dolním rohu, jednotky 1/72 palce. Standardní stránka US Letter má rozměry 612×792 jednotek.
API Reference Shrnutí
| Třída / Metoda | Popis: |
|---|---|
Metadata | Slovník XMP metadat v dokumentu |
XmpValue | Typovaný obal pro hodnoty vlastností XMP |
Rectangle | Osa-zarovnaný ohraničující rámeček (llx, lly, urx, ury) |
Rectangle.ContainsPoint | Otestujte, zda bod leží uvnitř obdélníku |
Matrix | 2D matice afinní transformace |
Matrix.Translate | Vytvořte matici translace |
PageCollection | Uspořádaná kolekce stránek s indexací od jedné |
XImageCollection | Obrázkové zdroje na stránce |
XImage | Jednotlivý vložený obrázek s detekcí typu barvy |
Artifact | Prvek stránky, který není obsahem (vodoznak, záhlaví, zápatí) |
Artifact.SetPageNumberReplacementString | Šablona pro artefakty číslování stránek |