KSnapshot gains free-region capture

From time to time I need to take a screenshot of some application or a part of my desktop. The obvious solution in KDE is KSnapshot, which is perfect if you want a rectangularly-shaped picture.

Unfortunately, sometimes I want to capture something not rectangular, something which looks more like an ellipse, or even some odd shape. That means I have to take the snapshot, go to Krita, edit and save. Four steps. Ugh.

No more!

I have just committed free-region capture to KSnapshot, which makes possible to capture arbitrary shaps:

Now you can capture only the nice logo from our friends over at the Libre Software World Conference, no need to take a rectangle with a lot of background color:

And this would be the result:

Isn’t it nice?

31 thoughts on “KSnapshot gains free-region capture

  1. Fri13

    Just so marvelous!

    This just brings the last needed feature for screenshots. Now it is easy just to drag and drop the custom area to email or document!

    Btw, Has there usability tests gone about the screenshot choices?
    I think the “Section of the window” should go under “Window under cursor”.

    +1 for antialiasing as well.

  2. Dennis Nienhser

    Nice, but don’t you still need an image editor to postprocess this image? :-)

    While you’re at ksnapshot, can you clean up the combo box entries a bit? I think Current Screen should be right below Full Screen and only be visible if a multi monitor setup is used. With the addition of Free Region, the former Region should possibly become Rectangular Region now.

    Maybe it would even be an option to split up the combo box into two widgets, a set of radio buttons like this:

    o Screen
    o Window
    o Arbitrary Region

    and a combo box with options: All screens vs. current screen, full window vs section of a window, rectangular region vs. polynomial (free) region.

  3. pgquiles Post author

    If you want to capture tooltips, you just need to set the “snapshot delay” and get tooltips shown before starting to “draw” the selection.

    KSnapshot works by taking a snapshot of all the desktop *before* you “draw” the selection, then cropping to your selection. No tooltips will be shown after KSnapshot starts waiting for you to select the area you want to capture.

    Or maybe I’m misunderstanding what you mean :-?

  4. Richard Hartmann

    I agree that the new ordering would make a lot of sense.

    I don’t agree with the radio buttons, though. There are not enough options to make drop-down cumbersome and with a drop-down you don’t have sections of the window magically changing to display other options.

    As an aside: Are there any plans to make screenshots of full websites possible? I.e. if a website is broader/longer than the screen, it would still take a shot of the whole page.
    Or should I just file a wishlist item?

  5. Kai Krakow

    What KSnapshot really needs is not more complicated to use features at the current stage. While I appreciate your contribution very much, I believe that KSnapshot’s ease of use still needs much love. Compared to the Win7 snapping tool (you may hit me for taking this example, I’d do it myself – but look at it: it’s indeed a much simpler, less geeky tool), KSnapshot is overly slow and complicated. Starting KSnapshot should allow me to instantly mark a region on the screen to capture, then maybe annotate the content with a pen, marker or texttool and copy the result to the clipboard, a file (or attach it directly to a mail, send to kopete contact…). This is the workflow I’m missing, and usually the complex usage pattern this currently involves makes me use it not at all in an everyday matter.

    All the great contributions (like yours) will not count much before the usage workflow of KSnapshot didn’t improve.

  6. TheBlackCat

    @ Kai: This would be possible if one, or both, of two things happened:

    1. ksnapshot gets support for assigning global shortcuts for specific actions. So, for instance, a shortcut for “window under cursor” or “region”, or better yet “window under cursor to file” or “region to clipboard”. There are few enough combinations that this should be feasible.

    2. ksnapshot gets commandline options for particular destinations. For instance an option for “–clipboard” or “–file”. This would allow you to create your own shortcuts like the ones described in 1.

  7. Kai Krakow

    @TheBlackCat Well, not exactly. When looking at the win7 snipping tool, there’s still a GUI between the screen shot and sending it somewhere (file, attachment, clipboard). Your suggestion would only support straight copying to a destination as the old Alt+Print shortcuts did in Windows. This is different from the snipping tool workflow which is more like KSnapshot.

    Actually I argue there is nothing useful to do with the KSnapshot GUI except the region thingy (sending to clipboard or file or attachment is not very different from Alt+Print and paste). It needs some way to further crop or annotate a screenshot before passing it on.

  8. lefty.crupps

    Nice! I agree about smoothing-out the edges of a free-select region. If you’re looking for suggestions: I also add drop shadows to every screenshot that I take by opening the file in Krita; adding this as an option to KSnapshot would be slick. It may bring the app to the point of needing a [Configure] or [Options] dialog however.

  9. Pingback: KSnapshot: ora cattura ciò che vuoi! « GNUpress!

  10. Sum Yung Gai

    KSnapShot is my favourite screenshot tool. I’ve been using it since (I think) KDE 3.0! It’s simple, works well, small, and stays out of my way until I need it. This new “free region” capture just makes a great tool even better.

    Thank you for your work on this!

  11. jospoortvliet

    At the openSUSE conference there were also some comments on KSnapshot, both positive and negative (like in your blog’s comments). I personally love it but I agree that it would be nice if you could more easily do certain actions. You can currently open the result in certain apps. But a second combobox which allows you to send the result directly to flick, the printer or via email would be nice.

    Then of course it would clutter the interface. Maybe it makes sense to rename the ‘open with’ to ‘send to’ and include flickr, printer and IM/email address there?

  12. pgquiles Post author

    @jospoortvliet: makes sense to me.

    Adding printing and send to e-mail looks easy.

    Flickr, Facebook, etc seem doable with QtFlickr and QFacebook (any idea if there’s something better?)

    Annotations are also interesting but they will have to wait.

    Antialiasing is rather difficult to implement (at least with my pretty limited image processing skills).

  13. Pingback: KSnapshot te deja capturar regiones poligonales | MuyLinux

  14. Pingback: Interesting Articles for October 28th at Harsh J

  15. TheBlackCat

    This is already possible. Theres a kbackgroundsnapshot binary that offers the facilities you want, just bind it to a key as normal.

    How? I looked at the command reference, it offers options to let you specify a source, but not a destination.

  16. Pingback: KSnapshot adquiere la posibilidad de captura libre de pantalla : KDE Blog

  17. Pingback: KSnapshot se vuelve social : KDE Blog

  18. Pingback: KSnapshot te deja capturar regiones poligonales | Tutoriales de Informática

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>