I'm writing a user's manual for a Perl/Tk program (Win32). My usual approach to illustrating such a manual would be to do screen captures of the program in action, then cut out individual controls or groups of controls in Corel PhotoPaint to paste into the text near their explanations. But this hand-cutting gets very tedious, to say the least.

I was thinking that, since Tk provides all the tools needed to determine each widget's extents on the screen, it would be an easy matter to include a subroutine to selectively capture individual widgets or groups of widgets and write them out as, say, BMP files, thus eliminating all the hand cutting. It would be easy, that is, if there was a way to read arbitrary pixels from the screen. And that's where I'm stuck. Tk doesn't seem to provide such a facility (unless I'm overlooking something really obvious). I'd prefer not going through the Windows API if there's a Perl module with this capability built-in. But a search of CPAN didn't turn up anything promising.

An alternative, of course, would be to reparent the desired controls, in turn, in a separate top-level window, capturing each with Corel Capture. But packed widgets are so plastic, they might not look the same removed thus from their normal context.

Any ideas?

In reply to Reading screen pixels by Dr. Mu

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.