Picona was created because I got tired of running my bash scripts that would call ImageMagick to merge images when making icons.

I decided to give BaCon a try for this purpose, and Pikona is the result.

Pikona used to require Image Magick. I finally revised it and removed all the IM calls, replacing them with my own routines. As a result, you don't have to install anything else, except extra images. The actual pikona binary (stripped and UPX'd) is just short of 29k - not 6+ MB for ImageMagick! Pikona now is able to read images from any directory and lots of graphic file types are supported (i.e.. png, gif, jpg, ico, icns, wmf, svg, xpm). The seemingly large pet file size is because there are some basic images in the bgd, onj and ovl directories. I have also made additional image packs for background, object and overlay images and highly recommend that you install them to see what Pikona can really do. Also, fileselection has been dramatically improved.

Pikona basically takes a background image, superimposes an object and covers that with a semi-transparent button.

The directories /bgd, /obj and /ovl (in /usr/pikona4) contain the source images (you can, of course, add your own). The composite image is stored (after saving), in the HOME$/pikona directory. There is a rudimentary help window.

I used BaCon (build 25) and the HUG (0.73) library for most of the GUI graphics and to straight calls to gdk_pixbuf and libssl for processing - the latter is needed for calculating the MD5 hashes of image thumbnails. The source is containd in the pikona4/data/src dir.

I know there are bugs, and there is much room for improvement. Please post suggestions or modified code.

Have fun creating your own icon sets in minutes, not days or hours.

With kind regards,
vovchik

PS. I compiled in Lucid - so Pikona4 should work in most recent puppies.

pikona4e.png

Description

Filesize

96.49 KB

Viewed

1584 Time(s)

Last edited by vovchik on Fri 09 Mar 2012, 10:45; edited 1 time in total

I tested Pikona with ImageMagick v. 6.3.3 and everything works. With any of the 6.5.x versions, however, I either get a reduced bitdepth - which kills transparency, amongst other things, or it coughs and does not produce an image during one of the 6 launches of IM executables. I will try to find out what systax changes were introduced between the versions for the convert, montage and coalesce binaries. If you know this offhand, please post this info, as this will save me time. I do want Pikona to run as universally as possible and could do a version check and modify the IM binary launch strings.

Oh goodie, seems interesting, gonna test it later today, don't remember now which image magick version i have.
So lemme see. I can make backgrounds, overlays and pics to go inbetween, cool. I just place images in appropriate folders to show up in drop down list?_________________Dpup 487 | Puppy Gallery | My photo gallery | mtPaint works

I havent tried your app yet but it looks
great! I wanted to let you know soon I just read this

and also congratulations for doing it in BaCon !!

I'll be testing

I know imagemagic is very powerful
but if you need a just a light command line image resizer /non editor ... I use
aaphoto

with a simple script I wrote here for
conveting to 16 and 48 size *.png
for package building

I hope I can include that in your code

a big thanks

Code:

#!/usr/bin/env bash

#Joe Arose aka..big_bass
#drag and drop make 48x48 images for packages
#to the pixmaps folder
#place the icon inside it
#remove the _new.png name
#only a *.png will get placed in the folder
#other formats will get made though such as *.jpg
#they just won't get placed in the package ready folder

I tried it. I love it
A question: is overlay image resized some % cause i made background and overlay same dimensions, and when it put em togheter overlay is bit scaled so I can see edges of background below overlay?_________________Dpup 487 | Puppy Gallery | My photo gallery | mtPaint works

I am glad it works for you. Originally - and in my incomplete glade version - I used a spinbox for the scaling, so it was more sensitive. Try setting it at 90 or 100. The default is set at 70. In my bash version, I also used an x,y displacement factor, which allowed control of object positioning. I would introduce it again, but it would destroy the current symmetry of the gui design. I suppose I could cut the dropdown scale list in half and then have two thin displacement dropdowns - for x and y distance from 0,0 (origin). I'll give it some thought.

I think you see now how easy it is to create a complete icon set without too much effort.

With kind regards,
vovchik

PS. Joe (big_bass): aaphoto is possible - look at the cmdx$ statements in the source. What I would really like to do is to eliminate all dependencies and do all the manipulation of images in memory. That would make Pikona self-contained, and it would run on all Puppies out of the box. But first I have to study the png format. BaCon allows for binary loads to memvars, which is nice and a prerequisite for what I have in mind.

vovchik, I think you'll have to study the docs for ImageMagick about the syntax changes. There have been major changes in the way you use ImageMagick. It can now be used in such a way that the options act like a script -I mean you can carry out a whole series of operations on an image without having to run the program several times. This means that the *order* in which options are passed has become more critical.

You are right. I only scale the object. If the bgd and ovl are not lined up in terms of x-y, check the images. I normally found that bdg images should have a margin of some 10 pixels or more on all sides and the ovl slightly less. I may be wrong about the numbers, since I can't recall. There is some trimming that goes on before the "end result", with expansion back to 128x128 on a transparent background for purposes of centring. I'll try to look into this.

Thanks very much for your compile of ImageMagick. With it, Pikona works very nicely under Puppy 4.x, and we should recommend your version to all users who wish to run Pikona. After examing the tgz, I made it into a pet using tgz2pet and it installed fine. My previous version on a laptop was a very recent one and it caused some difficulties. I will have to take amigo's suggestion to heart and read up on the changes to IM syntax (6.5.x) one of these days, however, so that users don't run into problems and we are not tied to a particular IM version. There is some advantage to universality, as reflected in Peter's choice to use bash as the converter/compiler of BaCon. That was brilliant. Along the same lines, for Pikona it would be ideal to to do all the image manipulation natively, as mentioned above, but that will take some serious investigation of the png format (unless I co-opt gdk_pixbuf to do the thinking for me).

Thanks again and kind regards,
vovchik

I am glad you like Pikona. We can now make Puppy very pretty very fast.

some extra images for pikona unzip in the pikona folder
the folder is called obj when uncompressed
they will install in the correct place which is the obj folder
these are from my rox theme on slaxer pup

Peter was kind enough to make a few very lovely additions to the HUG library, including a spinbox and fileselect. I revised Pikona a bit to use the spinbox and will soon post another version that makes use of fileselect rather than combo boxes for choosing images.

If you have already installed the first version (v. 01 alpha), simply replace the old Pikona binary (and other files) with this one (v. 02 alpha) and replace the obj and ovl dirs with the new ones. There are quite a few more interesting background images now, and I included a blank128.png in some dirs for the sake of flexibility. Choose one of the metal backgrounds, set obj to blank128.png and ovl to clear-but.png and you will see what I mean. You can make new bgd images this way pretty easily.

If you have not installed Pikona yet, first install Joe's ImageMagick (see previous posts), then install the first version of Pikona and then overwrite the old stuff with the content of the attached archives. I could have made an all-in-one, easy-to-use archive, but there is a 1-MB limit for files on the forum. Sorry for the inconvenience.

You cannot post new topics in this forumYou cannot reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot vote in polls in this forumYou cannot attach files in this forumYou can download files in this forum