HPDFCreateXPSDocumentHandler-Funktion
function HPDFCreateXPSDocumentHandler: IHPDFDocumentHandler;
Erzeugt den optionalen XPS- und OpenXPS-Handler für feste Seiten mit geordnetem Glyphs-Text und nativer Vektor-Path-Konvertierung
Der Pfad-Importeur akzeptiert begrenzte abgekürzte Geometrie, F0- und F1-Füllregeln, einfarbige ARGB- und RGB-Füllungen und Striche als Attribut oder Eigenschaftselement, mehrstufige LinearGradientBrush- und elliptische RadialGradientBrush-Werte als Eigenschaftselement, gleichmäßiges Stopp-Alpha, Pinsel- und Pfad-Deckkraft, bezogene und absolute Gradientzuordnung, Strichbreite sowie sechsparametrige RenderTransform-Werte
Paketbasierte JPEG-, PNG-, TIFF- und JPEG-XR-ImageBrush-Füllungen unterstützen die Kachelmodi None, Tile, FlipX, FlipY und FlipXY, absolute oder auf RelativeToBoundingBox bezogene Viewbox- und Viewport-Zuordnung, natives Pfad- und Platzierungs-Clipping, endliche sechsparametrige Transform-Attribute oder ImageBrush.Transform-MatrixTransform-Elemente in pinsellokalen Koordinaten, Pinsel- und Pfad-Deckkraft, PNG-Soft-Mask-Alpha, DPI-bewusste intrinsische Größenbestimmung sowie einen Dekodier-Ressourcen-Cache pro Konvertierung
Erzeugt den optionalen Handler für feste XPS- und OpenXPS-Seiten
Path.OpacityMask akzeptiert einfarbige, mehrstufig lineare oder elliptisch radiale Gradienten sowie PNG-ImageBrush-Masken mit gewöhnlicher, gekachelter oder gespiegelter Platzierung; gleichmäßiges Alpha wird in bestehende Füll- und Strichzustände eingefaltet, während variables Alpha begrenzte native DeviceGray-Transparenzgruppen nutzt, die Shading-Patterns und Bild-Soft-Mask-Streams wiederverwenden
VisualBrush akzeptiert inline oder ressourcenbasierte Canvas-, Path- und Glyphs-Visuals, löst StaticResource-Werte über verschachtelte und ferne ResourceDictionary-Bereiche auf und bildet eine absolute Viewbox auf einen absoluten oder RelativeToBoundingBox-Viewport ab
Jedes unterscheidbare Visual wird einmal in ein wiederverwendbares PDF-Form-XObject mit seinen erforderlichen Font-, XObject-, Pattern-, Grafikzustands- und Farbraum-Ressourcen kompiliert; gewöhnliche Platzierung führt das Form direkt aus, während Tile, FlipX, FlipY und FlipXY begrenzte native Tiling-Patterns verwenden, statt visuelle Zeichnungsbefehle pro Zelle zu entfalten
Canvas.Clip akzeptiert abgekürzte Geometrie, lokale oder ferne StaticResource-PathGeometry-Werte und direkte Eigenschaftselemente mit begrenzten strukturierten PathFigure-Linien-, Polylinien-, Bézier-, quadratischen oder Bogen-Segmenten; Geometrie-Transformationen und EvenOdd- oder NonZero-Füllregeln komponieren mit der Canvas-Transformation, bevor nativ mit PDF W* oder W geclippt wird
Verschachtelte Canvas-Clips behalten ihre PDF-Grafikzustands-Schnittmenge, schränken Link-Anmerkungen von Nachfahren auf aktive transformierte Clip-Grenzen ein, behandeln leere Geometrie als leeren Clip ohne Diagnostik, begrenzen geparste Geometrie auf 100.000 Zahlenwerte und schlagen geschlossen fehl, bevor Kinder gezeichnet werden, wenn Geometrie oder ihre effektive Matrix fehlerhaft oder singulär ist
Canvas-Opacity sowie einfarbige, Linear-Gradient-, Radial-Gradient- oder PNG-Bild-Canvas.OpacityMask-Werte fassen Nachfahren in einem isolierten DeviceRGB-Form-XObject zusammen, sodass sich überlappende Kinder komponieren lassen, bevor das Gruppen-Alpha angewendet wird; gleichmäßiges Masken-Alpha wird in diesen Gruppenzustand eingefaltet, während räumlich variables Alpha begrenzte native Soft-Mask-Ressourcen wiederverwendet
Verschachtelte Canvas-Gruppen bewahren ihre eigenen Transformationen, Clips, übertragenen Fonts, XObject-, Pattern-, Grafikzustands- und Farbraum-Ressourcen sowie geclippte Links; die Konvertierung erlaubt höchstens 4.096 Canvas-Gruppen-Forms und 16 MiB erfasster Befehle pro Gruppe und weist doppelte, nicht unterstützte, fehlerhafte, singuläre oder überdimensionierte Masken zurück, bevor teilweise oder unerreichbare Ressourcen veröffentlicht werden
Glyphs parst höchstens 65.536 strenge Indices-Zuordnungen, bewahrt Cluster-Codeeinheits- und Glyphenzahlen, explizite Vorschübe in Hundertstel-em, horizontale und vertikale Versätze, umgekehrte Progression bei ungeradem BidiLevel, einfarbige Attribut- oder Glyphs.Fill-Eigenschaftspinsel, Deckkraft und Unicode-Extraktion, bündelt einfache Zuordnungen in native PDF-TJ-Arrays und schlägt bei fehlerhafter oder unbegrenzter Eingabe geschlossen fehl
Paket-FontUri-Ressourcen akzeptieren TrueType- und OpenType-Programme, TTC-Member-Fragmente und GUID-verschleierte XPS-Fonts, bewahren direkte GlyphIndex-Werte oder aus der cmap abgeleitete Glyphen, nutzen Font-Bytes über Runs hinweg wieder, achten Einbettungs- und No-Subsetting-Berechtigungen und veröffentlichen clusterbewusste ToUnicode-Maps
FixedPage.NavigateUri auf transformierten Path- und Glyphs-Visuals erzeugt native PDF-Link-Anmerkungen, deren Klickbereiche Pfadgeometrie oder Glyphen-Metriken folgen; HTTP-, HTTPS- und Mail-Links werden URI-Aktionen, während paketrelative Seitenverweise und percent-dekodierte LinkTarget-Fragmente nach dem Anlegen aller Seiten vorwärts- oder rückwärtsgerichtete GoTo-Aktionen werden
Ein Canvas-FixedPage.NavigateUri wird von Path-, Glyphs- und verschachtelten Canvas-Visuals der Nachfahren geerbt, bis ein Nachfahre ihn überschreibt; jede Anmerkung behält die Grenzen und die Transformation ihres Visuals, aktive Canvas-Clips schränken geerbte Klickbereiche ein, verschachtelte Bereiche stellen das äußere Ziel wieder her, isolierte Deckkraftgruppen bewahren Anmerkungen, und die Erfassung in wiederverwendbaren VisualBrush-Forms bleibt nicht-interaktiv
Die Navigation akzeptiert höchstens 65.536 Links und 8.192 Zeichen pro URI, prüft den Abbruch während der Veröffentlichung, unterdrückt Anmerkungen, während wiederverwendbare VisualBrush-Inhalte erfasst werden, und schlägt bei Steuerzeichen, unsicheren Schemata, fehlenden Zielen oder Seiten- und Fragment-Mismatch geschlossen fehl
Nicht unterstützte nicht standardmäßige RelativeTransform, unaufgelöste Matrix-Ressourcen, Repeat- oder Reflect-Gradientausbreitung, Nicht-sRGB-Interpolation, variables Stopp-Alpha in Farbpinseln, entartete Achsen, Farbumwandlung, Bildstriche, relative VisualBrush-Viewboxes, Stilsimulation, seitlich gedrehte Glyphen und erweiterte Stricheigenschaften bleiben explizite Diagnosen