WEB

PNG Hack 추가했습니다.

GIF를 사랑해 주려고 했지만;
이래저래 PNG 쓸 일이 생기는 것 같아서, 생각난 김에 Hack추가했어요.
이걸로.
http://koivi.com/ie-png-transparency/

간단하게 설명하자면
링크 하단에 있는 Source code를 복사해서 replacePngTags.php라는 파일을 만들어서 원하는 위치에 넣고,
적용할 페이지 상단에 아래 코드 추가.

<?php ob_start(); ?>

적용할 페이지 하단에 아래 코드 또 추가.

<?php
    include_once 'replacePngTags.php';
    echo replacePngTags(ob_get_clean());
?>

(아까 올린 replacePngTags.php 파일의 경로를 유의하면서 …)
끝~

PNG파일이 있는 경우 투명한 spacer.png파일로 대체해 버리고 background로 해당 파일을 보여주는 방식이네용.

spacer.png를 만들어 넣지 않을 경우 이미지가 깨지는 것이 겹쳐서 보여요.
spacer.png는 1×1정도로 투명 png로 만들어서 올리고.
경로가 맞지 않으면 이미지가 깨진 것이 겹쳐서 보이니까 replacePngTags.php 파일의 57번째 줄

function replacePngTags($x,$img_path='/경로',

여기를 고쳐주면 된다고 합니다. (땡큐 태영!)

[su_note]Update:
Background에만 적용된다는 단점이 있고.. 기존에 png로 img src로 넣으면서 이미지 사이즈를 지정하지 않은 것들에 문제가 생겨서 Hack을 제거하였습니다~~[/su_note]


"PNG Hack 추가했습니다."에 대한 응답 : 24개

  1. 음, 제가 쓰는 방법도 8에서만 된다고 써있다고 하는데 전 24로 저장했는데 되는 것 같더라구요.
    PNG8은 gif와 다를게 없는 것 같던데…
    혹시 24까지 지원하는 좀 더 간단하고 MT에서 적용시켜 보신 분이 있다면 경험담; 부탁드릴게요~

  2. 제 기억이 맞는다면 css에 있는 background는 지원을 하지 않고 인라인스타일만 지원한다던지 하는 문제가 있었던거 같습니다.
    전 다 귀찮아서 hack없이 걍 사용중 :)

  3. 저두 그냥 다시 뺄까여;;
    그냥.. CDK 걸긴 걸어야겠는데, 원래 걸고자 하는 버전이 저게 아니었는데, 저게 튀어나오길래 나온김에 구석으로 달아줬어요 ㅎㅎㅎ

  4. MT 가 문제가 아니였고 PNG 이미지가 BACKGROUND에 들어가냐 아님 그냥 IMG 로 들어가냐에따라 틀린거였음. 내가 적용하려고 했던 부분은 모두 BACKGROUND로 깔린 PNG였기에 적용이 안되었던거였어요. 일반 IMG 테그로 삽입한 PNG는 모두 정상적으로 작동. (이 이야기도 예전에 들었었던거 같은데 기억력이 붕어라;;)
    아직 IMG, BACKGROUND 에 모두 PNG핵이 적용되는건 없나봐요.
    PNG 핵.. GG쳤음.

  5. PNG 의 알파채널(투명도값을가지는 채널이라고 생각하시면 됩니다) 을 I.E 에서 제대로 렌더링 하지 못하는 문제를 해결하기 위한 핵입니다 :)

  6. 하룻밤 사이에 그라바타 사진이 바뀌었구료;;
    놀러갔을때 찍은 사진인듯 하구료;;
    난… 예비군 훈련 받으러.. 슈웅=3=3

  7. 강혜정 사진이 너무 맘에 들어서 계속 하고 싶은데.. 혹시나 내 얼굴로 오해하는 엄청난 일이 생길까봐 -_-a
    이제 얼굴로 밀고 나가는 솔직한 블로깅을 해보기로 했오..
    현석님 축하~~~ 드뎌 등록하셨군요~ ㅋㅋ

  8. 쿠키님~ 질문이 있는데요. 제가 플러그인으로 coolcode를 사용중인데. 이녀석이 스페이스를 잡아먹는건지, 워드프레스가 잡아먹는건지 암튼 코드안에 스페이스가 날라가 버리는데요. 쿠키님이 사용하는 하이라이팅 플러그인은 뭔가요?

  9. 백그라운드 빼고 적용안되는 것은 그냥 넘어가고 사용하고 있었는데..
    예전 글들을 둘러보니, png로 attach하고 사이즈 지정을 안한 그림들은 다 1px * 1px로 보여줘서..
    HACK 빼버렸어요 T_T) 엉엉

답글 남기기