rtgx

Ochranná známka

Zabezpečuje umiestnenie ochrannej známky v náhľade obrázku. Najprv nastavíme vlastné spracovanie zobrazovanie náhľadu v typoscripte (90 je id stránky na ktorej bude umiestnený PHP script z druhého výpisu):

# Image Watermark #########################################################

tt_content.image.20.1.imageLinkWrap.JSwindow {
altUrl = xxx.xxxxxx.xx/index.php;
altUrl_noDefaultParams = 0
}

Nastavenie tsyposcriptu stránky s id=90;constants, setup a rootlevel sú zaškrtnuté, include static je vybrané content (default):

config.language = sk
page = PAGE
page.typeNum = 0
page.includeCSS.css = fileadmin/xxxxxx/css/image.css
page.10 < styles.content.get

PHP spracovanie (popužíva funcie programu ImageMagick):

<?php

function composeImage( $image )
{
$local_cObj = t3lib_div::makeInstance( 'tslib_cObj' );
$path = 'uploads/pics/';

if( 1 )
{
if( !copy( $path.$image, $path.'w'.$image ) )
return "failed to copy $image...\n";
else
{
$imageConfig = array( 'width' => '100', );
$imageConfig['file'] = $path.'w'.$image;
$fileOut = $local_cObj->IMG_RESOURCE( $imageConfig );

$file = $path.$image;
$outfile = $path.'w'.$image;

$imgObj = t3lib_div::makeInstance('t3lib_stdGraphic');
$imgObj->init();
$imgObj->mayScaleUp = 0;
$imgObj->tempPath = PATH_site.$imgObj->tempPath;

$imgInfo = $imgObj->getImageDimensions( $outfile );
$imgSize = array( $imgInfo[0], $imgInfo[1] );

$fileMask = 'fileadmin/cobra/img/watermarkMask.gif';
$fileBack = 'fileadmin/cobra/img/watermark.gif';

combineExec( $fileBack, $file, $fileMask, $outfile, false, $imgInfo[0]-225, $imgInfo[1]-200 );

$params .= '<img width="'.$imgInfo[0].'" height="'.$imgInfo[1].'" src="'.$outfile.'" alt="" />';
return $params;
}

} else {

$params .= '<img src='.$path.'w'.$image.' alt="" />';
return $params;
}

} // end function composeImage( $image )


function combineExec( $input, $overlay, $mask, $output, $handleNegation = false, $left = 0, $top = 0 )
{
$params = ' -colorspace GRAY +matte ';
$theMask = 'fileadmin/cobra/img/watermarkTheMask.gif';
imageMagickExec( $mask, $theMask, $params );

$cmd = t3lib_div::imageMagickCommand('combine', '-compose over +matte -gravity SouthEast -quality 90 '.wrapFileName($input).' '.wrapFileName($overlay).' '.wrapFileName($theMask).' '.wrapFileName($output)); // +matte = no alpha layer in output
$IM_commands[] = Array ($output,$cmd);
$ret = exec( $cmd );
t3lib_div::fixPermissions( wrapFileName( $output ) );

if( is_file( $theMask ) )
@unlink( $theMask );

return $ret;
}

function wrapFileName( $inputName )
{
if (strstr($inputName,' ')) {
$inputName='"'.$inputName.'"';
}
return $inputName;
}

function imageMagickExec( $input, $output, $params )
{
$cmd = t3lib_div::imageMagickCommand('convert', $params.' '.wrapFileName($input).' '.wrapFileName($output));
$IM_commands[] = array( $output, $cmd );
$ret = exec( $cmd );
t3lib_div::fixPermissions( wrapFileName($output) );
return $ret;
}

$file = substr( $_GET['?file'], strrpos( $_GET['?file'], '/' ) + 1, strlen( $_GET['?file'] ) );
echo '<a href="javascript:close();">'.composeImage( trim( $file ) ).'</a>';

?>
 
Žiadne dokumenty ani odkazy k tejto stránke.