Tag Archive for image

Random Image PHP

<?php
/**********************************************
* Yazar     : Richard Harris
* Web     : <a href="http://www.rtharris.com" >www.rtharris.com</a>
* Posta     : <a href="mailto:richard@rtharris.com">richard@rtharris.com</a>
* Tarih     : 16/02/06
* Kullanım     :
*           <img src=img.php>
*           <img src=img.php?folder=images2/>
***********************************************/

if($_GET['folder']){
$folder=$_GET['folder'];
}else{
$folder='/images/';
}

//Selected Folder Name
$path = $_SERVER['DOCUMENT_ROOT']."/".$folder;
$files=array();
if ($handle=opendir("$path")) {
while(false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
if(substr($file,-3)=='gif' || substr($file,-3)=='jpg') $files[count($files)] = $file;
}
}
}
closedir($handle);

$random=rand(0,count($files)-1);
if(substr($files[$random],-3)=='gif') header("Content-type: image/gif");
elseif(substr($files[$random],-3)=='jpg') header("Content-type: image/jpeg");
readfile("$path/$files[$random]");
?>

Usage :
It's very easy to use. Just copy the code to a new php file and save it "randomImages.php".

Then where ever you would like to use and show your random images, use this way and don't forget to add folder name to a string.
<img src=randomImages.php?folder=randomFolder02/>

source

Javascript image preload object

<html>
<head>
<script type="text/javascript">
oHW = {

myimgs : new Array(),
reimgs : new Array(),
oId : '',
preMontar : function() {
for (v=0; v<this.preMontar.arguments.length; v++){
this.myimgs[v] = new Image();
this.myimgs[v].src = this.preMontar.arguments[v];
}
},
Cambiar : function(myid,n) {
this.myimgs[myid] = document.getElementById(myid).src;
this.oId = myid;
document.getElementById(myid).src = n;
},
Restore : function() {
document.getElementById(this.oId).src = this.myimgs[this.oId];
this.oId = '';
}

} // ..
</script>
</head>

<body onload="oHW.preMontar('img1_on.jpg','img2_on.jpg','img3_on.jpg');">

<a href="#" onmouseout="oHW.Restore()" onmouseover="oHW.Cambiar('mn1','img1_on.jpg')"><img border="0" id="mn1" src="img1.jpg" alt="" /></a>

<a href="#" onmouseout="oHW.Restore()" onmouseover="oHW.Cambiar('mn2','img2_on.jpg')"><img border="0" id="mn2" src="img2.jpg" alt="" /></a>

<a href="#" onmouseout="oHW.Restore()" onmouseover="oHW.Cambiar('mn3','img3_on.jpg')"><img border="0" id="mn3" src="img3.jpg" alt="" /></a>

</body>
</html>

source

Replace text with image

#ID_OF_ELEMENT {
padding: HEIGHT_OF_IMAGEpx 0 0 0;
overflow: hidden;
background-image: url("hello_world.gif");
background-repeat: no-repeat;

height: 0px !important;
height /**/:HEIGHT_OF_IMAGEpx;
}

source

MooTools image rollover

window.addEvent('domready', function() {
$$('img.mo').each(function(img) {
var src = img.getProperty('src');
var extension = src.substring(src.lastIndexOf('.'),src.length)
img.addEvent('mouseenter', function() { img.setProperty('src',src.replace(extension,'-mo' + extension)); });
img.addEvent('mouseleave', function() { img.setProperty('src',src); });
});
});

//Usage:

<a href="/"><img src="/graphics/sugar.jpg" alt="Sugar" class="mo" height="50" width="150"></a>

source

no border on images

a img{
border: 0;
}

source

AS2 レンズフィルターのように画像を拡大して移動する

/*
このスクリプトはattachされるインスタンスに書く
これ以外に ID: ins_Lenzの90pxの正円で写真(pic)をマスクしたリンケージシンボルを作成
*/

