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

· 2014-08-03 (일) 16:26:22 · 5414 · 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건
+
제목 글쓴이 날짜 조회
16-06-11 조회 2,826
16-02-15 조회 3,123
16-02-02 조회 2,798
16-01-25 조회 2,419
16-01-18 조회 2,511
16-01-08 조회 2,446
16-01-07 조회 2,491
16-01-05 조회 2,491
16-01-05 조회 2,776
16-01-05 조회 2,614
16-01-05 조회 2,675
16-01-04 조회 2,462
16-01-04 조회 2,568
16-01-04 조회 2,521
16-01-04 조회 2,439
15-12-30 조회 2,699
15-12-24 조회 2,537
15-12-24 조회 2,572
15-12-24 조회 2,599
15-12-24 조회 2,554
15-12-23 조회 2,523
15-12-16 조회 2,638
15-12-15 조회 2,723
15-12-11 조회 2,751
15-12-10 조회 2,701
15-11-09 조회 2,683
15-11-09 조회 2,808
15-10-06 조회 3,174
15-10-02 조회 3,030
15-05-29 조회 4,370
15-02-02 조회 4,148
15-01-18 조회 4,080
14-10-25 조회 8,148
14-10-25 조회 4,980
14-10-22 조회 6,960
14-10-22 조회 4,722
14-10-22 조회 4,654
14-10-18 조회 5,409
14-10-17 조회 5,775
14-10-17 조회 5,199
14-10-17 조회 8,647
14-10-17 조회 6,182
14-10-13 조회 4,049
14-10-13 조회 4,270
14-10-07 조회 6,019
14-09-24 조회 3,801
14-09-23 조회 3,881
14-09-22 조회 4,639
14-09-22 조회 5,870
14-09-22 조회 3,884
14-09-22 조회 3,525
14-09-21 조회 4,055
14-09-21 조회 3,646
14-09-20 조회 3,628
14-09-20 조회 3,568
14-09-20 조회 3,724
14-09-19 조회 3,606
14-09-19 조회 3,768
14-09-19 조회 3,638
14-09-19 조회 3,965
14-09-19 조회 3,735
14-09-19 조회 3,664
14-09-19 조회 3,844
14-09-19 조회 3,603
14-09-19 조회 3,598
14-09-19 조회 3,649
14-09-18 조회 3,644
14-09-18 조회 3,689
14-09-18 조회 3,850
14-09-18 조회 3,846
14-09-18 조회 3,875
14-09-18 조회 4,642
14-09-18 조회 5,239
14-09-18 조회 5,156
14-09-18 조회 3,953
14-09-18 조회 4,478
14-09-18 조회 4,102
14-08-30 조회 5,221
14-08-06 조회 5,841
14-08-06 조회 5,453
14-08-03 조회 4,931
14-06-12 조회 5,210
14-05-11 조회 3,572
14-05-11 조회 4,365
14-05-11 조회 4,459
14-05-09 조회 1.2만
14-05-01 조회 4,775
14-03-30 조회 4,306
14-03-23 조회 7,790
14-02-12 조회 3,696
13-10-29 조회 7,589
13-10-28 조회 8,516
13-09-29 조회 6,523
13-09-29 조회 4,160
13-07-23 조회 4,835
13-07-23 조회 1.2만
13-07-14 조회 4,606
13-07-14 조회 4,894
13-07-14 조회 5,924
13-07-14 조회 5,046