Ibex Downloads

Trial versions of Ibex for .Net can be downloaded for evaluation free of charge. Unless a license is purchased versions which are downloaded for evaluation will expire in 30 days.

Ibex for .Net Framework 4.8

For information on downloading and installing Ibex for .Net Framework 4.8 see installation

Ibex for .Net 6, .Net 7, .Net 8

The latest version of Ibex works on .Net 6, .Net 7 and .Net 8. This version works on Windows and Linux operating systems.

Installation

Ibex is installed as from nuget.org as two separate components.

Ibex.PDF.Creator

The Ibex.PDF.Creator package contains the library which you will link to your own application. This can be downloaded either using the "Manage Nuget Packages" menu option from within Visual Studio or using the "dotnet add package" command on the command line.

Ibex.CommandLine

The Ibex.CommandLine package is a console application to create PDF files from the command line, for use during testing and development. The Ibex.CommandLine package is a dotnet tool. This is installed from a command shell like so:

dotnet tool install -g Ibex.CommandLine

An existing installation can be updated using this command:

dotnet tool update -g Ibex.CommandLine

It can be uninstalled using this command:

dotnet tool uninstall --global Ibex.CommandLine

The Ibex.CommandLine tool, when it is installed as a dotnet global tool, is accessed using the command "ibex". So for example if we had a file called 'test.fo' this command would created a PDF file from it:

ibex test.fo 

Evaluating Ibex

Users may evaluate the Ibex PDF Creator for a period of 30 days from the date of download after which time a license to continue using the software must be purchased.

Ibex runs in evaluation mode unless either:

  • a Developer License file (called xmlpdf.lic) is located, or
  • Ibex is being loaded at runtime by an application which you have developed, in which case you can pass Ibex a runtime key (a string) using the setRuntimeKey() API.

License files are issued to users when they purchase the product. No license file is necessary to evaluate the software.

A license is required for each developer with the Ibex PDF Creator installed on their computer. Where multiple developers develop use a shared server a license is required per developer. Where a single developer uses more than one computer only a single license is required. No runtime or server licensing is required.

When running in evaluation mode:

  • the phrase "created with evaluation software from www.xmlpdf.com" or similar is printed at the bottom of each page.
  • the software will cease to function after 30 days.

Other than these two things the software functions the same in licensed and evaluation modes.

Release notes

The following table lists Ibex releases in version number order identifying significant changes or improvements.