num = 15;
zr = 10;
vx = 5;
vy = 3;
ballD = 150;
boundary = [20, 20, 620, 360];
R = ballD/2;
boundary[0] += R;
boundary[1] += R;
boundary[2] -= R;
boundary[3] -= R;
scaleA = [];
scaleB = [];

// 内側に行くほど拡大した写真をマスクしている
for (i=1; i<=num; i++) {
scaleA[i] = 10+90*(num+1-i)/num;
scaleB[i] = 100+zr*i;
this.attachMovie("ins_Lenz", "lenz_"+i, i);
this["lenz_"+i]._xscale = this["lenz_"+i]._yscale=scaleA[i];
this["lenz_"+i].pic._xscale = this["lenz_"+i].pic._yscale=100*scaleB[i]/scaleA[i];
}
//
function f_ballMove() {
this._x+vx;
if (this._x+vx>boundary[2]) {
this._x = boundary[2];
vx *= -1;
} else if (this._x+vx<boundary[0]) {
this._x = boundary[0];
vx *= -1;
} else {
this._x += vx;
}
if (this._y+vy>boundary[3]) {
this._y = boundary[3];
vy *= -1;
} else if (this._y+vy<boundary[1]) {
this._y = boundary[1];
vy *= -1;
} else {
this._y += vy;
}
for (i=1; i<=num; i++) {
this["lenz_"+i].pic._y = -1*scaleB[i]/scaleA[i]*this._y;
this["lenz_"+i].pic._x = -1*scaleB[i]/scaleA[i]*this._x;
}
}
f_ballMove();

source

AS2 CASA ロードした画像をタイル上に並べる

import org.casaframework.load.data.xml.XmlLoad;
import org.casaframework.util.XmlUtil;
import org.casaframework.load.LoadGroup;
import org.casaframework.load.media.MediaLoad;
import org.casaframework.math.geom.Rectangle;
import org.casaframework.layout.DistributionCollection;

var xmlObject:Object;
var myLoadGroup:LoadGroup;
var myXmlLoad:XmlLoad;

loadXmlData();

// XML 読み込み
function loadXmlData(){
trace("xml start");
this.myXmlLoad = new XmlLoad('data/sample.xml'); // xmlのパスを記入
this.myXmlLoad.addEventObserver(this, XmlLoad.EVENT_LOAD_COMPLETE, 'onXmlLoad');
this.myXmlLoad.start();
}

// XML読み込み完了
function onXmlLoad(){
trace("xml load complete");
this.xmlObject = XmlUtil.xmlToObject(this.myXmlLoad.getXml())['data'][0]['block']; // + 〜getXml())['data'][0]['keyword']でxmlのルート-0番目->一番目の要素...と取り出す
init();
}

function init():Void {
myLoadGroup = new LoadGroup();
trace(xmlObject.length);
for (var i:Number = 0; i<xmlObject.length; i++) {
var rect:MovieClip = this.createEmptyMovieClip("rect"+i,getNextHighestDepth());
var holder:MovieClip =rect.createEmptyMovieClip("holder",getNextHighestDepth());
myLoadGroup.addLoad(new MediaLoad(holder,xmlObject[i].img[0].nodeValue)); // ロードする画像のパスの位置
}
myLoadGroup.addEventObserver(this, LoadGroup.EVENT_LOAD_COMPLETE, "onGroupLoadComplete");
myLoadGroup.start();
}

function onGroupLoadComplete(){
trace("全画像ロード完了");
//loading._visible = false;
var _dist:DistributionCollection;
_dist = new DistributionCollection( true );
_dist.setRectangle(new Rectangle(0, 0, 350, Number.POSITIVE_INFINITY));
_dist.setMargin(10, 10, 10, 10);
var thumbs:Array = myLoadGroup.getLoads();
trace(thumbs.length);
for(var i:Number=0;i<thumbs.length;i++){
var mc:MovieClip = thumbs[i].getMovieClip();
//配列に格納される順番が逆転してるのに注意!
trace(thumbs[i].getMovieClip());
//CASA のドキュメントのサンプルはライブラリの中からシンボルを attachMovie してるサンプルなので、
//今回は mc を追加していくだけでOKです。
_dist.addItem(mc);
}
_dist.positionItems();
trace(_dist);
}

