유

문자열이미지에 각종 필터를 적용한 결과

· 2014-08-03 (일) 16:26:22 · 5471 · 7
대단할것은 없는 강좌이지만,
제 강좌를 출처를 밝히고 외부로 퍼가는 것은 허용하지만,
다른 강좌의 자료나 책의 자료로 사용되거나 부분적인 인용은 허용하지 않습니다.
강좌는 php 5. 대를 기준으로 하며, 이미지 관련을 다룹니다.
이미지에 글을 쓰거나 이미지를 합치거나 하는 등의 내용을 다루어 볼까 합니다.
나중에는 간단한 짤방 만들기 같은 것도 할수 있지 않을까 싶습니다.

 

이미지관련 > 문자열이미지에 각종 필터를 적용한 결과

 

이번 내용은

문자열이미지에 여러가지 필터를 적용하고 그 결과를 확인해보는 내용입니다.

 

예제11 > study11.php

 

<?php

@error_reporting( E_ALL );
header("Content-Type: text/html; charset=UTF-8");

include_once('image.lib.20140801.php');



$font_file = './Daum_Regular.ttf';
$font_size = 15;
$angle = 0;
$text = '동해물과 백두산이 마르고
닳도록 하느님이
보우하사 우리
나라 만세';
$padding = 10;

$filters = Array(
'IMG_FILTER_NEGATE'=>IMG_FILTER_NEGATE,
'IMG_FILTER_GRAYSCALE'=>IMG_FILTER_GRAYSCALE,
'IMG_FILTER_EDGEDETECT'=>IMG_FILTER_EDGEDETECT,
'IMG_FILTER_EMBOSS'=>IMG_FILTER_EMBOSS,
'IMG_FILTER_GAUSSIAN_BLUR'=>IMG_FILTER_GAUSSIAN_BLUR,
'IMG_FILTER_SELECTIVE_BLUR'=>IMG_FILTER_SELECTIVE_BLUR,
'IMG_FILTER_MEAN_REMOVAL'=>IMG_FILTER_MEAN_REMOVAL
);

$filters2 = Array(
'IMG_FILTER_BRIGHTNESS'=>Array(IMG_FILTER_BRIGHTNESS, 20, 40, 60, 80, 100),
'IMG_FILTER_CONTRAST'=>Array(IMG_FILTER_CONTRAST, 20, 40, 60, 80, 100),
'IMG_FILTER_SMOOTH'=>Array(IMG_FILTER_SMOOTH, -8, -6, -4, -2, 2, 4, 6, 8)
);

$args = range(0, 200, 100);



$save_file = 'temp/study11_1.jpg';

$im = imagecreatetruecolor(300, 300);
$white = imagecolorallocate($im, 0xFF, 0xFF, 0xFF);
$black = imagecolorallocate($im, 0x00, 0x00, 0x00);

imagefilledrectangle($im, 0, 0, 299, 299, $white);

image_text_align ($im, $font_file, $font_size, $black, $angle, $text, 'center', 'middle', $padding);

imagejpeg($im, $save_file);
imagedestroy($im);

?>

원본<br>
<img src="<?php echo $save_file; ?>"><br><br><br>

<?



$i = 2;
foreach($filters as $name => $filter){

    $im = @imagecreatefromjpeg($save_file);
    imagefilter($im, $filter);

    imagepng($im , 'temp/study11_' . $i . '.png');
    @imagedestroy($im);

?>

필터 : <?php echo $name; ?><br>
<img src="temp/study11_<?php echo $i; ?>.png"><br><br><br>

<?
    $i++;
}



foreach($filters2 as $name => $array){

    $filter = array_shift($array);

    foreach($array as $level) {

        $im = @imagecreatefromjpeg($save_file);
        imagefilter($im, $filter, $level);

        imagepng($im , 'temp/study11_' . $i . '.png');
        @imagedestroy($im);

?>

필터 : <?php echo $name; ?> 레벨 : <?php echo $level; ?> <br>
<img src="temp/study11_<?php echo $i; ?>.png"><br><br><br>

<?
        $i++;
    }
}



$name = 'IMG_FILTER_COLORIZE';
$filter = IMG_FILTER_COLORIZE;

