Base64 인코딩 이미지
Firefox / IE 용 개방형 검색 추가 기능을 구축 중이며 이미지는 Base64로 인코딩되어야하므로 내가 가지고있는 파비콘을 Base 64로 인코딩하려면 어떻게해야합니까?
나는 PHP에만 익숙하다
내가 기억하는 한 이미지 데이터에 대한 xml 요소가 있습니다. 이 웹 사이트 를 사용하여 파일을 인코딩 할 수 있습니다 (업로드 필드 사용). 그런 다음 데이터를 복사하여 XML 요소에 붙여 넣으십시오.
PHP를 사용하여 다음과 같이 할 수도 있습니다.
<?php
$im = file_get_contents('filename.gif');
$imdata = base64_encode($im);
?>
OpenSearch 플러그인 생성에 대한 도움말은 Mozilla의 가이드 를 사용하십시오 . 예를 들어, 아이콘 요소는 다음과 같이 사용됩니다.
<img width="16" height="16">data:image/x-icon;base64,imageData</>
imageData
base64 데이터는 어디에 있습니까 ?
$encoded_data = base64_encode(file_get_contents('path-to-your-image.jpg'));
base64로 인코딩 된 이미지 데이터를 가져 오면 " data:{mimetype};base64,
" 접두사가 붙은 <Image> </ Image> 태그 안에 넣습니다. 이것은 url()
CSS 정의 의 괄호 또는 src
속성의 따옴표로 묶인 값에서 수행되는 접두사와 유사 합니다. img
[X] HTML의 태그입니다. data:image/...
URL 필드에 줄을 입력하고 Enter 키를 눌러 firefox에서 데이터 URL을 테스트 할 수 있습니다 . 그러면 이미지가 표시됩니다.
실제로 인코딩하려면 PHP뿐만 아니라 모든 옵션을 검토해야한다고 생각합니다. base64로 인코딩하는 방법은 매우 다양하기 때문입니다.
base64
명령 줄 도구를 사용합니다 . 그것은 GNU coreutils (v6 +)의 일부이며 Cygwin , L i n u x , GnuWin32 설치 에서 거의 기본값 이지만 내가 시도한 BSD는 아닙니다. 발행물:$ base64 imagefile.ico > imagefile.base64.txt
- 플러그인-> MIME 도구-> base64 인코딩에 기능이있는 Notepad ++ 와 같이 base64로 변환하는 옵션이있는 도구를 사용하십시오.
- 자신에게 파일을 이메일로 보내고 원시 이메일 내용을보고 복사하여 붙여 넣습니다.
- 웹 양식을 사용하십시오 .
마임 유형에 대한주의 사항 : 당신이 중 하나를 사용하여 선호 image/png
image/jpeg
또는 image/gif
내가 같이 찾을 수없는 인기를 image/x-icon
. 그럴까요 image/vnd.microsoft.icon
? 또한 다른 형식은 훨씬 더 짧습니다.
265 바이트와 1150 바이트 비교 :
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAVFBMVEWcZjTcViTMuqT8/vzcYjTkhhTkljT87tz03sRkZmS8mnT03tT89vTsvoTk1sz86uTkekzkjmzkwpT01rTsmnzsplTUwqz89uy0jmzsrmTknkT0zqT3X4fRAAAAbklEQVR4XnXOVw6FIBBAUafQsZfX9r/PB8JoTPT+QE4o01AtMoS8HkALcH8BGmGIAvaXLw0wCqxKz0Q9w1LBfFSiJBzljVerlbYhlBO4dZHM/F3llybncbIC6N+70Q7OlUm7DdO+gKs9gyRwdgd/LOcGXHzLN5gAAAAASUVORK5CYII=
data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAD/////ZmZm/2ZmZv9mZmb/ZmZm/2ZmZv9mZmb/ZmZm/2ZmZv9mZmb/ZmZm/2ZmZv9mZmb/ZmZm/2ZmZv///////////2ZmZv9mZmb/ZmZm/2ZmZv9mZmb/ZmZm/2ZmZv9mZmb/ZmZm/2ZmZv9mZmb/ZmZm/2ZmZv9mZmb///////////9mZmb/ZmZm//////////////////////////////////////////////////////9mZmb/ZmZm////////////ZmZm/2ZmZv//////ZmZm/2ZmZv9mZmb/ZmZm/2ZmZv9mZmb/ZmZm/2ZmZv//////ZmZm/2ZmZv///////////2ZmZv9mZmb//////2ZmZv9mZmb/ZmZm/2ZmZv9mZmb/ZmZm/2ZmZv9mZmb//////2ZmZv9mZmb///////////9mZmb/ZmZm////////////////////////////8fX4/8nW5P+twtb/oLjP//////9mZmb/ZmZm////////////////////////////oLjP/3eZu/9pj7T/M2aZ/zNmmf8zZpn/M2aZ/zNmmf///////////////////////////////////////////zNmmf8zZpn/M2aZ/zNmmf8zZpn/d5m7/6C4z/+WwuH/wN/3//////////////////////////////////////+guM//rcLW/8nW5P/x9fj//////9/v+/+w1/X/QZ7m/1Cm6P//////////////////////////////////////////////////////7/f9/4C+7v8xluT/EYbg/zGW5P/A3/f/0933/9Pd9//////////////////////////////////f7/v/YK7q/xGG4P8RhuD/MZbk/7DX9f//////4uj6/zJh2/8yYdv/8PT8////////////////////////////UKbo/xGG4P8xluT/sNf1////////////4uj6/zJh2/8jVtj/e5ro/////////////////////////////////8Df9/+gz/P/////////////////8PT8/0944P8jVtj/bI7l/////////////////////////////////////////////////////////////////2yO5f8jVtj/T3jg//D0/P///////////////////////////////////////////////////////////3ua6P8jVtj/MmHb/+Lo+v////////////////////////////////////////////////////////////D0/P8yYdv/I1bY/9Pd9///////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
다음 예를 확인하십시오.
<?php
// First get your image
$image = 'path-to-your-picture/image.jpg';
$picture = base64_encode(file_get_contents($image));
echo '<img width="100" height="100" src="data:image/jpg;base64,'. $picture .'" />'
?>
Google 이이 솔루션 (base64_encode)을 안내했습니다. 도움이 되었기를 바랍니다!
참고 URL : https://stackoverflow.com/questions/35879/base64-encoding-image
'programing' 카테고리의 다른 글
Swift를 웹 프로그래밍 언어로 사용할 수 있습니까? (0) | 2020.12.01 |
---|---|
Rubocop에 특정 디렉터리 또는 파일을 무시하도록 지시하는 방법 (0) | 2020.12.01 |
다른 스레드에서 TextBox에 쓰는 중입니까? (0) | 2020.12.01 |
Visual Studio 셸 (독립 실행 형 셸)의 장점은 무엇입니까? (0) | 2020.12.01 |
하위 모듈을 만들지 않고 모델을 하위 폴더로 구조화하는 우아한 방법 (0) | 2020.12.01 |