source

Link to an image so it downloads rather than just displaying in the browser

// The php (process.php)

$file = $_GET['file'];
header ("Content-type: octet/stream");
header ("Content-disposition: attachment; filename=".$file.";");
header("Content-Length: ".filesize($file));
readfile($file);
exit;

// In your html
<a href="process.php?file=pic.jpg">Image goes Here</a>

source

AS2 MdN ランダムにトランジション 画面遷移ライブラリ

/* ここから */
/*
ランダムなトランジション
ランダムに画面を切り替える実行部分とライブラリ
まず1〜5の画像をロード
*/

/* ここから 実行部分 */
import mx.transitions.*;
import mx.transitions.easing.*;

var cnt:Number = 0;
var index:Number = 0;
var imageArray:Array = new Array();
var base_mc:MovieClip = this.createEmptyMovieClip("base_mc", 1);
var mclListener:Object = new Object();
var image_mcl:MovieClipLoader = new MovieClipLoader();
image_mcl.addListener(mclListener);

for (var i=0; i<5; i++) {
var mc1:MovieClip = this.createEmptyMovieClip("image_mc1"+i,10+i);
var mc2:MovieClip = mc1.createEmptyMovieClip("image_mc2"+i, 100+i);

image_mcl.loadClip(1+i+".jpg", mc2);
}

mclListener.onLoadInit = function(mc:MovieClip) {
base_mc._x=5;
base_mc._y=5;
mc._x=-mc._width/2;
mc._y=-mc._height/2;
mc._parent._x=mc._width/2;
mc._parent._y=mc._height/2;
mc._visible=false;
imageArray.push (mc)
imageArray.sort (16)

if(cnt==4){
set_c(base_mc,[1,0x000000,100],[0xffffff,100],mc._height,mc._width)
setImage(mc);
}
cnt++;
};

function upData():Void {

index++;
index %= imageArray.length;
firstImage(imageArray[index])

}

function firstImage(mc:MovieClip):Void {

mc._visible=true;
mc._parent.swapDepths( this.getNextHighestDepth())
img_go(mc)

}

function setImage(mc:MovieClip):Void {
var startTime:Number;
var timeOut:Number = 1000;
startTime= getTimer();
base_mc.onEnterFrame = function(){
if(getTimer() > startTime+timeOut){
var tt=(0-this._x)/3;
var hh=(0-this._y)/3
if(Math.abs(tt)<0.1 && Math.abs(hh)<0.1 ){
this._x =0;
this._y =0;
delete this.onEnterFrame;
drop(this);
firstImage(mc);
SlideImageID=setInterval(upData,5000);
}else{
this._x += tt;
this._y += hh;

}
}

}
}

function goOut(mc:MovieClip):Void{

var myTween4:Tween= new Tween(mc._parent, "_alpha", Strong.easeIn, 100, 0, 8, true);

}

function set_c(_mc,line_style, fill_style,he,wi):Void {

if (line_style)_mc.lineStyle.apply(_mc, line_style);
if (fill_style) _mc.beginFill.apply(_mc, fill_style);

_mc.moveTo(0,0);
_mc.lineTo(0, he-1);
_mc.lineTo(wi-1, he-1);
_mc.lineTo(wi-1,0);
_mc.lineTo(0, 0);
if (fill_style) _mc.endFill();

}

function drop(target_mc:MovieClip):Void{

var distance:Number = 5;
var angleInDegrees:Number = 45;
var color:Number = 0x000000;
var alpha:Number = .8;
var blurX:Number = 7;
var blurY:Number = 7;
var strength:Number = 1;
var quality:Number = 3;
var inner:Boolean = false;
var knockout:Boolean = false;
var hideObject:Boolean = false;

var filter =  new flash.filters.DropShadowFilter(distance,
angleInDegrees,
color,
alpha,
blurX,
blurY,
strength,
quality,
inner,
knockout,
hideObject);
var filterArray:Array = target_mc.filters;
filterArray.push(filter);
target_mc.filters = filterArray;

}

