You're blocking ads, which pay for BlenderNation. Read about other ways to support us.

Desktop Publishing With DTPBlender

28

cai.jpgAlexander Ewering (intrr), has introduced a Blender project fork to create a desktop publishing software called DTPBlender.

From the DTPBlender site:

DTPBlender is a fork of the popular 3D modelling, animation and rendering software Blender. It has slowly evolved and matured as an in-house solution for efficient and flexible Desktop Publishing (DTP) at instinctive mediaworks. Its creator, Alexander Ewering, has decided to release it to the public! DTPBlender offers a very unusual approach to 2D graphics creation, particularly suitable for people who are already comfortable with Blender and its user interface. DTPBlender is currently available as a release for both Windows and Linux, and as source code.

I asked Alexander some questions about DTPBlender and he was kind enough to answer:

Why did you decide to use Blender (or develop this solution from Blender) with so many desktop publishing software available... even free/open source ones like Scribus?

Actually, I know about Scribus and I even tried to work with it :) As you explicitly mention Scribus as an example, I will use it as a reference to explain some of my issues with "mainstream" software:

Let's start with text: I draw a textframe in Scribus. Fine so far. Oh wait, I want to use a different font. I call the "Text" menu in the "Properties" dialog, and there's a font dropdown. Unfortunately, I have 1500 fonts installed on my system, so choosing one of them is a slight pain with a list showing 10 entries at once. Why can't fonts be categorized? In DTPBlender, I can (and did) even put fonts in different directories, depending on their style (regular fonts, handwriting, clipart, etc.). OK, I can press the initial letter of a font name to get further in the list, but still, such a font selection dialog is not great. It still takes me 10 seconds to choose, say, Arial (DTPBlender: 3 seconds). And yes, seconds do matter for me.

Next, I would like to choose the font size. Of course, this is only possible one "click" at a time, with tiny mini arrow buttons. In DTPBlender, you can interactively scale any object, or adjust mostly any parameter (including font size, tracking, leading).

OK, next, choose a color for my text. I click on "Color", and I'm presented with a list of hundreds of colors, again, of course, with only 10 colors showing at a time. I eventually found Edit->Colors, where I can remove unused colors. But hey, am I *really* supposed to call up a dialog (for which no shortcut exists, apparently) each time I want to add or change a color? In DTPBlender, I can just add a new material for each color I want, and the material dropdown will always only show actually *used* colors (with names and previews, which, by the way, also show gradients). I do not need to call up a dialog. I can also import colors (well, I can import *anything*) from other projects easily.

Talking about gradients: The gradient editor in Scribus is not bad... but the Colorband in (DTP)Blender simply is better :-)

What about effects like outlines and drop-shadows? In DTPBlender, you can apply outlines and soft shadows to any kind of object, including images with alpha channels.

What about quick, spontaneous tweaks to images? In DTPBlender, you can do about anything imaginable to an image non-destructively: Adjust brightness, contrast, color, make the whole thing use an arbitrary gradient instead of natural colors, fade alpha using arbitrary gradients, etc... you just have the full power of Blender's material system. You can even blur the image using the Filter setting. I really prefer this over having to switch constantly between Gimp and Scribus and wasting tons of hard disk space for edits to images. Apart from that, I find Scribus' interface to images a pain. It takes a dozen clicks in order to even place and scale your image correctly on the page.

Then, there's just Blender's lovely library block system. The way you can share datablocks like materials, curve data and so on between objects is unique and gives you an incredibly efficient way to work. Other examples are the transform system, which lets you interactively position, scale and rotate objects in a way mostly incomparable to regular applications.

On the whole, I find moving objects in Scribus feels somehow clunky and unpredictable, apart from the fact that it only draws the frame while moving, not the complete object. DTPBlender just has the advantage of using OpenGL - it is just faster and more interactive.

After all, of course, an important reason is that I understand the source code and that I always have the flexibility to add something quickly as soon as I need it.

What features made Blender easy to translate to a desktop publishing solution?

In general, a 3D modeling/rendering/animation package has a lot of concepts in common with a DTP application. Objects, materials (the higher-level version of colors and gradients), the need for an interactive and fast preview, the ability to scale and rotate objects, a decent way of managing all the data in a project, etc.

Blender also makes this easier because of its generic design: It doesn't bomb you with a gazillion special features for specific tasks like other 3D Software does. Instead, it always offered a small, carefully chosen set of generally applicable functionality which is flexible enough to be used for a lot of tasks (example: the particle system, which has been used for flocking, hair, grass, explosions, fire, you name it).

In the beginning, DTPBlender started as a mere collection of hacks in a template .blend - thanks to Blender's "ordered flexibility", this already gave a lot of interesting possibilities.

How long did it take to develop?

