Google summer of code 2010: 11th week

hi folks,

Last week of coding have been finished and I found VERY  interesting things while working on EPS and MS Visio XML Schema’s.

EPS Schema Export

As you know I had installed xampp in Ubuntu. So, I could install PS PECL Extension to code EPS files. But damn, I got stuck while PECL INSTALL PS  package in xampp. I tried again a lot of forums/tutorials to get that working in xampp and put a lot of time on these issues. I also contacted PECL developer mailing lists and they suggested me to remove xampp and install lamp on ubuntu. So, I removed xampp and installed lamp but again I got the errors again while compiling PS PECL at Ubuntu. Someone at PECL developer mailing list suggested me a key point and here it is

apt-get install libgd2-xpm-dev

pecl install ps

Actually, PS library have dependency to isntall libgd2 first and then install PS but PS package doesn’t have this dependency listed at their website. After having such issues I finally got PS PECL installed in lampp and I started to code EPS schema. Remember, my main concern to use PS PECL was to calculate the width of the string in EPS. but when I generated a test Post script file I noticed some Interesting things.

First let me tell what is EPS:

An EPS file is a PostScript file which follows the DSC and which follows a couple of other rules. These rules can be summarized as follows:

  • The first line must be %!PS-Adobe-3.0 EPSF-3.0
  • The file must make use of the BoundingBox comment
  • The file should be a single page image (in DSC terms, the %%Pages comment must have a value of 0 or 1).
  • The file should not use any operators which affect the global state.

PS PECL is actually generates a post script file not Encapsulated Post Script file. This is what I noticed that PS lib is not what I required or wanted and what I was messing with it around from previous couple of weeks to get it working 🙁 I misunderstood or guess that PS Lib will solve the problem I have.

So, I reversed myself and continue working with manually creating EPS files using Commands by following the above mentioned points. Though there are some limitations according to my knowledge but I have done my best and I will continue to work on it in future too.

MS Visio XML Schema

Generating Visio XML .VDX is really a challenging task and due to a limited time I left after messing with EPS. I would not be able to completely implemented it and get it 100% working. But I have done as much as I could do so far.

Visio XML needs a lot of study of XML Schema’s of Visio 2003 and 2006. I also consulted visio forums and visio MVP’s to know more about the XML generation of Visio XML outside of VISIO IDE tool. I gathered a lot of information and stuff but It needs more time to get it complete. The main reason is VISIO save the  files in XML .VDX  but it creates a lot of XML that we need ages to know. So, to create files outside of Visio and using php langauge we need complete knowledge of XML Schema of Visio which I have started exploring. I will keep in touch with these schema’s and would give time as much as possible to cover it in future.

There were lots of obstacles on my way to get some things working perfectly and I didn’t got success but this leads me to road of success !!

Google Summer of Code 2010: 10th week


This week was very disappointed for me because my health was broken and 5 hours of work took more than 4 days to complete 🙁

I had decided to go with manually creating EPS files by using POST SCRIPT commands. I had started very good but when I had to calculate the width of string I got stuck there and I realized that I must need to use PS Extension [0] to calculate the width of string. But there was no DLL for my wamp installation. So, I had two options. Create DLL or use the Linux and install PS Extension [0] and then use it. I am a windows user. So, I  decided to install Ubuntu in my Virtual Machine.

I tried to install Ubuntu 101 times at my laptop and on my pc as well but I didn’t got success at all. After being mad with its installation I downloaded the ISO image of Ubuntu again from their website and burned it on CD and then install it again. Luckily, It has been installed at my laptop in Virtual Machine and now I will code EPS Schema using PS Extension [0] after installing.

while I was frustrated with the installation of Ubuntu. I also tried to create DLL myself by using compilers of VC++ 2005 and 2008 version as well. But It took a lot of time in installation and configuration and again no success. I consulted a lot of forums but nothing 🙁

So, I am now working with Visio XML generation plus installing the xampp in Ubuntu now. I will try my best to finish both these two Schema’s till next Sunday.


Google Summer of Code: 9th week


9th week  is gone  and I explored XML for MS Visio Schema, EPS Schema format and issues for making PDF, SVG and Dia Exports downloadable. I had coded pdf,svg and dia exports that these will be prompted for download. It was working on my local wamp installation but not on demo server. Unfortunately that issue is still not resolved and after putting a lot of time on it I forget it and moved on.

For EPS schema, I found php extension pslib but unfortunately its DLL is not available. Though I can use this extension with Linux environment but I decided to use hand coded lib for Encapsulated Post Script files. Lots of information notes are available here about Post Script documents plus programming commands. So, I am going to code it from Monday.

For MS Visio Schema, I consulted MSDN and will code the library class for generating its XML schema like I did for SVG Schema.

Hope for best !!