Пример #1
0
$leoSprites = array('fl' => array('selector-prefix' => 'img.fl', 'background' => '#00FF00', 'horizontal-offset' => 20, 'vertical-offset' => 20, 'use-transparency' => 'on', 'image-output' => 'PNG', 'image-num-colours' => '256', 'add-width-height-to-css' => '', 'filename' => 'flags'), 'icons1' => array('selector-prefix' => 'img.icons1', 'background' => '#FF7DF1', 'horizontal-offset' => 40, 'vertical-offset' => 25, 'file-regex' => '(.*).png', 'use-transparency' => 'on', 'image-output' => 'PNG', 'image-num-colours' => '256'), 'brands' => array('selector-prefix' => 'img.brands', 'background' => '#FF7DF1', 'horizontal-offset' => 85, 'vertical-offset' => 25, 'use-transparency' => 'on', 'image-output' => 'PNG', 'image-num-colours' => '256'));
$extraCss = array('fl' => '
width:18px;
height:11px;	
margin-top:1px;
margin-left:2px;');
$cssStr = '';
foreach ($leoSprites as $dirName => $dirOptions) {
    // create an intance of the sprite gen class
    // (this does all the work of creating sprites and CSS)
    $_POST = array('MAX_FILE_SIZE' => 524288, 'zip-folder' => '6d64c93a3f812f546092f64a911176de', 'zip-folder-hash' => '90520b09bec4b53e58f19b97ec4b11d5', 'ignore-duplicates' => 'ignore', 'width-resize' => 100, 'height-resize' => 100, 'build-direction' => 'vertical', 'horizontal-offset' => 50, 'vertical-offset' => 50, 'wrap-columns' => 'on', 'background' => '#FF7DF1', 'use-transparency' => 'on', 'image-output' => 'PNG', 'image-num-colours' => 'true-colour', 'image-quality' => '75', 'use-optipng' => 'on', 'selector-prefix' => 'img.fl', 'class-prefix' => 'sprite-', 'selector-suffix' => '', 'add-width-height-to-css' => 'on');
    $oCssSpriteGen = new CssSpriteGen();
    foreach ($dirOptions as $name => $val) {
        $_POST[$name] = $val;
    }
    $oCssSpriteGen->ProcessForm();
    $sFolderMD5 = $oCssSpriteGen->ProcessFile();
    // look into leonardo img folders instead
    $sFolderMD5 = "{$imgDir}/{$dirName}/";
    $oCssSpriteGen->CreateSprite($sFolderMD5);
    $tmpImgFile = $tmpImgDir . '/' . $oCssSpriteGen->GetSpriteFilename();
    if ($dirOptions['filename']) {
        $realImgFile = "{$imgDir}/sprite_" . $dirOptions['filename'] . ".png";
    } else {
        $realImgFile = "{$imgDir}/sprite_{$dirName}.png";
    }
    $cssStrTmp = $oCssSpriteGen->GetCss();
    $cssStr .= "\nimg.{$dirName} {\nfloat:none;\ndisplay:inline-block;\n*display:inline;\nclear:none;" . $extraCss[$dirName] . "\n}\n" . $cssStrTmp;
    echo "Moving sprite file  {$tmpImgFile} to {$realImgFile}<BR>";
    if ($WRITE_FILES) {
        @unlink($realImgFile);