Version
Released
Notes
6.8.0.2 July 2024 Updates ImageSharp libraries to 3.1.5( .Net 6,7,8) and 2.1.9 (.Net Framework 4.8)
6.8.0.1 June 2024 Packages .Net Framework 4.8 and Net 6,7,8 versions in same nuget package
6.7.0.3 June 2024 beta release for .Net Framework 4.8
6.6.2.6 April 2024 Fixed a regression in the implementation of last-line-end-indent
6.6.2.2 March 2024 Updated ImageSharp library to 3.1.3 due to CVE-2024-27929
Add facility to override the Producer field in document properties
6.6.1.1 December 2023 First release for .Net 8
Adds experimental ibex:text-align-only attribute which works like the text-align property but applies if there is exactly one line in the paragraph
Reduces size of YCbCr jpeg images
Fixes start-align defaulting to "none" instead of "left"
6.5.1.2 June 2023 Fixes a problem with listing fonts which did not exist
6.5.1.1 June 2023 Adds support for whitelisting fonts for faster loading on Azure
6.5.0.6 May 2023 Uses ImageSharp 3.0.1
Added support for Ycck colorspace
Improved support for YCbCr colorspaces
6.5.0.5 May 2023 Now supports both .Net 6 and .Net 7
Has experimental support for .Net 8 preview 3
6.4.9.2 September 2022 Improves handling of images which use YCbCr color spaces
Improves the formatting of page numbers based on the "format" attribute of the fo:page-sequence element
6.4.3.1 August 2022 Fixed a problem with SVG curves when a relative smooth curve preceeded another curve in a path element
6.1.0 March 2022 Upgraded to .Net 6.0, with this release replacing the .Net Framework and .Net Core prior versions
Changed image file processing from using System.Drawing to using ImageSharp. This change was made because as of .Net 6 some features of System.Drawing are no longer supported on Linux (see .Net 6 Breaking Changes)
Ibex should create the same PDF output on Windows and Linux with the one exception that Arabic text shaping is currently not supported on Linux. This should be resolving using ICU in the near future
4.11.45 June 2021 Fixes an issue where some internal links in a PDF were not working in chromium based browsers
Fixes an issue where "disregard-shifts" was not always working
4.11.43 October 2020 Changes the position of elements which are inside fo:foonote-body elements and have position="absolute" and have a non-zero "top" property. These are now positioned relative to the foonote-reference-area not the page
SVG: corrects the size of text defined using "px" units, which was too small
SVG: trims spurious spaces in "stroke-dasharray" properties which were causing the wrong line pattern to be displayed
4.11.42 September 2020 Fixes a problem with horizontal alignment of table elements
Adds support for text-anchor in Arabic text within SVG files
Adds support for SVG gradient elements which reference other gradient elements
Reworked font loading so now fonts with English and non-English names can be used with either name
4.11.36 April 2020 Fixes a problem with image alignment within the content rectangle
Fixes a problem parsing SVG path elements
Fixes a problem which occurs when using a relative 'm' path command as the first instruction in an SVG path
4.11.32 April 2020 First general release dotnet core version
4.11.9 March 2020 Change to start-indent processing for better specification conformance
Improved handling for fo:footnotes elements which did not contain a fo:footnote-body element
Added support for odd TrueType fonts which do not have a font name in the name table
Extended locations search for shaping assemblies to support loading them from IIS temporary directories
4.10.0.4 May 2019 Added limited support for splitting footnotes which are longer than one page
Added Arabic text support inside SVG images
4.9.0.27 February 2019 Improved parsing of SVG path elements
4.9.0.23 September 2018 Added more colors like "aliceblue" from https://www.w3.org/TR/SVG/types.html#ColorKeywords
When processing a badly formed jgep Ibex now uses the .net palette to try an determine if it is greyscale
Fixed issue with cell backgrounds obscuring text
Fixed overconstraint issue where widows or orphans settings prevented a block from being split which contained another block with break-after="page"
Fix for Arabic HAMZA character
4.9.0.11 July 2017 Added VariableTableReadAheadMultiplier to settings
Adjusted the scoring of list items to use the body if the label is smaller and has not been split
Changed case on doc.loadFontFromMemory
Improved the vertical arrangement of fo:inline-container
Added table-layout=auto for fo:table-and-caption
Suppressed messages like "inside element bookmark-label at line 345 which does not support text" when not in fo namespace
Improved the test for top-of-page after a break
Fixed a null pointer exception when a table had rows but none in the first body
Added support for setting the default printer scaling using ibex:viewer-preferences print-scaling="none"
Improved support for Arabic diacritics
Fixed a slowdown at end of pdf creation when page count was greater than 100,000
Fixed fill-opacity conflicting with opacity in SVG images
4.8.9.4 June 2016 Fixed a problem with the heights of fo:inline-containers
4.8.9.3 May 2016 Fixed a problem with font sizes using em units in some regions
4.8.9.2 March 2016 Added an attribute to the footnote anchor fo:inline to keep footnote anchors and footnotes bodies on the same page. To keep an anchor and the body on the same page specify ibex:keep-with-body="always" on the anchor fo:inline object
Changed the fo:inline-container to align the text baseline with the baseline of the line the fo:inline-container is on
Image caching is now off by default resulting in lower memory usage when creating documents with hundreds or thousands of images
Remove a spurious usage of Helvetica font when adding id's to objects
4.8.8.6 November 2015 Changed the behaviour of table layout when there are no fo:table-column elements
The external-destination and internal-destination properties can now include '(' and ')' characters
The /F flag was added to internal destinations when creating PDF/A files
Image processing now uses a faster .Net API
4.8.7.7 August 2015 Fixed a problem where automatic column layout was being confused by number-rows-spanned
Fixed a problem with number-rows-spanned when splitting a row over a page break
For PDF/A-1b added the timezone to the values of /CreationDate and /Moddate and removed milliseconds from the values of xmp:CreateDate and xmp:ModifyDate
4.8.7.1 April 2015 Fixed a problem in automatic table layout where cell-width was specified on each cell and the combined cell width was different to the table width
4.8.6.8 March 2015 Fixed a problem in automatic table layout when the rows considered in the layout ended part way through a cell which spanned multiple rows
4.8.6.7 March 2015 Fixed some problems with keep-with-previous interacting with cells which had rowspan greater than one
Improved image loading when loading files from UNC names
Fixes a problem with Arabic text in repeated table heade
Fixed inheriting margin-right onto the first PCDATA element of an fo:block
4.8.6.4 January 2015 Fixed width on fo:table-cell not working when table-width not specified
4.8.6.3 January 2015 Fixed incorrectly applying block-progression-dimension.minimum to an fo:table-row which had no complete cells in it, only cells starting or ending in rows above or below
4.8.6.2 December 2014 Fixed a problem where column ordering was sometimes incorrect
4.8.6.0 November 2014 Made improvements to right-to-left table formatting to better support number-columns-spanned
4.8.5.8 July 2014 Fixed the width property not always working on an fo:inline-container
Fixed an issue when content-width and content-height both specified
Changed shaping dlls to cache fonts
Changed widow/orphan to consider line size, so lines which contain very large images are not considered
If an SVG text element has no anchor and the first child tspan element does, use the anchor from the tspan
Disabled incorrect inheritance of baseline-shift
If whitespacecollapse = preserve and whitespacetreatment = preserve don't trim spaces off the end of the line
Fixed the SVG path 'z' operation
Reworked the right to left implementation so if the writing direction = right-to-left columns in multiple-column pages are right-to-left
Fixed what happens when a font-family property contains a font which is not installed
Svg now supports multiple fonts using font-family
Fixed an error parsing svg color properties
4.8.4.2 February 2014 Fixed break-before="odd-page" not breaking in the middle of an odd page
Add support for % in colors such as rgb(100%,30%,1%)
Fixed a problem with marker retrival for "document"
Added MaxCharactersFromEntities = 0 to XML reader settings to support large entities
Writes images to disk sooner reducing memory usage in documents with many images
4.8.3.0 October 2013 Fixes a problem where a cell may not always be expanded to the full row height when the cell has number-rows-spanned greater than 1 and there is another cell in the row which also has number-rows-spanned greater than 1 and the second cell is taller
Fixes a problem with footnotes inside tables
4.8.2.8 October 2013 Fixes a problem where last-line-end-indent is ignored when used in conjunction with Chinese text
4.8.2.7 September 2013 Improved support for visiblilty="hidden"
Fixed an issue in SVG using gradientTransform on radialGradient
If a graphic overflows the region, it is constrained to the region using the region's inline-progression-dimension if it is rotated relative to the region
A table footer now correctly collapses it's top border with any border specified on the preceding table body
4.8.2.2 April 2013 Fixed an issue with TrueType font files which have more than one kerning subtable
Fixed an issue with Chinese text not formatting correctly on pages with mutiple columns
4.8.0.7 March 2013 Added support for SVG clip-paths which contain &ltuse&gt elements
Improved the placing of destination areas when using id= on an fo:page-sequence element
Added support for transforms on SVG &ltrect&gt nodes
Made various SVG changes to better support files created by Adobe Illustrator
Added support for gradientTransform and opacity on SVG linear and radial gradients
Fixed an issue with fo:basic-link elements which contain an image but no text
4.8.0.0 December 2012 Changing the DPI of CMYK jpeg images is unreliable in .NET so has been disabled
SVG processing now correctly handles spaces in dash-array values which are immediately after commas
SVG processing now correctly positions linear gradients when the first stop offset is not zero
SVG processing now correctly handles specifying both opacity and stroke-opacity on the same element
4.7.7.6 September 2012 Improves the support for different values of gradientUnits on SVG linear and radial gradients
4.7.7.5 September 2012 Image interpolation is disabled for PDF/a and PDF/x files
Space glyphs are rendered when using TrueType symbol fonts to support barcode fonts which use space characters as significant glyphs
Fixes a problem with page-position="last" combined with break-before="odd-page"
Fixes a problem with change bars when also using fo:page-number-citation
Fixes a problem with clip-path in SVG
Adds support for font-weight="bolder" in SVG
Adds support for fill-rule="evenodd" in SVG path elements
Changes the layout of fo:inline-container when then optimum width is not specified, now defaults to the width of the containing element
Fixes a problem when change bars are used on a page with multiple columns which contains a table which has a repeated header and is also followed by an element with span="all"
4.7.7.0 May 2012 Fixed the background on an fo:table-cell being too narrow when the number-columns-spanned was not 1
Fixed line-height-shift-adjustment changing the operation of baseline-shift
Fixed source boxes for annotations being too large and leading to clicking the wrong source box and jumping to the wrong destination
4.7.6.7 April 2012 Improves shaping of Arabic text formed from different adjacent fo:inline elements
Fixed a problem in splitting rows with rowspan &gt 1
Fixed a problem escaping text in bookmarks when using a non-unicode font
Fixed a problem splitting a table with a repeated end border on the fo:table element only
Disabled a BIDI exception generated for some Japanese text
Expanded the height of inline start markers which were smaller than line height to be the same as the line height. This corrects a visual problem when using background colors on adjacent fo:inline elements
Individual DLLs are now digitally signed, previously only the whole installer package was signed
4.7.6.1 December 2011 Changes the font size in svg images when using "pt" units
Fixes a problem when using pdfa and fo:page-number-citation
Adds printing the namespace to the unhandled element error message
Fixes a null pointer caused by the natual language change in 4.7.5.0
Changes the interaction of fo:wrapper when inside an fo:inline
Fixes an issue with inheriting the fill attribute in SVG
Implements SVG radial gradients
Adjusts the gradient center point for linear SVG gradients
Fixes a memory usage error
Adds support for DOCTYPEs on SVG images loaded from memory
The decode array for CMYK JPEG images had an additonal number which has now been removed
Sets the minimum left side bearing on fixed width TrueType fonts which do not have hmtx entries for all glyphs
4.7.5.0 July 2011 Improves the appearance of double leaders
Fixes an issue when using footnotes and multiple columns
Reduces memory requirements when using multiple columns
keep-together is now correctly inherited
Improved the functionality of fo:character when used in conjunction with suppress-at-line-break="retain"
Changes the process of positioning text on a line to try and keep together text elements which are in adjacent fo:inline elements and are not separated by white space
4.7.4.7 Fixes an issue with clipping non-body regions when overflow="hidden" on the region
Fixes an issue with borders and backgrounds on fo:leader elements
4.7.4.6 Corrects a problem which occurs when cells have number-rows-spanned &gt 1 and there is a large number (~2k+) of cells on the page
4.7.4.4 Corrects a problem with roman numerals
Allow negative space-before on blocks which are the first child of a reference area
Supports clipping for all block-containers with overflow="hidden". Previously only block-containers which had position="absolute" or position="fixed" supported clipping
4.7.4.3 fo:float should now inherit properties from fo:flow and fo:region- not just fo:region-
Added PDF_VERSION value to FODocument.Settings, this is inserted when creating a PDF/X file and defaults to "PDF/X-3:2002"
Fixed an issue when column widths are calculated from cell widths which are then respecified in the next row
4.7.4.2 Fixes a problem which occurs only in Acrobat 7 when using SVG images
4.7.4.1 Makes a minor change to table cell rendering so that when the bottom border of a cell is rendered at the same time as the top border of the following cell, this occurs after the contents of the following cell has been rendered
Fixes a problem relating to using margin="auto auto auto auto"
4.7.4.0 Retains bold and italic settings when falling back to the default font
Fixes a problem which occurred when the FO for a footnote was not properly formed
SVG images with width and height properties set to percentages will try to get these dimensions from the containing fo:external-graphic or fo:instream-foreign-object
Fixes a problem with missing leaders in Chinese text
4.7.3.8 Fixes a null pointer exception
4.7.3.7 SVG: Fixes a problem with SVG images in regions where the decimal separator is not '.'
SVG: If the outer &ltsvg&gt element has width or height properties specified without units (i.e width="300") these are now correctly treated as pixels whereas they were being treated as points. This will affect the size of such images
4.7.3.5 A page break on an fo:block inside an fo:inline at the start of a page no longer causes a loop
Fixes an exception which occurred when using automatic column width calculation on an fo:table which contained an fo:table-and-caption
Added support for soft hyphens
SVG: added stop ranges to linear gradients
SVG: added radial gradient support
4.7.3.4 Processing of CSS styles in svg images is improved
4.7.3.3 The body and label of a list item will be displayed with the label to the right of the body when the writing direction is right to left
baseline-shift is now supported in SVG images
XML namespaces declared at the start of an FO file are now inherited by inline SVG images
Empty fo:wrapper elements with id attributes are again supported
4.7.3.0 Fixed an issue with mutiple threads when a compiled XSL transform was reused
Adds support for underlining svg text
Fixed an issue with backgrounds on mixed English and Arabic text in fo:inline elements. Currently the use of borders on fo:inline elements on lines which contains mixed left to right and right to left text is not supported
4.7.2.7 Added line number information when line height exceeds region height
Fixed an issue when the same image was used in svg:image and fo:external-graphic
4.7.2.5 Fixes an issue where transparency works in Acrobat 9.x but not in 10.x
Changed text-align='.' to align lines with no '.' as if they had a trailing '.'
Fixed a image offset problem where an svg image used more than one svg:image element
Fixed a problem with control codes appearing in SVG text
Fixed a problem where transparent backgrounds where not working correctly
4.7.2.3 SVG: added support for text-anchor="end"
SVG: added the transform property to the path element
SVG: added text normalisation
When an fo:block had text-indent the indent should not apply after the block is split by a page break
4.7.2.2 Changed pixels per inch from 90 to 96 for consistency with other formatters. We recommend that you never use pixels as units but instead use pt, in, cm etc
Changed the HTML color "darkgrey" from rgb(64,64,64) to rgb(192,192,192)
Fixed a problem matching color expressions like rgb(192,192,192)
Changed the default size of an SVG image from 600x600pts to w=425 h=538 or 15cmx19xm
Changed to new SVG engine
Fixed a problem where margin values were conflicting with inherited start-indent values
4.7.2.0 Fixes a problem with collapsed cell borders not being repeated at page breaks
Made inline start markers use the BIDI type of the preceeding letter so that background colors and borders on fo:inline elements behave better when the inline contains mixed Arabic and English text
4.7.1.7 Improved the processing of non-spacing marks in Arabic text
4.7.1.5 Changed the justification code to consider lines ending in linefeeds
Fixed a problem splitting a table with variable headers when the first row was larger than page the size
Changed line spacing to enforce line-height being the minimum line height regardless of leading
Fixed an endless loop caused by having keep-with-next="always" and break-before="always" at the same place in the document
4.7.1.1
Fixed a problem with the use of &lt in strings in svg images
Fixed a problem where a space after an fo:inline was sometimes suppressed
4.7.1.0 Fixed a problem with number-columns-spanned when writing-mode was right to left
Fixed the size of the after region being calculated from precedence setting for the before region
4.7.0.9 Fixed a problem with layout when an fo:block-container had a top property which was larger than the containing region height
4.7.0.8 Fixed a problem on .NET 4.0 with SVG images which had embedded DTD references
Recoded inline support
4.7.0.7 Added new assemblies compiled with .NET 4.0, see the Installation chapter of the manual for specific details
If the Unicode paragraph separator &amp#2029 is used this is treated as a line break
Fixed display-align="after" sometimes overwriting space from space-after
Fixed incorrect placement of annotation click box for rotated annotations
Fixed a problem where start-ident was not correctly inherited through reference areas and deleted Settings.InheritIndentsThroughReferenceAreas
fo:list-item-label and fo:list-item-body no longer generate areas so don't have a border or background
Fixed a problem loading CMYK images on Windows 7 where the images load correctly on Windows XP
Fixed a problem when using page breaks on table rows and on the block immediately after the table
4.7.0.4 Fixed fo:basic-link not working correctly if the fo:basic-link contained an fo:block
Fixed scientific notation values from SVG being copied to the PDF file (error 110)
Improved the parsing of complex expressions
Added the Flags value to PDF/A files
Improved column balancing code
Fixed the overstrike color used to create bold text from normal fonts always being black
Fixed promoting a break-after property from a child to its parent and deleting it when the parent has not been fully loaded
Implemented text-align="."
Added a progress callback function, described here
4.6.0.5 Modified the layout of cells which have height specified regarding whether this implies keep-together
Fixed a conflict if z-index and overflow were used together on block container
Fixed a problem with escaped XML inside XML in PDF/A files
4.6.0.4 Fixed a problem with precedence on before and after regions
Fixed a problem with table headers and Bidirectional text
Fixed a problem with space-start and -end on inline elements
Corrected the behaviour of the width attribute on fo:block elements (it should be ignored)
Fixed a licensing problem using Turkish regional settings
Fixed a crash when using a corrupted TrueType font file
Fixed a problem formatting a table which has a header but no rows
Fixed a problem with space-after on an fo:block
Improved the behaviour of keeps across span reference areas
Changed the size of SVG images to be correct
4.5.9.7 If block-progression-dimension.optimium and .maxiumum are specified on a block container and content height is greater than block-progression-dimension.optiumum and block-progression-dimension.maxiumum is greater than block-progression-dimension.optimum then block-progression-dimension.maxiumum will be used
4.5.9.5 Improves memory use for large files (more than 40,000 pages)
4.5.9.4 Added reporting on overflowing fo:block-containers
Improved performance
4.5.9.2 Fixed a problem with colorspaces in PDF/A files
Improved balancing of content in two columns when the page is not filled
4.5.8.7 Improved border appearance when border-collapse="collapse" is used
Remove transparency support from the PDF if no transparent images were used
4.5.8.4 Changed proportional-width() to support non-integer values
Fixed a problem with Arabic text if Arabic and English words were not separated by spaces
Added support for TrueType collection files
Improved handling of Unicode characters in Type 1 fonts
Improved handling of Unicode characters &gt 0x20000
Improved implementation of border-style="double"
4.5.5 Adds C# and COM examples to the installer
4.5.4 Fixed keep-with-previous on fo:table-row not working in some circumstances
4.5.3.9 Fixed a problem with footnotes when used in conjunction with page-position="last"
Fixed an issue with retrieved markers affecting the borders on tables
4.5.3 Fixed an problem recalculating table column widths when splitting a table over pages which had a different number of columns
4.5.2.7 Added normalization to the XML text reader
Changed whitespace-collapse so it will now not remove a single space at start of line if whitespace-treatment="preserve"
Fixed a problem where an image inside an fo:inline with no specified size was getting zero width
Fixed splitting an inline element which contained a block level element which had break-before set
Made column-number a calculated value, so column-number="12-2" now works
Fixed a problem with borders and backgrounds on inline elements
4.5.2 Fixed a problem with padding at the bottom of the page
Fixed a problem with all text not appearing if a static content region was too small
Corrected a problem with clipping in block-container
Fixed missing bottom border on rowspan greater than 1 cell at end of table
4.5.1.6 Fixed a problem with position="relative"
Stopped the height attribute having any effect where it is not allowed by the specification, such as on an fo:block element
Fixed a problem when combining text-align="justify" and text-indent
Fixed a problem with ibex:custom elements
Implemented index-page-citation-list-separator and index-page-citation-range-separator
4.5.1 Improved image sizing functionality
Improved rotation support
Changed SVG code to work if using a DTD and not connected to internet
Changed BIDI formatting to fill more of paragraph width
4.3.7 Improved support for from-parent()
Added the image file name to image exception messages
Added support for in-memory SVG images
Added PDF/A1b support
Added the viewer-preferences element as described in the manual
Added 128 bit encryption
Fixed various minor bugs relating to image sizing, rotation and absolute positioning
Fixed an issue with vertial-align="middle" when aligning images
4.3.6 Fixed a problem with break-after on last element
4.3.4 Fixed a problem with floats aligned horizontally
4.3.2 Removed period compression at end of line if wrap-option="no-wrap"
Fixed a problem with wrapper element inheritance failing after a number of pages
Fixed link to root element in bookmarks
Fixed problem with page-position="last" after page-position="rest"
Fixed bug in splitting a list block
Fixed an issue with PDF/Sigq compliance
Added Arabic support
Fixed a problem with &ltibex:security&gt not working
Fixed using exponents like M -2.3848177e-016,953.74872 in SVG
4.2.2 Fixed an exception in automatic table layout with list items
Fixed a problem with using non-bold Type 1 fonts with font-weight="bold"
Added support for maximum-repeats on repeatable-page-master-alternatives
4.2.0 Fixed a problem with cumulative rotation
Fixed a problem with letter spacing
Fixed a null pointer exception using list items
Changed the rendering of borders to use lines rather than shapes to look better in Acrobat 8.x
4.1.9 Fixes an issue where using table-and-caption was using too much memory
Adds additional attributes to the ibex:mask element to support color masking in CMYK images
4.1.8 Fixed a problem with rendering backgrounds over cell contents
Added an sRGB color profile to all non PDF/X PDF files. This is required to correct text colors which were becoming bolder when a transparent image was used
Fixes a bug with text-align="outside"
Fixed absolute-position="fixed" to be from the page viewport area, not the page reference area, so margins on the page are not considered
4.1.7 Improved conformance for floats stacking horizontally
4.1.6 Fixed hanging on badly formed footnote
Fixed too-wide dashed borders when number-columns-spanned > 1
Changed Settings.LeaderDotSpacing from 1.6 to 1.0 to make does closer together in leaders
Fixed a problem with space-start and -end on leaders
Fixed centering of text followed by spaces
Fixed float=inside/outside problems
4.1.5 Added support for float="inside" and float="outside"
Fixed some issues with rotated content
Fixed non-repetition of table headers and footers with multiple columns
4.1.4 Fixed using page-number-citation to reference the root element
Fixed using conditionality=retain in a span=all block
Fixed reading XML when ProhibitDTD specified in .NET 2.0 only
Fixed inheriting start-indent="body-start" on a footnote inside a list
A table width is now set the the sum of table-column elements if they all have specified non-proportional widths
Fixed an issue with barcode fonts
Fixed calculation of line-height based on em values
4.1.2 Fixed a problem with borders when number-rows-spanned exceeded the number of rows in the table
Fixed a problem with leader expansion
4.1.1 Fixed a problem with using base-url
Corrected calculation of image heights in external-graphic
Disabled non-compliant use of width= on fo:block
Changed inferred float width from 30 to 0.30
Fixed a problem in .NET 2.0 when calling document('.') in XSL
Fixed calling from-table-column() with no parameters
Fixed missing markers on first the page of a document
Changed auto-table layout to consider padding and borders
4.1.0 Documented the ibex:anti-alias attribute on images
Documented the ibex:page attribute on images
Fixed an issue with .NET 2.0 and using strip-spaces
Added support for transparent PNG and GIF images, also changed the default PDF version to 1.4 to support this
Fixed the alignment of a line which contained an fo:page-number-citation and was not the last line in a paragraph
Fixed an issue with padding on absolutely positioned containers
4.0.7 Fixes an issue with break-before
4.0.6 Adds support for all XSL 1.1 elements
See ibex-transition.html for more information on changes between Ibex 3.x and 4.0
3.9.62 Adds support for alignment-baseline="middle" on leaders
No longer deletes a NBSP after a line feed
Adds the ability to pass objects to the XSLT translation
Adds the ibex:page attribute to select a specific page in a multi-page TIFF image
Adds some support for transparency in indexed color PNG images
Adds added support for running a script when the PDF file is opened
Changed the implementation of text-tranform="uppercase" to handle accented characters
Changed absolute-position="absolute" to be from nearest reference area
Added the flag UserAgent.SubsetFonts which can be set to prevent TrueType fonts from being subsetted
Added support for rendering a leader with leader-pattern="space" so any applicable text-decoration would be displayed
Fixed an issue in number-rows-spanned formatting code
Improved support for zero with spaces
3.9.51 Adds support for rounded borders on table cells
Selecting a blank page with blank-or-not-blank="blank" should now work correctly
Fixes a problem where a footnote could display before an empty footnote anchor
Fixes a problem where a cell with number-columns-spanned > 1 and different left and right border colors was getting the wrong right border color
Spacing in an rgb-icc function is now handled correctly
Improves handling of number-rows-spanned > 1 at the end of a page
The mime type returned from an HTTP server is now check to detect SVG images
Fixes a problem with alignment-baseline="middle"
Fixes a problem with deletion of non-breaking space after a linefeed
3.9.34 Reduces memory usage in large documents
3.9.33 Improves fo:marker support
Changes an internal namespace used to avoid a conflict with SharpZipLib
Fixed an issue with replacing ? with %3F in urls when retrieving an image using .Net 2.0
XMLPDFException is now serializable
Added support for changing the dpi of an indexed image
Now allows a span reference area to be empty if it does not occupy the whole page and content has keep-with-next or keep-with-previous so as to move all the content to the next page
3.9.21 Changed table columns to render right to left for Arabic content
Improved footnote layout
Fixed an issue with border rendering in long tables
Added support for the bottom attribute when absolute-position="absolute"
Fixed an issue with inherited-property-value(font-size)
Changed border rendering to not render shaped corners when sides which meet at that corner are the same style. This improves the on-screen appearance when anti-aliasing is enabled in Acrobat 7.x
3.9.7 Added .NET 2.0 support
Fixed an issue in list layout when the body region size changed between pages
Fixed an issue with expressions including cm and mm units in the same expression
Fixed an issue with color attributes on inline elements
3.8.7 Fixed issues in rotated content
Added ability to force a PDF version by doing this: FODocument.forcePDFVersion( "1.5" )
Added support for border-color attribute
Recoded right to left language layout
Added a fix for force-page-count="no-force"
Fixed priority of attributes when two shorthand properties such as border="" and border-left="" used together
Fixed a problem in clipping SVG images to too small a size
3.7.5 Fixed an issue with page-break-after="always" on fo:table-row
Fixed an issue with adjacent linefeeds
Added support for the from-column-table function
Recognised http:// as a rooted path
Fixed an issue with underlining rotated page number citations
Fixed an issue with overlapping text in fo:float objects
Fixed an issue where keep-with-previous might remove the only block left on a page
Fixed an issue with incorrect leader length on justified lines containing page number citations
Fixed an issue with underlining justified text on lines containing page number citations
Fixed an issue with misaligned text on Acrobat 5.0
3.6 Recoded column layout code to address various issues
Fixed an error when using long strings of Chinese characters with no spacing
Added ibex:anti-alias="false" attribute to fo:exernal-graphic to prevent Acrobat from anti-aliasing images
Fixed an error in the inheritance of linefeed-treatment in fo:static-content areas
Fixed an error in the width of fo:leader elements which were inside fo:basic-link elements
Supports Unicode document properties
Fixes an issue which occurs using negative text-indent and long words
Supports Unicode bookmarks
Improvements to fo:retrieve-marker behaviour
A cell is not expanded to row height if it has a height attribute
Allows specification of network credentials for accessing images using HTTP
Uses the processes current security credentials when retrieving an image using HTTP
Larger bounding box to support full-page SVG on A0
Fixed problem with conditional-page-reference page-position="last" when last page smaller than previous page
Implemented keep-with-previous on fo:inline elements.
keep-with-next.within-column implies keep-with-next.within-page, likewise for keep-with-previous
Fixed incorrect superscript when line-height-shift-adjustment="disregard-shifts"
Fixed splitting of table after footnotes
Fixes a problem where a cell spanning multiple rows, which has a small amount of content, is not expanded to fill the required rows.
Fixes display of page-number-citation elements on the right edge of a wide page
Adds UserAgent.SuppressStackDump which by default suppresses stack dump when a exception is caught.
Improvements to spacing in multi-column pages
Reduces memory used to cache images
Improves fo:float layout
Improves footnote code handling keep-with-next on block before footnote
Adds support for break-before="even-page" and "odd-page", on top-level blocks only
Fixes incorrect scaling of images which are wider than the area they are placed in
3.3 Adds UserAgent.ForceSVGNamespace which can be set to true to set the default namespace for external SVG files which have no namespace on the &ltsvg&gt element. This can be set when using the ibex11.exe command line tool by using the -force-svg-namespace option
Prevents splitting of font names such as "vhinfinitybold" where there is no space before the "bold"
Adds support for expressions such as matrix(0 -1 1 -4.371139E-08 -140.7745 184.1708) in SVG# code
Adds initial fo:footnote support
Fixes using a footnote with no anchor area
Fixes incorrect formatting of a table nested inside a list block
Some improvements to -90 rotation on tables
Adds support for background color on fo:inline elements
Fixed an issue with space-before.conditionality="retain"
Fixed an error in calculation of image aspect ratio if the image was too large for the page
getPageCount() added to FODocument object to return number of physical pages in document
Better handling of quote characters in urls
Fixed incorrect measurement in error message
Reduced default height of leader element
Allows negative leading
Improves footnote formatting
Supports linking to an fo:inline which has contains no immediate text
Fixes linking to and from a block which included an fo:page-number-citation
Specifying width on an fo:table-cell sets the width not the content width
3.0 Ibex has been renamed "Ibex PDF Creator"
An issue in converting millimetres to points has been fixed
Support for loading an image from an HTTPS server has been added
Formatting of fo:float elements has been improved
2.9.2 Fixes an issue in URL resolution when the FO file name contained a space
Improves formatting when using nested break-after="page"
Fixes incorrect collapsing of whitespace at start of a line
Removes extra blank page if document consists only of absolutely positioned areas
Implements the fo:table-and-caption object
page-position="first" works for one page document which also has page-position="last"
A long string of Chinese characters will be split at the end of the line, unlike English which would be moved to the next line
Fixes a hang when splitting rowspan cells which are greater than one page high
Changes UserAgent.BaseURI to UserAgent.BaseURI_XML and UserAgent.BaseURI_XSL to better support xsl:import
2.7.3 Fixes an issue in spacing of blocks in columns
2.7.2 Fixes a System.ArgumentException in the SVG# code running on ASP.NET with XP SP2
Fixes erroneous XML line number for blocks inside a static content. The line number in error messages
was the line number from the start of the fo:static-content, now it is from the start of the file
Fixes an issue with rendering of borders when cell is split over a page break
2.6.8 Improves compatibility with the FO files produced by DocBook
2.6.6 Improves memory usage when handling large deeply nested tables even more
Fixes an issue causing incorrectly placed borders if a nested table with collapsed borders
contained rows with borders which were adjacent to rows without borders, and this table was split across two pages
2.6.4 Improves memory usage when handling large deeply nested tables
Fixes an issue causing too many linefeeds to appear when using linefeed-treatment="preserve" on a block which contained a table
2.6.2 Improves formatting using multiple columns
Improves Arabic support ibex-ex-arabic.html
2.6.0 Closes an image file handle used during SVG processing
Trims the image name value read for an in-memory image url to remove leading spaces
Adds foreign language keys when checking for bold/italic fonts based on locale
Fixes an issue with table borders
Fixed a bug where a line ending in a single character was not formatted correctly
Improves appearance of justified text
2.5.2 Reduces PDF file size by 25-75%
Fixes a problem with the 2.5.0 installer not working on all systems
2.5.0 Fixes a long delay in processing tables which sometimes occurred in large documents
2.4.9 Changes the implementation of absolute and relative positioning to more correctly reflect the XSL-FO specification
Fixes a problem which occurred if letter-spacing was used on a long word which contained no spaces and did not fit in the available space
2.4.8 Adds support for the letter-spacing attribute
Adds support for space-start and space-end to provide horizontal space around inline elements.
Fixes incorrect positioning of table footers
Adds support for border-after-width.conditionality="retain" to repeat a table bottom border on every page break
Adds support for border-before-width.conditionality="retain" to repeat a table top border on every page break
Prevents clipping of background images on cells when overflow="visible"
Fixes an issue where the top border of a cell was not collapsed properly
Fixes an issue with SVG images when regional settings are Danish
Invalidly specifying a simple path such as "ibex.jpg" for the background-image attribute instead of the correct "url(ibex.jpg)" will now work.
Background images extend over padding area
The id attribute now works correctly on the fo:table-row element
Extended the list of directories searched for the ibexshaping dll
Improves performance when processing tables
2.4.1 Changes to border rendering should create better looking borders at low resolutions
Performance improvements of up to 30% on large documents
2.3.6 If a table has a minimum height specified then the last cells of the last row in the table will be expanded downwards to meet this height requirement. This can be disabled by setting UserAgent. ExpandLastCellOfFixedHeightTable to false
If an fo:basic-link links to a destination within the document (using the internal-destination attribute) and the destination element is formatted over more than one page, the link will go to the first page on which the destination appears rather than the last. This can be disabled by setting UserAgent.LinkToFirstPageOfIDBlockNotLast to false
TIFF image compression is improved. This can be disabled and the old compression used by setting UserAgent.TIFFAsJPEGNotPNG to true
Fixed a bug in text formatting where spaces could be reduced in size too much
Fixed a bug where cells in a table inside an fo:static-content element were not being expanded to the height of the containing row
Added experimental support for embedding an ICC color profile
Change Arabic text support for use Unicode BIDI in conjuction with Windows character shaping
Improved the attribute parser to handle expressions like margin-top="5mm + (262mm div 32)*6 + 0mm"
Added a makefile to the ibexcom source code so this project can be rebuilt
2.2.7 Improved support for &amp#2028
Added support for dashed lines in SVG
Fixed various minor issues in table formatting
2.2.1 Adds support for rule-style allowing dashed and double line leaders
Adds support for using background colors and images on the same element
Adds support for setting the base URL within the PDF document, which is used by Acrobat when processing links to external documents
Adds support for having an image inside a fo:basic-link to create clickable icons
Formatting behaviour has been changed so that a block with keep-with-next='always' will not be split across a page break - effectively keep-with-next now implies keep-together. This default behaviour can be disabled by setting UserAgent.KeepWithNextImpliesKeepTogether to false
The fo:float element is implemented for start and before edge floats
The SVG point to pixel ratio is changed from 72/96 to 72/90
Some scaling issues in SVG are fixed
The SVG vector renderer is now working with .NET Framework 1.0
Source code and binaries for a VB6/ASP COM wrapper have been added to the installation and documented in the manual
A simple example VB program which creates PDF files from FO or XML/XSLT files (with source) has been added to the installation
2.1.6 Includes an SVG vector renderer to SVG images are rendered as vectors in the PDF file. This means better sharper images
Adds support for creating transparent images using either color masking or SVG
Improves border rendering
2.0.9 Supports no-break space to keep words together
Has improved underline and strike-through measurements
2.0.6 Added support for loading fonts on Windows 98
Added support for expressions like font-size="inherited-property-value('font-size') - 2pt" as generated by Altova Stylesheet Designer
Fixed an issue where a single fo:block element which extended over three pages could result in some content not rendering
Implements the groove and ridge border styles
2.0.0 Added support for display-align on nested tables, table-headers and table-footers
Fixed an issue with collapsed borders on large tables
Corrected the implementation of height and block-progression-dimension attributes to set the height of the object excluding borders and padding
Corrected the implementation of width and inline-progression-dimension attributes to set the width of the object excluding borders and padding
Added support for creating custom document properties using the &ltibex:custom&gt element
Added support for font names such as ming(for iso10646) which contain parentheses
Added support for page-break-before on nested table rows
Added support for TIFF formats other than 1 bit per pixel which was already supported
1.9.4 Added support for ends-row and starts-row on cells contained in fo:table-header and fo:table-footer elements
Fixed an issue where a table did not split correctly if the row contents fitted in available space but the row separation did not
1.9.3 Use of default namespaces is now supported
Fixed an issue using wrap-option="no-wrap" when the first word on the line did not fit
Fixed an exception cause by having a table with rows but no cells (which is invalid XSL-FO)
Minor speed improvements in parsing attribute values
Added support for loading images from memory as per http://www.faqs.org/rfcs/rfc2397.html
1.8.7 Resolves a problem with CMYK colors in Acrobat 6.0
1.8.4 implements z-index on fo:external-graphic to allow an image to be used as a watermark
Makes height work as well as block-progression-direction.minimum
1.8.2 Implements the leader-pattern='dots' on fo:leader
1.8.1 Implements the baseline-shift attribute for subscript and superscript
1.8.0 Addresses a problem with fo:static-content when using the .NET Framework 1.0
1.7.6 Fixed a bug in keep-together.within-page
Changed the incorrectly named icc-color function to rgb-icc
Changed behaviour when wrap-option='no-wrap' to clip lines between characters not between words
1.7.4 Implements wrap-option='no-wrap'
Improves fo:retrieve-marker so fo:marker elements can now contain any valid content
1.7.0 Adds correct shaping of Arabic characters
Adds rotation through 90,180 and 270 degrees of pages, regions, text, tables and lists
Reduces memory requirements
1.6.4 Adds the Unicode BIDI algorithmfor bi-directional text
Support for display-align on cells is added
Fixes a problem working out the base URI from a file which has a space in the file name
1.6.2 Adds space resolution between fo:list-items in an fo:list-block
1.6.1 Documents the methods for passing Ibex an XML stream and an XSLT stylesheet so Ibex does the XSLT transformation before creating the PDF file
Fixes fo:table-footer which was not always rendering correctly
1.5.9 Changes the ibex11 -fonts command to output an XSL-FO file
Various performance improvements
1.5.6 More accurate values for the px unit
Improvements to table layout code
Added support for background-color on fo:inline elements
Fixed a problem in rotating the start region
Various performance improvements
1.5.3 Fixed problem with end region
1.5.2 Improves marker processing
1.5.1 Improves row splitting
1.5.0 Improves logging
1.4.8 Some performance improvements for large documents
Improves the implementation of the keep-with-previous attribute
1.4.7 Improves the implementation of the keep-with-previous attribute
1.4.5 Adding the ability to set image dots-per-inch resolution using the dpi attribute of the fo:external-graphic element
Adds bookmarks
Adds the page-mode attribute to the ibex:properties element to control how the document is displayed when first opened
1.4.4 Adding warnings when padding used on fo:table-row elements
Improved speed by around 25% when large tables used
1.4.3 Contains a faster layout engine than 1.3.8
Setting fo:table-cell and fo:table-row heights using block-progression-direction.minimum now works correctly
1.3.8 Fixes an issue when the decimal separator character is not a '.'
1.3.7 Added the &ltibex:properties&gt element for specifying properties of the PDF document such as Author and Title
1.3.6 Adds the -transform option to the ibex command line program
1.3.5 Adds the ability to encrypt the PDF file and create owner and user passwords
Various other functionality improvements
1.3.2 The xslfo.UserAgent class is documented in the manual
The xslfo.UserAgent.BaseURI property can be used to specify a base URI for loading images. The image loading code using in fo:external-graphic element has been updated to use the UserAgent.BaseURI and the base URI of the document to resolve relative paths when loading images
Improves support for fo:leader elements
Allows content to overflow regions on the right hand edge
Various other functionality improvements
1.2.0 Adds absolute positioning of content, as described in the manual
Fixes occasional selection of the incorrect page from a repeatable-page-master-alternatives element
Fixes a problem displaying images in two-column page layouts
Various other functionality improvements
1.1.7 Fixes content offset problems which occurred when splitting a nested fo:block over a page when the second page has a body region with a different content rectangle location than the first page
Various other functionality improvements
1.1.5 The quality (and hence the compression level and size) of images can be controlled by setting the UserAgent.ImageQuality property to a value between 1 and 100
Various other functionality improvements
1.1.4 The .NET Framework 1.1 is no longer required to run the installer
Fixes some rounding errors in border widths
Fixes a problem with keep-with-next when blocks nested more than three deep
Improves marker/retrieve-marker support
Various other functionality improvements
1.1.3 Fixes an exception when using the &ltfo:marker&gt element
Fixes a problem with page numbers when &ltfo:page-number&gt used without also using &ltfo:page-number-citation&gt
Adds support for explicitly setting the column width on an &ltfo:table-cell&gt using width or inline-progression-dimension
1.1.2 The manual contains new sections on the command line programs which ship with Ibex
This version is significantly faster when used with large documents
Support for nested table is improved
1.0.7 First production release of Ibex
0.8 First beta release
0.4 December 2002 First alpha release