License handling

Hello,

We’re evaluating GemBox.Document for a .NET-based SaaS service that converts DOCX to PDF, and we’d like to clarify a few points before proceeding:

  1. Can we get a temporary full evaluation license (beyond the 2-page limit) to test layout fidelity, performance, and stability on large documents?

  2. How is licensing handled for deployment — do we only need developer licenses, or also for build agents/containers in production?

  3. Is Linux fully supported, and are outputs consistent with Windows? Any known limitations?

  4. How does GemBox handle fonts across platforms?

    • Can we register custom .ttf or .otf files?

    • Is font subsetting/embedding configurable in PDF output?

  5. Can we adjust image compression or DPI for smaller PDF outputs?

  6. Is the library thread-safe and suitable for parallel conversions in multiple containers?

  7. Are there options or diagnostics to detect missing/substituted fonts during conversion?

Thank you — we’re assessing whether GemBox.Document can serve as a reliable, cross-platform DOCX→PDF engine for automated document processing in our SaaS product.

Best regards,

Hi,

  1. I’ll send you a time-limited serial key in a separate reply. BTW, the 2-page limitation is a Free mode limitation for GemBox.Pdf, not GemBox.Document.
  2. Yes, you only need developer licenses. You don’t need licenses for build agents/containers.
  3. Yes, converting DOCX to PDF is fully supported on Linux. There are no known limitations.
  4. Installed fonts are automatically detected and used if the document’s content specifies their usage. Besides that, you can provide custom fonts by specifying a folder where they are located, or you can provide them by embedding fonts in an assembly. For more information, please check the Fonts example.
  5. Yes, use PdfSaveOptions.ImageDpi (e.g. document.Save("output.pdf", new PdfSaveOptions() { ImageDpi = 220 })).
  6. GemBox.Document is generally thread-safe, when working with a single DocumentModel object inside a single thread. But it’s not safe to process the same DocumentModel object inside multiple threads.
  7. Yes, try this:
FontSettings.FontSelection += (sender, e) =>
{
    if (e.Font != null)
        return;

    string fontName = e.FontName;
    var fonts = FontSettings.Fonts;

    // Pick one of the fonts from FontSettings.Fonts collection and set it to e.Font
    // to explicitly specify what fallback or substitute font will be used.
};

Regards,
Mario