i dont have any experince of software making...i know c ,c++ and web designing lanuguages....how should i start it..to do what i have asked...i have to decide a project

6 Years
Discussion Span
Last Post by ravenous

Are you doing this as an exercise in learning more C++? If not, then there are probably already a bunch of things that can do this already.

If you're going to do it as a project to learn something, then you should probably start by trying to find some details about the specifications of the input file format, "ppt" in your case. This could be hard if it is proprietary (which ppt is), but there may be some unofficial documentation.

Once you have the specification, you can start by trying to read in binary ppt files that you have made to have a very simple structure, such as a single blank slide. Once you can do this and get some information out (like the page size, background colour, etc.) then you could add complications and see if you can get those details out too. For example, draw a rectangle on your single slide and see if you can find the position, size and colour.

Once you can get the relevant details, you can output them to the new format. There are existing libraries for doing this, so I'd use something like libjpeg for jpg files.

One thing to appreciate is that a file format like ppt has a very complex specification (think of all the things it has to be able to do; hold and position shapes and text, animations, display images, play movies, embed Excel spreadsheets etc.) so making a "converter" will be extremely time consuming to do from scratch, even if you're quite an experienced programmer and virtually impossible if you're quite new to C++. If you're relatively new to C++, there are a lot of interesting projects that you could try that have some real-world use, but aren't impossibly hard either :o) There are probably a lot of people on here that could help with that and there are good sticky-posts on the forum main page that discuss good books and so on.

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.