function img_go(mc:MovieClip):Void {
var imgArray = ["roTra", "phTra", "sqTra", "flyTra", "pdTra","blTra","faTra","irTra","wiTra","zoTra"];
this[imgArray[Math.floor(Math.random()*imgArray.length)]](mc);

goOut(mc)
}

/* ここまで 実行部分 */

/* ここから ライブラリ */
import mx.transitions.*;
import mx.transitions.easing.*;

function roTra(mc:MovieClip):Void {
var myTween:Tween= new Tween(mc, "_alpha", Strong.easeIn, 0, 100, 2, true);
TransitionManager.start(mc._parent, {type:Rotate, direction:Transition.IN, duration:3, easing:Strong.easeInOut, ccw:false, degrees:720});
}
function phTra(mc:MovieClip):Void {
var myTween1:Tween= new Tween(mc, "_alpha", Strong.easeIn, 0, 100, 10, false);
TransitionManager.start (mc._parent, {type:Photo, direction:Transition.IN, duration:2, easing:Elastic.easeOut});
}
function sqTra(mc:MovieClip):Void {
var myTween2:Tween= new Tween(mc, "_alpha", Strong.easeIn, 0, 100, 10, false);
TransitionManager.start(mc._parent, {type:Squeeze, direction:Transition.IN, duration:3, easing:Elastic.easeOut, dimension:0});
}
function flyTra(mc:MovieClip):Void {
var myTween3:Tween= new Tween(mc, "_alpha", Strong.easeIn, 0, 100, 25, false);
TransitionManager.start(mc._parent, {type:Fly, direction:Transition.IN, duration:3, easing:Elastic.easeOut, startPoint:9});
}
function pdTra(mc:MovieClip):Void {

TransitionManager.start(mc._parent, {type:PixelDissolve, direction:Transition.IN, duration:2, easing:None.easeNone, xSections:20, ySections:20});

}
function blTra(mc:MovieClip):Void {

TransitionManager.start(mc._parent, {type:Blinds, direction:Transition.IN, duration:2, easing:None.easeNone, numStrips:15, dimension:1});

}
function faTra(mc:MovieClip):Void {

TransitionManager.start(mc, {type:Fade, direction:Transition.IN, duration:3, easing:Strong.easeIn});

}
function wiTra(mc:MovieClip):Void {

TransitionManager.start(mc._parent, {type:Wipe, direction:Transition.IN, duration:2, easing:None.easeNone, startPoint:1});

}
function irTra(mc:MovieClip):Void {

TransitionManager.start(mc._parent, {type:Iris, direction:Transition.IN, duration:2, easing:Strong.easeOut, startPoint:5, shape:Iris.CIRCLE});

}
function zoTra(mc:MovieClip):Void {

TransitionManager.start(mc._parent, {type:Zoom, direction:Transition.IN, duration:2, easing:Elastic.easeOut});

}
/* ここまで ライブラリ */

source

AS2 CASA MediaLoadで画像ロード

/* ここから */
/* MediaLoad使い方 */
import org.casaframework.load.media.MediaLoad;

//holderを配置
this.createEmptyMovieClip("holder",this.getNextHighestDepth());
//CASAを使ってholder上に画像をロード
var mediaLoad:MediaLoad = new MediaLoad(holder, "external.jpg", false);
//画像のロードが完了したら、onImageLoadComplete を実行しろという指定
mediaLoad.addEventObserver(this, MediaLoad.EVENT_LOAD_COMPLETE, "onImageLoadComplete");
//ロード開始
mediaLoad.start();

function onImageLoadComplete(sender:MediaLoad){
//画像ロードが完了したら、上にリンケージ登録してあるMCをかぶせる
holder.attachMovie("attachMC", "attachMC1",100); //とりあえず深度100に置く
}

source