Laidout
     Version 0.096

News

15 April 2017
Spring...

Here's a short video tour of a freshly debugged clone tiler in Laidout. Unfortunately, I am unable to attend the Libre Graphics Meeting this year, so instead, in sympathy I'm doing a bit of a debugging sprint. Next on the list is debugging the new text tools, and implementing proper file exporters for them.







10 May 2016
Libre Graphics Meeting Recap
This year's LGM in London has come and gone. It's always interesting to see what other projects are working on, and get a feel for how things can interoperate.

Thanks to everyone who came to the Laidout Engraving workshop! A few glitches, but at least a few people were able to get Laidout running enough to play around with. It was a lesson to me to not take things for granted, and thoroughly test the stuff you will present, not just expect things that have worked for years to still be working!

I also presented the new text tools I've been working on, particularly the brand new text on path tool. Just in the nick of time, I was able to make variable width stroking adjust text glyph heights. Now I need to smooth out all the shortcuts I took making the tool, and make it work properly with the rest of Laidout. Also in the works was color font usage. I didn't quite get my opentype svg color font functional before LGM, and I'm still working on it. Special thanks to Hin-Tak Leung, who figured out what was going wrong with my font (obscure unicode mapping difficulties), and also offered many pointers on how to make Laidout's build process a little more streamlined.




18 December 2015
Laidout 0.096 Released! Wa-hoo!

The biggest change this time is finally switching to cairo for rendering, instead of cobbling together hideous Xlib based methods. This opens up a variety of rendering finesse, such as the ability for transparent paths, and perhaps more interestingly, a text tool. I'm sure there are many cairo rendering related bugs hiding out around the edges of Laidout, so please let me know if and when you find them!

Here are some tutorials demonstrating the new features:

Another text tool video demo Simple text tool video demo Booklet demo Engraver Tool, part 2 Engraver Tool


What's Next?
When I started Laidout 10 years ago, I never really intended it to be a full featured editing environment, but as time goes on, I wish for more such things, like having adequate object management features. Having cairo in place now is definitely a good incentive to work more on these things.

Otherwise, I'll keep plugging away to more fully integrate net impositions to allow more unusual stacking arrangements. The clone tiling interface also needs some attention. Finally, I want to keep working toward some kind of tool sharing regime, to allow easy sharing of tool interfaces among different software. This is a non-trivial task! No matter how well any one program does something, it will never do everything someone wants. Sharing interfaces would at least let users use their favorite interfaces, despite working on different types of data.





Read old news



    
What the hell?

Laidout is desktop publishing software built from the ground up with imposition in mind. Currently one may arrange pages into various cut and folded impositions, such as a booklet, or even a dodecahedron. You can fill pages with images, gradients (linear, radial, and mesh), mesh transformed images, engraving-like fill objects, and some basic text. Export with varying degrees of success to Svg, Scribus, Pdf, and more.

See the Laidout Features page for more detail about what it can do now, the Roadmap for what it's supposed to do eventually, and this (incomplete) comparison to a few other desktop publishing and vector graphics programs.

It is in the "Mostly does what I want on my machine" stage of development. I try to have a new "stable" release once in awhile, at least when various other projects don't eat all my time, which seems to happen a lot lately. "Stable" in this context means that it is only slightly less buggy then the raw development branch.

I have been using Laidout to lay out my comics into books since 2006. So, one out of 7 billion people agree that Laidout might actually be useful! For example, one can make small booklets by chopping up tabloid sized paper (11x17 inches). With a fold, two cuts, and stapling, one can make three cute little 5.5 x 5.6 inch books.

Many more features are planned, like such non-essentials (to me anyway) as flowed text boxes. Who needs text when a picture is worth a thousand words?

Laidout, together with the Laxkit backend, aim is to make a well documented, very modular, expandable, and configurable desktop publishing program, with an emphasis on developing tools not commonly found in other programs, as long as they are useful. A side project is to foster the ability to share these tools with other software.


System Requirements

Laidout only works on variations of Linux for now. It should work on Macs after a small amount of hacking, but I don't have access to a Mac to make it so.

Download

   "Stable"
The current release is Version 0.096.
Really these are more like development snapshots than anything resembling stability. You can help turn Laidout into something like stable by posting feedback on your experiences with it to the Laidout mailing list, or dropping me a line.

In any case, you can get Laidout in source code form, or as a deb package for debian based amd 64bit systems. With 0.096, github is now the place to go for code and release binaries. The main 0.096 download area is here.

   laidout-0.096.tar.bz2 (the source code)
   laidout_0.096_amd64.deb (binary, should work on Debian Unstable, and recent Ubuntu)
   laidout-ubuntu14.04_0.096_amd64.deb (binary, should work Ubuntu 14.04 LTS)

   Compiling from "stable" source
If you download the source code form, you must compile and install from the command line. First, as root or with "sudo", install dependencies:

apt-get install g++ pkg-config libpng12-dev libreadline-dev libx11-dev libxext-dev libxi-dev libxft-dev libcups2-dev libimlib2-dev libfontconfig-dev libfreetype6-dev libssl-dev xutils-dev libcairo2-dev libharfbuzz-dev libsqlite3-dev libgraphicsmagick++1-dev zlib1g-dev mesa-common-dev libglu1-mesa-dev libftgl-dev

And then:

tar xvfj laidout-0.096.tar.bz2
cd laidout-0.096
./configure --prefix=/usr/local
make
make install

Some of the dependencies above (from mesa-common-dev on) are for the unstable polyhedron unwrapper. You don't need them if you disable the opengl based unwrapper by passing --nogl to the configure line above. The unwrapper exists also in a standalone version in laidout-0.096/src/polyptych.

Instead of compiling as above, you can build a deb package from the source tar like the following. You'll need to have dpkg-dev and fakeroot packages installed. This will create an installable deb package. If you try this and it doesn't work, please let me know. It is supposed to work!!

tar xvfj laidout-0.096.tar.bz2
cd laidout-0.096
dpkg-buildpackage -rfakeroot


   Development
Please note that as of October 10, 2015, the development source code is now hosted at github. You can browse the git repository here, or you can grab a copy from the repository with this command:
git clone https://github.com/Laidout/laidout.git

To actually compile from this git source, see the further instructions in the Compiling From Development Git section of the README. If you think you might like to help develop Laidout, please see this page.




Contact
You can try Laidout's issue tracker at github, or there is a general purpose mailing list here.

Currently, the only developer is Tom Lechner, and he has been hacking away at Laidout to help make his artwork.

Laidout Logo