view.skin.php 에서 ~~~~이미지에 워터마크 넣는데 오류...;; 정보
view.skin.php 에서 ~~~~이미지에 워터마크 넣는데 오류...;;본문
/*===============================워터마크========================================*/
/*===============================워터마크========================================*/
function WatermarkImage($CanvasImage, $WatermarkImage /* MUST BE PNG */, $Opacity=30, $Quality=70, $WatermarkLocate=1)
{
// create true color canvas image:
$canvas_src = imagecreatefromjpeg($CanvasImage);
$canvas_w = ImageSX($canvas_src);
$canvas_h = ImageSY($canvas_src);
$canvas_img = imagecreatetruecolor($canvas_w, $canvas_h);
imagecopy($canvas_img, $canvas_src, 0,0,0,0, $canvas_w, $canvas_h);
imagedestroy($canvas_src); // no longer needed
/*===============================워터마크========================================*/
function WatermarkImage($CanvasImage, $WatermarkImage /* MUST BE PNG */, $Opacity=30, $Quality=70, $WatermarkLocate=1)
{
// create true color canvas image:
$canvas_src = imagecreatefromjpeg($CanvasImage);
$canvas_w = ImageSX($canvas_src);
$canvas_h = ImageSY($canvas_src);
$canvas_img = imagecreatetruecolor($canvas_w, $canvas_h);
imagecopy($canvas_img, $canvas_src, 0,0,0,0, $canvas_w, $canvas_h);
imagedestroy($canvas_src); // no longer needed
// create true color overlay image:
$overlay_src = imagecreatefrompng($WatermarkImage);
$overlay_w = ImageSX($overlay_src);
$overlay_h = ImageSY($overlay_src);
$overlay_img = imagecreatetruecolor($overlay_w, $overlay_h);
imagecopy($overlay_img, $overlay_src, 0,0,0,0, $overlay_w, $overlay_h);
imagedestroy($overlay_src); // no longer needed
$overlay_src = imagecreatefrompng($WatermarkImage);
$overlay_w = ImageSX($overlay_src);
$overlay_h = ImageSY($overlay_src);
$overlay_img = imagecreatetruecolor($overlay_w, $overlay_h);
imagecopy($overlay_img, $overlay_src, 0,0,0,0, $overlay_w, $overlay_h);
imagedestroy($overlay_src); // no longer needed
// setup transparent color (pick one):
$black = imagecolorallocate($overlay_img, 0x00, 0x00, 0x00);
$white = imagecolorallocate($overlay_img, 0xFF, 0xFF, 0xFF);
$magenta = imagecolorallocate($overlay_img, 0xFF, 0x00, 0xFF);
// and use it here:
imagecolortransparent($overlay_img, $white);
$black = imagecolorallocate($overlay_img, 0x00, 0x00, 0x00);
$white = imagecolorallocate($overlay_img, 0xFF, 0xFF, 0xFF);
$magenta = imagecolorallocate($overlay_img, 0xFF, 0x00, 0xFF);
// and use it here:
imagecolortransparent($overlay_img, $white);
// 워터마크 이미지의 위치(기본값은 가운데 1입니다.)
switch ($WatermarkLocate) {
case 0: // 좌측상단
$ww = 0;
$wh = 0;
break;
case 1: // 가운데
$ww = ($canvas_w / 2) - ($overlay_w / 2);
$wh = $canvas_h - ($overlay_h);
break;
case 2: // 우측하단
$ww = $canvas_w - ($overlay_w);
$wh = $canvas_h - ($overlay_h);
break;
}
switch ($WatermarkLocate) {
case 0: // 좌측상단
$ww = 0;
$wh = 0;
break;
case 1: // 가운데
$ww = ($canvas_w / 2) - ($overlay_w / 2);
$wh = $canvas_h - ($overlay_h);
break;
case 2: // 우측하단
$ww = $canvas_w - ($overlay_w);
$wh = $canvas_h - ($overlay_h);
break;
}
// copy and merge the overlay image and the canvas image:
// for($ww=0; $ww <= $convas_w ; $ww=$ww+100) {
for($ww=0; $ww <= 800 ; $ww=$ww+100) {
for($wh=0 ; $wh <=$canvas_h ; $wh=$wh+100) {
imagecopymerge($canvas_img, $overlay_img, $ww,$wh,0,0, $overlay_w, $overlay_h, $Opacity);
}
}
imagejpeg($canvas_img, $CanvasImage, $Quality);
/*
// output:
header("Content-type: image/jpeg");
imagejpeg($canvas_img, '', $Quality);
*/
imagedestroy($overlay_img);
imagedestroy($canvas_img);
}
/*===============================워터마크 끝========================================*/
/*===============================워터마크 끝========================================*/
// for($ww=0; $ww <= $convas_w ; $ww=$ww+100) {
for($ww=0; $ww <= 800 ; $ww=$ww+100) {
for($wh=0 ; $wh <=$canvas_h ; $wh=$wh+100) {
imagecopymerge($canvas_img, $overlay_img, $ww,$wh,0,0, $overlay_w, $overlay_h, $Opacity);
}
}
imagejpeg($canvas_img, $CanvasImage, $Quality);
/*
// output:
header("Content-type: image/jpeg");
imagejpeg($canvas_img, '', $Quality);
*/
imagedestroy($overlay_img);
imagedestroy($canvas_img);
}
/*===============================워터마크 끝========================================*/
/*===============================워터마크 끝========================================*/
// 가변 파일
$cnt = 0;
for ($i=0; $i<count($view[file]); $i++) {
if ($view[file][$i][source]) {
$cnt++;
//echo "<tr><td height=22> <img src='{$board_skin_path}/img/icon_file.gif' style='vertical-align:middle;'> <a href='{$view[file][$i][href]}' title='{$view[file][$i][content]}'><strong>{$view[file][$i][source]}</strong> ({$view[file][$i][size]}), Down : {$view[file][$i][download]}, {$view[file][$i][datetime]}</a></td></tr>";
echo "<tr><td height=22> <img src='{$board_skin_path}/img/icon_file.gif' style='vertical-align:middle;'> <a href=\"javascript:file_download('{$view[file][$i][href]}', '{$view[file][$i][source]}');\" title='{$view[file][$i][content]}'><strong>{$view[file][$i][source]}</strong> ({$view[file][$i][size]}), Down : {$view[file][$i][download]}, {$view[file][$i][datetime]}</a></td></tr>";
}
}
// 링크
$cnt = 0;
for ($i=1; $i<=$g4[link_count]; $i++) {
if ($view[link][$i]) {
$cnt++;
$link = cut_str($view[link][$i], 70);
echo "<tr><td height=22> <img src='{$board_skin_path}/img/icon_link.gif' style='vertical-align:middle;'> <a href='{$view[link_href][$i]}' target=_blank><strong>{$link}</strong> ({$view[link_hit][$i]})</a></td></tr>";
}
}
?>
$cnt = 0;
for ($i=1; $i<=$g4[link_count]; $i++) {
if ($view[link][$i]) {
$cnt++;
$link = cut_str($view[link][$i], 70);
echo "<tr><td height=22> <img src='{$board_skin_path}/img/icon_link.gif' style='vertical-align:middle;'> <a href='{$view[link_href][$i]}' target=_blank><strong>{$link}</strong> ({$view[link_hit][$i]})</a></td></tr>";
}
}
?>
<tr>
<td height="150" valign="top" style='word-break:break-all; padding:10px;'>
<span id="writeContents" class="ct lh">
<!-- 내용 출력 -->
<td height="150" valign="top" style='word-break:break-all; padding:10px;'>
<span id="writeContents" class="ct lh">
<!-- 내용 출력 -->
<?//=$view[content];?>
<?
//오달수님 줄바꿈으로 생기는 불펼요한 상단여백 제거
//http://www.sir.co.kr/bbs/tb.php/g4_tiptech/1866
<?
//오달수님 줄바꿈으로 생기는 불펼요한 상단여백 제거
//http://www.sir.co.kr/bbs/tb.php/g4_tiptech/1866
/**********************************************************************************************/
/* -- 썸네일 이미지 출력 -- */
/**********************************************************************************************/
/**********************************************************************************************/
/* -- 썸네일 이미지 출력끝 -- */
/**********************************************************************************************/
/* -- 썸네일 이미지 출력끝 -- */
/**********************************************************************************************/
$Que_Vcontent=mysql_query("select wr_content from $write_table where wr_id ='$wr_id'");
$Vcontent= @mysql_result($Que_Vcontent,0,0);
if(!$html) {
$Vcontent = str_replace("<", "<", $Vcontent);
$Vcontent = str_replace(">", ">", $Vcontent);
$Vcontent = nl2br($Vcontent);
$Vcontent = stripslashes($Vcontent); //\제거
$Vcontent = str_replace("\t"," ",$Vcontent);
$Vcontent = str_replace(" "," ",$Vcontent);
}
else if($html==1) {
$Vcontent = str_replace("\n", "\n", $Vcontent);
$Vcontent = str_replace("¦", "\|", $Vcontent);
$Vcontent = str_replace("&", "&&", $Vcontent);
$Vcontent = str_replace( """, "\"",$Vcontent );
}
else if($html==2) {
$Vcontent = str_replace("\r", '',$Vcontent);
$Vcontent = preg_replace('/(?<!>)\n/', "<br />\n",$Vcontent);
}
$Vcontent= @mysql_result($Que_Vcontent,0,0);
if(!$html) {
$Vcontent = str_replace("<", "<", $Vcontent);
$Vcontent = str_replace(">", ">", $Vcontent);
$Vcontent = nl2br($Vcontent);
$Vcontent = stripslashes($Vcontent); //\제거
$Vcontent = str_replace("\t"," ",$Vcontent);
$Vcontent = str_replace(" "," ",$Vcontent);
}
else if($html==1) {
$Vcontent = str_replace("\n", "\n", $Vcontent);
$Vcontent = str_replace("¦", "\|", $Vcontent);
$Vcontent = str_replace("&", "&&", $Vcontent);
$Vcontent = str_replace( """, "\"",$Vcontent );
}
else if($html==2) {
$Vcontent = str_replace("\r", '',$Vcontent);
$Vcontent = preg_replace('/(?<!>)\n/', "<br />\n",$Vcontent);
}
// 균이님 원하는곳에 첨부파일 삽입 수정본
for ($i=0; $i<=count($view['file']); $i++) {
if ($view['file'][$i]['view']) {
$image_file = $view['file'][$i]['view'];
$image_pos = "<그림" . ($i+1) . ">";
$image_pos2 = "<그림" . ($i+1) . ">";
for ($i=0; $i<=count($view['file']); $i++) {
if ($view['file'][$i]['view']) {
$image_file = $view['file'][$i]['view'];
$image_pos = "<그림" . ($i+1) . ">";
$image_pos2 = "<그림" . ($i+1) . ">";
if (strstr($Vcontent,$image_pos) || strstr($Vcontent,$image_pos2)) {
$pattern="/($image_pos|$image_pos2)/";
$Vcontent=preg_replace($pattern,$image_file,$Vcontent);
}
$pattern="/($image_pos|$image_pos2)/";
$Vcontent=preg_replace($pattern,$image_file,$Vcontent);
}
else echo $view['file'][$i]['view'] . "<p>";
}
$overfile = "$g4[path]/overlay.png";
echo $view['file'][$i]['view'] . "<p>";
WatermarkImage("$view['file'][$i]['view']", $overfile, 40, 70, 0);
}
}
$overfile = "$g4[path]/overlay.png";
echo $view['file'][$i]['view'] . "<p>";
WatermarkImage("$view['file'][$i]['view']", $overfile, 40, 70, 0);
}
핵심부분만...^^;
이렇게 view.skin.php에서 이미지를 불러와서 출력하는건데..
제가 여기서 이미지를 불러와서 워터마크을 하고 이미지를 출력하고 싶은데...
나름대로 해봣는데 안되네요..
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/webteam/public_html/gnuboard4/skin/board/basic_link_juni/view.skin.php on line 249
이런 오류메시지만 남기고.ㅡ.ㅡ;
이게 이미지파일 변수 $view['file'][$i]['view'] 아닌가요??
$overfile = "$g4[path]/overlay.png";
echo $view['file'][$i]['view'] . "<p>";
WatermarkImage("$view['file'][$i]['view']", $overfile, 40, 70, 0);
echo $view['file'][$i]['view'] . "<p>";
WatermarkImage("$view['file'][$i]['view']", $overfile, 40, 70, 0);
그래서 이렇게 코딩을 햇는데.. 오류가 나네요..^^;
좀 도와주십쇼~ ^^;
댓글 전체
