v1.2.0
Changed
  • Renamed .Landscape() to .WithLandscape() for fluent API consistency.
  • Renamed .UseGrayscale() to .WithGrayscale() for fluent API consistency.
  • Renamed .EmulateMediaType() to .WithMediaType() — shorter and consistent with the With* convention.
  • Renamed .WaitFor() to .WithWaitStrategy() to avoid confusion with async operations.
  • Renamed .ReloadAfterStorageSet() to .WithReloadAfterStorage() for fluent API consistency.
  • Renamed .ConfigureFonts() to .WithFonts() — shorter and consistent with the With* convention.
v1.1.0
Added
  • Fluent .WithWatermark() API for text and HTML watermarks with configurable opacity, rotation, and position.
  • PDF metadata support — set title, author, subject, keywords, and creator via .WithMetadata().
  • CloudEnvironment.ConfigureForAzure preset for Azure App Service and Container Apps deployments.
  • New .ScrollPage() option to trigger lazy-loaded images before capture.
Changed
  • Default pool MaxSize increased from 4 to 8 for better throughput on multi-core hosts.
  • Improved browser recycling logic — instances are now recycled after 50 renders (previously 100).
Fixed
  • Resolved rare deadlock when calling RenderUrlAsPdfAsync with a CancellationToken that fires during navigation.
  • Fixed header/footer templates not respecting @media print styles.
v1.0.1
Fixed
  • Fixed PreWarmAsync() throwing ObjectDisposedException when called immediately after Configure() on Linux containers.
  • Corrected paper size calculation for custom dimensions specified in millimetres.
  • Resolved an issue where AddCookie() cookies were not sent on the initial page load when using RenderUrlAsPdfAsync.
v1.0.0
Added
  • Initial release of CobaltPDF — a high-performance HTML-to-PDF rendering engine for .NET.
  • Chromium-powered rendering with full support for modern CSS (Grid, Flexbox, custom properties, animations).
  • Managed browser pool with configurable MinSize, MaxSize, and automatic recycling.
  • Fluent API for PDF generation — chain options and call a single terminal method.
  • Thread-safe singleton design with isolated browser contexts per render.
  • Cookie, localStorage, and sessionStorage injection per render.
  • Custom HTTP headers and User-Agent per render.
  • Header and footer HTML templates with page number, total pages, and date tokens.
  • PDF encryption with user/owner passwords and granular permission control.
  • Wait strategies: network idle, DOM selector, JavaScript expression, custom signal, fixed delay.
  • Custom JavaScript execution before capture with cobaltNotifyRender() signal support.
  • Cloud environment presets: Docker, AWS ECS, Low-Memory.
  • ASP.NET Core dependency injection via services.AddCobaltPdf().
  • Companion package CobaltPDF.Requests for lightweight microservice clients.