foreach($args as $args1){

    foreach($args as $args2){

        foreach($args as $args3){

        $im = @imagecreatefromjpeg($save_file);
        imagefilter($im, $filter, $args1, $args2, $args3);

        imagepng($im , 'temp/study11_' . $i . '.png');
        @imagedestroy($im);

?>

필터 : <?php echo $name; ?> R : <?php echo $args1; ?> G : <?php echo $args2; ?> B : <?php echo $args3; ?> <br>
<img src="temp/study11_<?php echo $i; ?>.png"><br><br><br>

<?
            $i++;
        }
    }
}

?>

 

이전 내용과 동일합니다.

첨부파일

image.lib.20140801.php (9.3 KB) 32회 2014-08-03 16:26
|

댓글 7개

감사합니다.~
많은 필터가 있네요 ㅎㅎㅎ
근데 막상 뭐 딱히 쓸만한건 없어 ㅎㅎ
ㅎㅎㅎ 응용하면 뭔가나올것 같은데
응용하면 다 답이 있지.
암튼 저것만으론 뭘 제대로 해볼려면 부족해.
이미지 쪽은 약한 저는 참고로 ㅎㅎㅎ
문자 api짜고 정독해야겠네요
나중에 좋은 사이트 알려드릴게요
그래 고마워
2014-08-29 (금) 14:49:41
좋은 자료 감사합니다 :)
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
14-08-26 조회 3,381
14-08-26 조회 3,540
14-08-26 조회 4,094
14-08-26 조회 3,471
14-08-26 조회 3,702
14-08-26 조회 3,630
14-08-26 조회 3,401
14-08-26 조회 3,508
14-08-26 조회 3,465
14-08-26 조회 3,578
14-08-25 조회 4,021
14-08-16 조회 4,150
14-08-12 조회 4,035
14-08-05 조회 3,880
14-08-04 조회 4,575
14-08-04 조회 3,913
14-08-01 조회 4,998
14-07-29 조회 4,166
14-07-10 조회 4,063
14-07-08 조회 4,703
14-07-08 조회 4,198
14-07-05 조회 3,834
14-05-26 조회 5,350
14-05-26 조회 4,098
14-05-21 조회 4,476
14-05-19 조회 7,426
14-05-17 조회 6,758
14-04-30 조회 7,155
14-04-27 조회 4,577
14-04-26 조회 4,752
14-04-13 조회 4,815
14-04-13 조회 4,078
14-03-25 조회 6,416
14-03-25 조회 4,095
14-03-12 조회 3,903
14-03-12 조회 5,323
14-02-24 조회 4,640
13-12-27 조회 3,948
13-11-18 조회 4,253
13-11-18 조회 6,555
13-10-17 조회 4,561
13-10-03 조회 6,209
13-10-02 조회 4,113
13-09-29 조회 4,637
13-09-29 조회 3,958
13-09-17 조회 3,755
13-09-11 조회 5,994
13-09-09 조회 4,223
13-09-05 조회 9,317
13-08-23 조회 5,617
13-08-22 조회 5,141
13-08-22 조회 4,504
13-08-22 조회 4,969
13-08-17 조회 5,879
13-08-17 조회 4,099
13-07-11 조회 5,420
13-07-11 조회 4,355
13-07-08 조회 3,939
13-07-04 조회 4,157
13-07-04 조회 4,050
13-07-04 조회 3,938
13-07-03 조회 5,856
13-07-01 조회 3,693
13-07-01 조회 3,627
13-07-01 조회 4,495
13-06-21 조회 6,218
13-06-14 조회 4,784
13-06-11 조회 3,640
13-06-06 조회 5,357
13-06-05 조회 4,096
13-05-11 조회 4,820
13-05-10 조회 4,383
13-05-10 조회 4,619
13-05-10 조회 3,995
13-05-08 조회 4,351
13-05-08 조회 3,613
13-05-08 조회 4,031
13-05-08 조회 5,205
13-04-05 조회 6,000
13-03-31 조회 5,609
13-03-24 조회 3,945
13-03-24 조회 6,082
13-03-23 조회 3,624
13-03-21 조회 3,708
13-03-20 조회 3,731
13-03-20 조회 4,211
13-03-20 조회 3,701
13-03-20 조회 3,844
13-03-20 조회 6,022
13-03-20 조회 4,004
13-03-20 조회 4,707
13-03-19 조회 5,673
13-03-14 조회 3,792
13-03-14 조회 4,201
13-03-14 조회 4,482
13-03-08 조회 4,082
13-03-03 조회 4,515
13-02-24 조회 4,934
13-02-21 조회 4,682
13-02-19 조회 4,584