Skip to main content

Reading Microsoft Publisher documents with LibreOffice Draw has just become available thanks to Google Summer of Code program.

microsoft publisherReading Microsoft Publisher documents with LibreOffice Draw has just become available thanks to Google Summer of Code program.

Fridrich Strba officially announced public availability of libmspub, a free library for reading and converting MS Publisher documents.
The code will be first used in LibreOffice 3.7.

So far the library is capable of reading v2003+ files with bitmaps, basic text formatting features (typeface, font size and color), shapes with fills.

Here is an example from stocklayouts.com opened with LibreOffice Draw:
microsoft_publisher1
There will be certain issues with the built-in SVG converter that are easy to predict. First of all, SVG doesn't yet have pagination, and according to Tavmjong Bah, an Inkscape's representative in the W3C SVG working group, it's a low priority feature at this point.

SVG also doesn't have a notion of linked text frames, albeit this could be solved thanks to recent Adobe's work on CSS. And then there is the whole sad story of flowed text in SVG. The example below is a good illustration of that, because contrary to that LibreOffice renders the text in frames just fine.
mspub_russian_draw
It is important to note, however, that libmspub will just make sure that as many features of Publisher files as possible will be understood, so that anyone could later plug in the code for converting those features to SVG. The library will also provide API for requesting single pages. As for LibreOffice Draw, it simply imports all pages.

This project is being worked on by Brennan Vincent, a Google Summer of Code student who is co-mentored by Fridrich Strba of LibreOffice team and Valek Filippov of truly yours re-lab team. Fridrich also keeps working on both Corel DRAW and Visio support in LibreOffice.
The libmspub library is the 3rd collaborative project between LibreOffice and re-lab. Architecturally it's a lot like both of the other libraries and has pretty much the same prerequisites: libwpd, libwpg, writerperfect. All source code is in a public Git repository.

The story of the libmspub project dates back to late 2010 when the Scribus team expressed an interest in at least a basic reverse-engineered specification of Microsoft Publisher files. The re-lab project did that, but the Scribus team turned out to be undermanned to have a go at a converter.

Hence the work on reverse-engineering .pub was temporarily put on hold. However OLE Toy app which was specifically created for examining .pub files eventually started supporting all kinds of proprietary file formats such as Visio, Corel DRAW, Macromedia Freehand etc.

Today OLE Toy is the central part of reverse-engineering workflow in both teams, and with this GSoC project it's destined to fulfill its original role. Better late than never.
If you liked this article, subscribe to the feed by clicking the image below to keep informed about new contents of the blog:
windows_xp

Comments

Popular posts from this blog

How to change the size of the touch and on-screen keyboard in Windows 10

Windows 10 PCs come with two keyboard apps, one is the OnScreen Keyboard , and the other is the Touch Keyboard . Basically, you don't need a touch screen to use the on-screen keyboard. It displays a virtual keyboard on the screen and you can use the mouse to select and press the keys. Although the on-screen keyboard app is very useful when we don't have a physical keyboard, its size is always a problem for users. You can move or enlarge the virtual keyboard from the icons in the upper right corner. If you want, you can also easily resize it. Changing the size of the on-screen keyboard is very easy. Type On-Screen Keyboard in your Windows search and run the desktop app, or you can also go via Settings > Ease of Access > Keyboard> Turn on the On-screen keyboard.   To change the size of the on-screen keyboard, move the cursor to the corner and drag it to the desired size. Resizing the touch keyboard is as simple as doing it! Just drag it and resize it us...

Windows Media Player 12 Themes for Windows 7

Bored of your default Windows Media Player Skins?. Grab some fresh and new Windows Media Player 12 themes for Windows 7 ! Windows Media Player 12 Codecs Windows Media Player 12 comes with support for DivX and MP4, but it still lacks supports for many other video formats. (amr | mpc | ofr | divx | mka | ape | flac | evo | flv | m4b | mkv | ogg | ogv | ogm | rmvb | xvid)ù A popular codec pack can be downloaded here and here . Windows Media Player 12 Skins The following skin packages includes some really awesome themes for your Windows Media Player: Alienware Theme Batman Theme Catwoman Theme Darkstar Theme Half-Life Theme Halo 2 Theme The Last Samurai Theme Stalker Theme XBOX Theme XSN Sports Them Download Windows Media Player Themes Pack 1 (70 Skins) Download Windows Media Player Themes Pack 2 (12 Skins) New Year Theme 2010 for Windows 7 This theme can be downloaded for free from uploaded.to Custom Search If you liked this article, subscribe t...

Windows 10 compatibility reaches most of the hardware currently in use.

Windows 10 will be compatible with most existing PC hardware; most devices running Windows 7, Windows 8, or Windows 8.1 will meet the requirements for Windows 10. For full system requirements, see Windows 10 specifications. Some driver updates may be required for Windows 10. Existing desktop (Win32) application compatibility is also expected to be strong, with most existing applications working without any changes. Some applications that interface with Windows at a low level, those that use undocumented APIs, or those that do not follow recommended coding practices could experience issues. Windows 10 compatibility reaches most of the hardware currently in use. - The World of Windows. Contents: [ hide ] Windows 10 compatibility reaches most of the hardware currently in use. Existing Windows Store (WinRT) apps created for Windows 8 and Windows 8.1 should also continue to work, because compatibility can be validated against all the apps that have been submitted to the Windows ...