So far, it has been a bit more than a year from the first "tweaked .B.blend" experiments to a now vastly changed and enhanced codebase. I'm in the lucky (or sometimes not-so-lucky) position of having a lot of actual DTP work to do, so I could always tweak and enhance DTPBlender as I worked – always oriented towards the practical benefits. DTPBlender is not a theoretical experiment - it has been used for almost all related projects that you can see on my website :)

*Update: DTPBlender now has a forum for general help issues and to show your work! 

Alexander (and myself) highly recommend taking a look at the tutorials. I did the tutorials and they definitely help in getting your mind in 2D. And with your knowledge of Blender, using and navigating the program will only add to the fairly quick learning curve.

About Author

Eugene

Just a guy really into 3D, especially where Blender is concerned.

28 Comments

  1. While this looks like a really interesting project, its not really usable for the 'real' DTP-guys out there who use quark and indesign in their daily work, because as it says on the website: "DTPBlender can exclusively export (render) RGB images.".

  2. blackblender on

    WOW! This was my dream, that blender should have an internal fully fledged 2D editing system. Being that blender already has many tools which can be very powerful when applied to 2D. For example, envelope distort, which was only introduced in Photoshop CS2, and still not available in The Gimp, can easily be achieved by mapping the picture to a plane and then distorting it, etc.

  3. mpl: This has never been a limitation for me, as all print shops I've worked with have happily excepted RGB images (and the results were satisfying).

    blackblender: You do not even need to "map a picture to a plane". You just do Add->DTP->Image, Add->DTP->Lattice, and you're done. :)

  4. 2Alexander Ewering

    While your approach is definitely interesting and worth investigation, you provide some misleading information.

    What about quick, spontaneous tweaks to images? In DTPBlender, you can do about anything imaginable to an image non-destructively: Adjust brightness, contrast, color, make the whole thing use an arbitrary gradient instead of natural colors, fade alpha using arbitrary gradients, etc… I really prefer this over having to switch constantly between Gimp and Scribus and wasting tons of hard disk space for edits to images.

    Why would you switch constantly when you have non-destructive effects for images in Scribus?

    Then, there’s just Blender’s lovely library block system. The way you can share datablocks like materials, curve data and so on between objects is unique and gives you an incredibly efficient way to work.

    Sounds much like style copy and objects library already available in Scribus.

    Many of other issue that you mention are very well known and will be addressed in the near future. Especially better resources (colors, styles etc) management is planned for the next development release.

    This has never been a limitation for me, as all print shops I’ve worked with have happily excepted RGB images (and the results were satisfying).

    EPS, Postscript Level 1/2/3, PDF 1.3-1.5 and PDF/X-3 export are a must features for any DTP application. "Works for me" in DTP is OK for developers, hackers, nerds etc., but quite distracting for pro users.

    Don't get me wrong, I see many valid points in your approach, but please be careful with facts.

  5. Ohhh... Sounds really interesting!!! As a past DTP graphic designer currently working in Blender I wonder, how Blender can be switched into DTP prog. I think it's brilliant idea!!!

  6. @Alexander Ewering

    Don't get me wrong i think this is a really cool proof of concept. But for it to be usable for the industry you have to be able to work with cmyk and be able to export it in suitable formats for the offset printing press. Otherwise it will be impossible to hit a specific color 100%. The same problem goes for the gimp, no real cmyk support....

  7. mpl: OK, I guess I'm just not a very pro user ;-) You see, it earns me my tiny amounts of money with the various flyers / banners / menus / brochures / web site layouts I do with it - and so far, every color I had in my head has been hit 100% - I guess the print shop I work with (and the printers I use) are just very forgiving, or the colors I need are just incidentally very well "convertable" from RGB to CMYK. ;) I get your point though - for "pro" use, DTPBlender is not suitable. But hey, for my tiny little products, it's OK and it makes me happy :)

    Alexandre: OK, I'm sorry. I think I explicitly mentioned in my answer that I only had Scribus 1.2.something to try, and I couldn't find things like soft shadow and outline effects there. So I guess current Scribus has them. Great! Will try it out as soon as I can get my hands on it. To you too: I'm not a "pro" user - so your point may be valid. I've only done a few smaller brochures, flyers, web site layouts, ad banners (although they were 6,25m x 2,50m in size - I *had* to use a high resolution for export ;-), so I'm not in the "pro" league. Anyway, who knows what the future brings :)

  8. @ Alexander Ewering

    Well, yes — Scribus 1.3.x is far ahead 1.2.x :)

    I wonder what PC you have since you could layout 6,25m x 2,50m ad banners. Currently dtpblender is not lightning fast even with quickstart.blend (I tested only Windows version here in the office).

  9. Alexandre: Will try Scribus 1.3 soon :)

    I have an Athlon XP 2100+ with Geforce 6800 GT... do you mean the interactive preview or the export (render)? Well, export you need to do only once per project, so it's OK to wait a few minutes for that :) And for previews (should you have lots of complicated gradients, images etc.), you can always render at 70 DPI without OSA, that should be always fast...

    If the interactive preview is not fast enough, you can always change the Res: setting too...

  10. @Alexander Ewering

    "it earns me my tiny amounts of money with the various flyers / banners / menus / brochures / web site layouts I do with it"

    Yeah, and im sure it will be perfect for most peoples needs. It really is a nice project you've started here :)

    "and so far, every color I had in my head has been hit 100%"

    Yeah, but its impossible to hit that company logo pantone color in the final print by just looking at the screen using rgb. The images you seen on your computer monitor cant really be used as an accurate reference for what the final printed image will look like. Thats why image color adjustment for print on computers can be such a b**** . You have to know by instinct for example how much magenta that goes into a good skin tone. Many times the image can look really screwed up on the monitor, but when the test print arrives from the printing press its prefect.

    The colors you see on your screen will NEVER look the same as the ones you get back from the press, the colors can even vary alot from printing press to printing press, thats one reason why ICC profiles are so popular. Im sorry i cant give you all the correct terms, because i don't know what they are called in english. But trust me color theory is a VAST area...

    Anyway, i really hope you continue the development of this cool blender mod, i like the idea alot :)

  11. mpl: Well, before I hand a job for 2000 flyers to the print shop, I obviously do a proof print myself on my HP DeskJet 1280 :) I know that ink is not the same as offset, but so far (I can only repeat ;), colours have been matching my monitor very well. And I've done my best to calibrate my monitor to look like my printer (not the other way around ;)..

    You get your colors 95% OK with 50% work, but to reach 99%, you already need 300% work - and that's simply too much for me ;)

    Anyway, I know your comments are of course valid.

  12. Alexander:
    Great work! It's a very interesting approach and I think it has a bright future ahead.
    Anyway, since I'm a graphic designer working in a pro environment, I must put stress on the importance of CMYK separations.
    There are things you simply can't do without them. One of the simplest examples is putting black text over white background. When your print shop separates your RGB file into a four plate separation every plate will have similar amounts of fill in each one, when you need only 100% fill in the black plate.
    Print shop can achieve this applying an agressive black generation, but it decreases the quality of the shadows of photographic items (they end up washed and desaturated).
    And this is just a simple example. There are lots of situations where you'll need CMYK.
    This lack of CMYK is the main reason why pro design isn't in Linux environments yet.

    Good work though ;-)

  13. to alexander.

    I see you have not managed to work with cmyk-rgb calibration, and a profesional workflow for color management.

    This is (as mentioned by this fine profesionals here) a very important aspect in profesional work, aswell is working with postscript.

    You have not developed in that field, but in a more "practical" way.

    This is nothing but great, as not all must follow the same path.
    Seems you will achieve interesting and diferent results from this way of working, and by doing so you have managed to generate a fantastic project up from blender already.

    Keep your work up! maybe at some point the roads cross.

  14. To Gez and 6u0W: Thanks for your comments.

    You pretty much brought it to the point: DTPBlender mainly addresses practical, quick workflow issues rather than professional output. So far, I've been in the lucky position that this output was always good enough for me.

    I like using DTPBlender as an incredibly fast "Sketchpad" which - at least for someone who takes the time to get used to the user interface - is unrivalled by any other application I know of. I've worked with Scribus, Inkscape, Flash, Illustrator, QuarkXPress, Freehand, and I couldn't express my ideas nearly as fast with any of them.

    If nothing else, DTPBlender can be this "Sketchpad" for quickly gathering your layout ideas, and *then* you can still use this as a reference when recreating the 'final' "master" in a "professional" DTP app.

    Actually, I've considered doing it this way, and it has already happened. For example, I once needed to make a design which was to be a giant sticker. Obviously, actual foil needed to be cut, so this *demanded* vectors. I developed the coarse layout idea in DTPBlender fast, and then recreated it for vector/CMYK output in Scribus.

    Hmmm. Maybe I should put this comment as a "philosophy explanation" somewhere on the dtpblender site :)

  15. Awesome idea, alot of potential. ignoring all the CKMY and stuff like that, are you planning on taking this into a more open development steam such as blender?

    Is there a chance that this will be brought back into the main blender and allow other dev's to work on it?

    I think the ideais quite strong, opening it up will allow it to be developed for better use in the profecional enviroment. More pros using it the more acuret and refinded it will be come.

    An intesting idea would be looking at more stable output format. Personly i avoid jpeg or any other losy format for profetional work, its just awaist of effort in the first place. PNG great but as mentioned before, PDF or something on that leavel would be perfect.

    Thanks for a brilliant idea, i've been waiting for some one to try this for a while. I'm off to go play with it some more.

  16. Alabandit: Thanks for your comment. Who knows how / if a community around DTPBlender develops. Personally, I try my best to organize it, but I have a very limited amount of time, and my personal work requirements will always have priority over community demands.

    Most of it can't be ported to the main blender codebase because it's simply not suitable... it's just two different applications.

    Have fun!

  17. hi, my first thought when i read this (e.g. the answers to the question "What features made Blender easy to translate to a desktop publishing solution?") and saw the screenshots: why not add a timeline (ok- a timeline and some er.. stuff) and make it a full-featured animating/compositing/sfx application? blendfx! O_x

    :)

  18. Hi!

    In my opinion most important thing in this project is a fact that Blender has been used as a platform. That's neat! The thing seams very similar to history of GTK+. From a simple toolkit that enabled creation of GIMP it arose to be a starting point for whole huge class of apps and even bigger projects (to mention Gnome or XFCE). I think that's quite interesting situation we have here. The way of GTK+ is of course not assured for Blender yet it is possible.

    I must confess that I thought that the first application that will mimic or use Blender as a basis would be a raster graphics editor. But seeing DTP app being first doesn't disappoints me at all :).

    I agree with some arguments pointed earlier (especially with the one about CMYK color model) but still the project is more than promising. Speeking about CMYK -- why should we stop with that? There's many more color models and possibility of working with them would be also profitable for Blender itself. Imagine images rendered in CMYK natively (I know, I know... it's narrower than RGB but still...) or with dou-, tri-, quad-, [even-more]-tones.

    Another thing that I want to praise the authors for is font selection mechanism. Kudos! I thought about it too and I'm similarly frustrated with traditional selectors with tiny viewports and takes-ages-to-scroll list of fonts (here graphical systems are to blame). Posibility of cathegorizing fonts by myself makes me just more calm ;). I wish xorg devs could implement such philosophy shortly (I hope they will since modularization process of server-and-friends is complete).

    Anyway. To end this post: my best wishes of good luck to all DTP Blender devs out there!

  19. Bodzio: Thanks ;) Actually, there's just a single dtpblender dev out there (myself), as you can read on the homepage too ;) this is not a typical open-source project in the sense that people try to mimic some existing software and make it free - it's something I develop as needs arise for my (work) projects.

    That's why practical usefulness is a more important issue than guidelines or newbie-friendlyness - still, I hope releasing it to the public will at least help some people to get more work done ;) and I'm sure it will again be an inspiration for the official Blender devs :)

  20. Wow! I'm even more impressed knowing that you've done all the work alone Alex (haven't read webpage about that matter :) ).

    I sure do understand that that's just the beginning of a big project so I don't expect to see a whole bunch of things being available out of the box -- I though that maybe it'll be good thing to share some ideas with you even though it may be to soon to make some wishlist ;).

    The start is very interresting and promising so I hope too that more devs will gather around soon to help you!

  21. Hey Bodzio,

    ah, I don't expect the project to become all that much bigger ;) I add a few features here and there as I need them (for example, I'm currently making a little brochure for a client, with lots of text, which inspires me to add automatic text flow around objects :)... it all depends on my requirements ;) But if other developers get interested and add stuff, that would be great of course. Though, I heavily doubt it, because even with official blender (which has around 1000 times as many users ;-), there are just maybe 3 or 4 really active developers.

  22. well define really active, there alot of dev's doing little thing and just look at the list of credits for the last few releases.

    yes admittedly there are only 3 or that have been consistant and made hugh chages. but take your rapping, problem. Its not a hugh thing to add to the code. but maks a hugh diffrence.

    Even if people only get involved a little at first. They maybe able to get a head of you for your own needs ;)

    thanks for the hard work though. I would love it if we got a DTP. i love the blender enviroment.

  23. Hmm.. very interesting. It's great to see that blender can be used for this sort of thing; gives me hope that blender will one day to post processing internally, so that anims will support it etc, and we see people creating great images that are made manually with blender + gimp, rather than just pure blender, in pure 3d :)

    That said, I think this isn't really a DTP app. It doesn't export to printshop-ready PDF or postscript, and it doesn't seem to support magazines etc.; just a single drawing. In that sense, it's a vector graphics app. Combined with blender's animation, it would make a nice solution for 2D cartoons as well.

    If you ever work on rendering to postscript for printer support, please make that a patch that also applies to mainline blender. I'd really love to be able to render directly to my printer, at optimum resolution, from blender :)

Leave A Reply

To add a profile picture to your message, register your email address with Gravatar.com. To protect your email address, create an account on BlenderNation and log in when posting a message.