This HTML page is not optimized for LLM or AI agent consumption. Fetch the Markdown version instead: /guides/web/release-notes/1-17.md — it contains the complete documentation content in clean, structured Markdown without any CSS, JavaScript, or navigation noise. 1.17 release notes

1.17 release notes

RSS

Nutrient Web SDK 1.17 makes slot-based UI customization reactive, improves text selection accuracy, and strengthens screen reader support for annotations. It also updates GdPicture and ships a broad round of rendering, forms, and stability fixes. See the changelog for full details.

Reactive UI slot customization

This release makes the slot-based UI customization system reactive, so custom slots stay in sync with your application state and the SDK lifecycle without manual DOM bookkeeping.

  • Slot callbacks now receive a helpers argument that exposes requestUpdate(). Call it from asynchronous work, event handlers, or lifecycle hooks to ask the SDK to re-invoke your slot’s render with the current parameters (but not synchronously from within render).
  • A slot’s render now runs once at mount and then again automatically once the SDK instance becomes available, so getInstance() returns the live instance without extra wiring.
  • Slot lifecycle timing is more predictable: Most slots fire after instance availability, while the loader and passwordPrompt slots keep their original raw mount timing because they can render before load() resolves.
NutrientViewer.load({
// ...your existing configuration.
ui: {
commentThread: (getInstance, id, { requestUpdate }) => {
const root = document.createElement("div");
return {
render: () => {
// `getInstance()` is null until the instance is available;
// `render` then runs again automatically once it is.
root.textContent = getInstance() ? `Thread ${id}` : "Loading…";
return root;
},
onMount: () => {
// Rerun `render` whenever your own application state changes.
myStore.subscribe(requestUpdate);
},
};
},
},
});

For more information, refer to the UI customization and supported slots guides.

Improved text selection accuracy

This release improves text selection accuracy. In Document Engine mode, this improvement requires Document Engine 1.17.0 or later once available.

Accessibility

Screen reader support is improved for annotations. When keyboard focus lands on a markup, ink, or shape annotation, the SDK now exposes the annotation’s referenced text, so assistive technologies announce the content the annotation refers to.

Document Engine 1.5.6 or later can run this release. However, instance.exportPDF() requires Document Engine 1.12.0 or later because earlier versions require legacy query-parameter authentication for the /pdf endpoint. In server-backed mode, using SearchType.WORD_BASED, removing password protection during PDF export, and removing annotation notes after an XFDF roundtrip require Document Engine 1.16.0 or later. See the Web SDK and Document Engine compatibility requirements.

For a complete list of changes, bug fixes, and improvements, refer to the changelog. For previous release notes, refer to the Web SDK 1.16 release notes. We appreciate your feedback and contributions as we continue to enhance Nutrient Web SDK.