
Ibex PDF Creator version 6 is now available for
.Net Framework 4.8 on Windows and
.Net 6.0, 8.0, 9.0 and 10.0 on Windows and Linux
Now released for .Net 10.0
What is Ibex
Ibex is a cross-platform .Net library for creating PDF files. To use Ibex you define a document template in XSL, then Ibex merges it with your XML data to create a PDF, like so:
using ibex4;
using System.IO;
public class Test
{
static void Main( string[] args )
{
FODocument IbexDoc = new();
using var xml = new FileStream( "test.xml", FileMode.Open, FileAccess.Read );
using var xsl = new FileStream( "test.xsl", FileMode.Open, FileAccess.Read );
using var pdf = new FileStream( "test.pdf", FileMode.Create, FileAccess.Write );
IbexDoc.generate( xml, xsl, pdf );
}
}
Ibex uses the W3C XSL Formatting Objects Standard to define document templates. A minimal example looks like this:
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master master-name="page" margin="36pt" page-height="11in"
page-width="8in">
<fo:region-body margin-top="78pt"/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="page">
<fo:flow font-family="Arial" font-size="11pt" flow-name="xsl-region-body">
<fo:block border="1pt solid green">Hello World</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
Templates can be expanded to include page headers and footers, automatic table of contents, cross references, images, indexing, PDF bookmarks, clickable links within the document and to external websites, and many more features.
Features
Scalable Performance
Ibex is the first commercially available XSL-FO formatter for .Net and remains the most complete, scalable and high performance formatter available. Ibex uses a streaming architecture, allowing massive documents to be produced without requiring huge amounts of memory.
No Runtime Costs
Ibex is licensed on a per-developer basis only. There are no per-server or per-CPU costs, you can deploy to as many test and production environments as you like, or ship Ibex as part of your application without runtime costs.
Accessibility Standards Compliance
Ibex supports the PDF/UA and Web Content Accessibility Guidelines 2.2 standards.
See Accessibility for more information.
Separating Layout from Content
Ibex gives you complete separation of data from document layout. Ibex takes data from your application (as XML) and uses an XSL stylesheet which defines the page layout to create a PDF file. Changes to the document layout don't require recompiling your application. Common layout features such as company logos and fonts can be standardised across different documents.
Scalable Vector Graphics
| Ibex supports Scalable Vector Graphics images including transparency, linear and radial gradients, and SVG images which contain other bitmap image | ![]() |
|---|
Complex Tables
| Ibex supports complex table layouts including cells which span multiple rows and columns, aligning data on decimal points regardless of font size, conditional headers and footers (for saying "continued on next page"), conditional borders at page breaks and lots more | ![]() |
|---|
Generating Table of Contents
| A table of contents can be automatically generated, including clickable page numbers which link to the correct page in the document |
|---|
Generating PDF Bookmarks
| Bookmarks can be automatically generated, including clickable page numbers which link to the correct page in the document | ![]() |
|---|
Right to Left Flow
| Ibex supports right to left text for Arabic text including shaping of adjacent Arabic characters and laying out tables and multi-column pages right to left | ![]() |
|---|



