Captioning Photo Image under Pixane Example

Captioning Photo Image under Pixane Example


This page is under development. Comments are welcome, but please load any comments in the comments section at the bottom of the page. Please include your wiki MONIKER and date in your comment with the same courtesy that I will give you. Aside from your courtesy, your wiki MONIKER and date as a signature and minimal good faith of any internet post are the rules of this TCL-WIKI. Its very hard to reply reasonably without some background of the correspondent on his WIKI bio page. Thanks, gold 12Dec2018



Introduction


goldStarted roughly 2011-05-30. Here is an eTCL script captioning photo image under pixane. This script was largely derived from posting of Eric Hassold on comp.lang.tcl with permission.


In planning any software, there is a need to develop testcases.

Testcase 1.

  Bird picture.
quantitynumberunits
photo size of bird.jpg 12 kb


References:


Appendix TCL programs and scripts

* Pretty Print Version

        # Pretty print version from autoindent
        # and ased editor
        # program of image captioning under pixane
        # written on Windows XP on eTCL
        # working under TCL version 8.5.6 and eTCL 1.0.1
        # gold on TCL WIKI , 25may2011
        package require Tk
        package require pixane
        console show
        global targetpix photox
        proc jackpix {} {
            global targetpix photox p
            set fin [file join [file dirname [info script]] bird25.jpg]
            set fout [file rootname $fin]_new[file extension $fin]
            set caption "bird of yore"
            set p [pixane create]
            pixane load $p -file $fin
            set widthsource [pixane width $p]
            set heightsource [pixane height $p]
            set heightvirtual2 [expr {$heightsource+32}]
            pixane resize $p $widthsource $heightvirtual2
            pixane color $p "\#C0C0F0"
            pixane rect $p 0 $heightsource $widthsource $heightvirtual2
            pixane color $p "\#101020"
            set font [pixfont create -builtin "sansserif"]
            pixane text $p [expr {$widthsource/2}] [expr {$heightvirtual2-($heightvirtual2-$heightsource)/4}] \
                    -font $font -size 20 \
                    -align center -valign baseline \
                    -text $caption
            pixane save $p -file $fout -format jpg
        }
        global p
        jackpix
        set tkpicturex [pixcopy $p]
        wm title . "Captioning Photo Image under Pixane "
        pack [canvas .c -width 400 -height 400 -background grey]
        proc moveobject {object x y} {
            .c coords $object [expr $x-25] [expr $y-25] [expr $x+25] [expr $y+25]
        }
        proc moveobject2 {object x y} {
            .c coords $object [expr $x-25] [expr $y-25]
        }
        set egg [.c create oval 75 75 100 100 -fill bisque]
        set bird [ .c create image 200 200  -image $tkpicturex ]
        .c bind $egg <B1-Motion>  {moveobject $egg %x %y}
        .c bind $bird <B1-Motion>  {moveobject2 $bird %x %y}
        grid .c -row 0 -column 0
        wm title . " Captioning Photo Image under Pixane Example "
        
    
    
    
    

Code scraps, timing statements

        puts " loading [time {pixane load $p -file $fin} ]"   

Hidden Comments Section

Please place any comments here with your wiki MONIKER and date, Thanks.gold12Dec2018