Friday, November 25, 2005

create typewriter effect with ming php for flash (swf) movie

This is nice and simple code it creates the simple effect which you might have seen in lots of web sites. As it is PHP you can use the same from your own news reader to database.


setBackground(0x00,0x00,0x00);// SM - This is very important as it set sets the speed of the movie// SM - Higher the number faster the typing will appear$movie->setRate(3);// SM - This one will depends upon you$movie->setDimension(600,40);$movie->setFrames(31);$movie->nextFrame();// Define your String here $str = 'Miing Typewriter Effect'; /* SM - As you note The space between character if not fixed SM - due to font width so you have to figure out your own SM - Now we split our string and make an array with the same */ $chars = preg_split('//', $str, -1, PREG_SPLIT_NO_EMPTY);// print_r($chars);$inc = 0 ;for($i=0;$isetFont($myFont); $myText->setColor(255,255,255); $myText->SetHeight(30); $myText->addString($chars[$i]); echo ("$chars[$i] \n") ; $firstText=$movie->add($myText); $firstText->moveTo($inc,30); $inc = $inc + 18; // SM - this is very critical as you need to add this extra frame to make this effect of some typewriter $movie->nextframe(); // SM - This helps to determine the width of the movie // SM - turn only if you need the same // echo "inc is $inc \n" ; } // SM - we do not want to loop this movie// $movie->add(new SWFAction("stop();")); // SM - Save the movie $movie->save("/tmp/banner.swf",9);?>

Friday, November 18, 2005

Create Banner with mirror effect by ImageMagick


A simple way to create a text image which will have mirror effects. The best part of this you do not have to use any fancy imging software and it takes only few seconds to create the same. The code a single line to make it easier for Windows
convert -size 460x130 xc:white -font forte -pointsize 72 -fill "#cccccc" -annotate 0x180+12+80 "Banner Mirror" -gaussian 0x2 -stroke black -strokewidth 1 -fill "#80904F" -stroke black -strokewidth 1 -annotate 0x0+12+55 "Banner Mirror" -draw "line 0,68 430,68" Banner-Mirror-Imagemagick.jpg

Wednesday, November 16, 2005

Reached 10K and folding



Folding @ Home is a Stanford University project of understating protein folding. It is distributed computing where small tasks are sent to Personal Computers (PC) across the world and it uses those CPU power to calculate. The results are sent back to the main computer. It is a very safe program and probably you will not notice any performance change for your computer.

There are similar projects for understanding Genome to AIDS which uses more or less similar technology of distributed computing. If you think you can contribute using your unused power of your PC other than warming the planet than please join any project of your choice.

The recent announcement from Sun about their low power consuming CPU is a new start from those Mega Hertz and Giga Hertz race. As most of the commonly used applications can not use any way as they are always backward compatible to reach all the market.

Monday, November 14, 2005

Orsay revisited

To my greatest surprise I found failure in implementing a perfect backup system for my digital images. Somehow I lost all the pictures from Orsay museum. May be I just deleted them(by mistake)!!! Yes I know the trouble of digital memories they are very easy to capture but most difficult to save. There are lists of problem that can happen to your golden past; starting with the media card to Hard Drive not to mention virus problems or accidental deletion of files

My current system is far from perfect I have one copy on my computer and other in external USB drive. That way I am insured from virus and hard-drive failure but may be I should make DVD(s) and keep it in a separate place. Working for IT is making me so paranoid with backups but I know few people who lost their digital pictures just thinking nothing wrong will happen to them.

Well enough of bragging, I think it was a small and good lesson and great reason to go back again to Orsay. Being there I just forgot all those anxiety of living in Paris small apartment and trouble it poses from carrier to saving for future or just picking up the language and be able to communicate properly in French. On humorous side if French economy does not recover and keeps declining then some dark day they can lease some of these masterpieces to new emerging economies of East to make some money.

This time there was temporary exhibition from Russia which was worth to explore the paintings from mid-19th century to 1917 ; most of the paintings and objects are from National Museum of Moscow and St. Petersburgs .

Thursday, November 10, 2005

Diwali at Paris

"Are you safe out there?" This was typical question to which I have been answering to my friends and relatives after the riots at Paris suburbs. I myself was keeping updated with news only. "Thank God" it looks like getting better now. I would not like to make any comments and express my view on the same as it seems to be very complex matter.

We celebrated Diwali quite well this year. On evening of 2nd oct. it was at Vendanta Society of Paris(with puja).And on 5th it was at Maison de l'inde with fireworks and cultural activities. But this year the biggest celebration of Diwali was hosted by Mayor of Paris at “Hotel de Ville” for the first time. It was an event by invitation. Unfortunatley, I didnot have enough social contacts to be there.

Friday, November 04, 2005

Part -2

