Native XFA Image and Graphic Values
The event host builds native image, arc, line and rectangle value children and their supported edge, corner and fill property paths; a draw's effective value reaches the native PDF consumer
Creating a draw value
function updateGraphic(row, pngBase64) {
const image = row.logo.value.image;
image.contentType = "image/png";
image.aspect = "fit";
image.value = pngBase64;
const line = row.rule.value.line;
line.slope = "/";
line.edge.thickness = "0.25pt";
line.edge.color.value = "0,0,255";
}
Native value choices are mutually exclusive, and creation leaves the template and other repeated occurrences untouched
Arc and line each permit one edge, rectangle permits four edges and four corners, and arc and rectangle allow one fill
Line, rectangle and arc default to hand=even; line defaults to a backslash slope, whilst arc defaults to circular=0, startAngle=0 and sweepAngle=360
Image defaults to aspect=fit and transferEncoding=base64, with empty contentType, href and name attributes
Image consumption
Embedded PNG and JPEG draw values retain their decoded source colours; PNG transparency is stored as a native PDF soft mask rather than composited into the source channels
Fit preserves the image ratio inside the nominal region, none fills the region independently in both dimensions, width and height preserve the ratio whilst matching the named dimension, and actual uses physical image dimensions
Images are centred in their nominal region and clipped to that region; scaling and clipping preserve the surrounding graphics state
Actual sizing reads PNG pHYs density and JFIF density in dots per inch or dots per centimetre; an image without a supported physical-density record uses 96 DPI
Replacing an existing template image body keeps its template attributes unless a native form attribute overrides them
The FPC consumer reads original PNG and JPEG channels directly, avoiding pixel loss through LCL bitmap assignment; repeated identical opaque images retain native resource reuse
Graphic consumption
Created rectangle, line and arc values produce native paths with their effective edge colours and widths, including widths below one point; line slope and arc angular extent reach the consumer
New repeated instances receive independent native graphic properties, and script or native attribute-budget failures restore the exact native XDP bytes
Remaining refinements
Native exData XML operations import foreign content transactionally and consume persisted XHTML draws
External image resolution, additional physical metadata such as EXIF, imageEdit widget consumption, full fill and corner rendering, handedness, circular arc geometry and complete scalar validation stay separate implementation targets
Reference and related APIs
The property grammar and image modes follow XFA 3.3; see Scalar Value Properties, Draw and Caption Values and Interactive XFA Runtime