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 <use> elements |
Improved the placing of destination areas when using id= on an fo:page-sequence element | ||
Added support for transforms on SVG <rect> 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 > 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 > 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 <svg> 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 < 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 &#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 > 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 <ibex:security> 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 <svg> 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 &#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 <ibex:custom> 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 <ibex:properties> 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 <fo:marker> element | |
Fixes a problem with page numbers when <fo:page-number> used without also using <fo:page-number-citation> | ||
Adds support for explicitly setting the column width on an <fo:table-cell> 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 |