create individual pages for each image dirty way with php
[code]
<?php
//$image_files=[] ;
$type = "jpg";
$abspath_folder = "/home/santm/public_html/PamelasCreation/images" ;
if ( is_dir ( $abspath_folder ) ) {
if ( $handle = opendir( $abspath_folder ) ) {
while (false !== ( $file = readdir($handle ) ) ) {
if ( $file != '.' && $file != '..' && $file != 'CVS' && $file != 'index.html' ) {
//santm echo "FILE is $file \n" ;
$the_array[] = $file;
}
}
}
}
closedir( $handle );
// end of reading the directory
// santm print_r ( $the_array );
// making sure the array only has our jpg image starting with a number
foreach ( $the_array as $img ) {
if ( !is_dir( $abspath_folder .'/'. $img ) ) {
if ( eregi( $type, $img ) && eregi ( "^[0-9]", $img)) {
$the_image[] = $img;
}
}
}
// the main part
if ( !$the_image ) {
echo "no image \n";
}
else {
$i = count ( $the_image);
echo "count $i\n";
// sort the array
rsort ($the_image) ;
//print_r ($the_image ) ;
for ($k = 0 ; $k < $i ; $k++) {
$bb = $k+1 ;
echo "santm $the_image[$k] \n" ;
$full_name = explode (".",$the_image[$k]);
$short_name = $full_name[0];
$foo_img = images .'/'. $short_name;
if ( $k != 0 ) {
$pre_name = explode (".",$the_image[$k - 1]);
$pre_short_name = $pre_name[0];
}
if ($bb != $i ){
$next_name = explode (".",$the_image[$k + 1]);
$next_short_name = $next_name[0];
}
echo " short $short_name \n";
//
// doing dirty way with system call for placing the header
//
$head_out = shell_exec ('cat /home/santm/head.pam.inc');
$write_handle = fopen ("/home/santm/public_html/PamelasCreation/$short_name.html","w+");
fwrite ($write_handle,$head_out);

fwrite ($write_handle," $bb of $i\n");
fwrite ($write_handle," <div class=
\"big_photo\">\n");
fwrite ($write_handle,"\n");
if ( $pre_short_name ) {
fwrite ($write_handle,"<
img src=\"images/previous.gif\" alt=\"next\" border=\"0\">
\n");
}

if ((!$pre_short_name) || (!$next_short_name)) {

fwrite ($write_handle,"<a href=\"index.html\" width=\"90
/%\">\n");
}
else {
fwrite ($write_handle,"<img src=
\"images/home.gif\" alt=\"home\" border=\"0\">
\n");
}

if ( $next_short_name ) {
fwrite ($write_handle,"
\n");
}
fwrite ($write_handle,"\n");
fwrite ($write_handle,"\n");
fclose ($write_handle) ;
}
}


?>
[/code]

photo album : imagemagick (part -1)

Quick and dirty way of creating photo album with imagemagick, creating images with black border as it looks good for all

#!/bin/cshset files = `echo [0-9]*.jpg`echo $filesforeach file ( $files )set w = `identify -format  "%w" $file`set h = `identify -format  "%h" $file`if ($w > $h) then  convert $file -thumbnail 500X -bordercolor black -border 1 /tmp/foo100/$fileelse  convert $file -thumbnail X500 -bordercolor black -border 1 /tmp/foo100/$fileendifend

Sunday, October 30, 2005

Place de la Concorde

After a long time I was able to capture the fountain of Place de la Concorde in a very beautiful sunny morning. It is so amazing that we still take pictures of Paris like tourist on their first day. When we left home it was cloudy and we were questioning ourselves why we are carrying the camera with us. But luckily it was worth to do so. Then from there we took a small promenade at the garden of Elysee.

While walking in 5th arrondissement we saw preparation for a big renovation is going on at Madame Curie University (Jussieu) as they used asbestos as insulator, But with high risk of cancer now government is trying to get rid of the same. It has unique architectural plan which resembles as a molecular matrix where each column is numbered. Looking at the same you can like it or hate it there can not be any middle opinion about the same.

Thursday, October 20, 2005

Tibx Shoe Laces


Yes these are my dirty shoes. Not very sure about the origin of those shoe laces, I got them when my old office was getting closed. Missing the TIBX bus and shares I got those laces :( (People got nice race cars and big houses in Bay Area a dream come true in this materialistic world and what I got for boarding the train late. Well I have another pair of these laces…..

Unless any big shoot TIBX one day decide to run a charity marathon with these laces on his gizmo running shoes there is no real value to the other pair of laces I have. Any one out there …. You know I am sure it will not cost much.

Tuesday, October 11, 2005

Migrating rrd database between different architecture

This script you run on the source host from the same directory where all those rrd files are there. I found this very helpful while migrating between Linux and Solaris.



#/bin/csh

set all_files=`echo *.rrd`
echo $all_files
foreach file ( $all_files )
set base = `basename $file .rrd`
/bin/rrdtool dump $file > /tmp/new1/$base.xml
end


The do a `tar` with `gzip` as that will save lots of space and time while transferring data between machines.


And on the destination machine you uncompress and untar the file to an empty directory.


#/bin/csh

set all_files=`echo *.xml`
echo $all_files
foreach file ($all_files)
set base = `basename $file .xml`
/opt/local/bin/rrdtool restore $file /opt/local/htdocs/cacti/rra/$base.rrd
end



Hope this helps.

Wednesday, October 05, 2005

French class

After all these months, I prefer not to use years yet :) I started formal French class. I am not sure how it will end up as it keeps me reminding about my Spanish class which I dropped out after 2 months. But for those 2 months I went on time to Foothill community college every morning at 8AM. It was different as medium of instruction was English now everything is French. It is not difficult to understand what the teacher is saying but it is very hard to form a full sentence correctly in french.

I applied for beginner (level I) but after writing the test last week I found myself at level II yesterday evening. This must be due to my wife who made sure I do well in this test. May be I should not have answered so much as a beginner but I did not want to miss this chance as this class starts twice a year only. I would like to thank Daniel (my office teacher) as well. May be I could have learned better at first place paying more attention to him and secondly if those (office) classes were at regular interval.

I have to admit the class looks good with the dynamic and hard working teacher. She looks like going to make sure her students learn to speak and write proper French. The most of the students are from Asian origins female who are working as house maid in Paris.

Well I need to memorize a list of verbs and their conjugation now for tomorrow’s test.