Base64 인코딩 이미지
-
09-06-2019 - |
문제
저는 Firefox/IE용 개방형 검색 추가 기능을 구축 중이고 이미지는 Base64로 인코딩되어야 합니다. 그러면 내가 가지고 있는 파비콘을 Base 64로 인코딩하려면 어떻게 해야 합니까?
나는 PHP에만 익숙하다
해결책
내가 기억하는 한 이미지 데이터에 대한 xml 요소가 있습니다.이것을 사용할 수 있습니다 웹사이트 파일을 인코딩하려면(업로드 필드 사용)그런 다음 데이터를 복사하여 XML 요소에 붙여넣으면 됩니다.
PHP를 사용하여 다음과 같이 할 수도 있습니다:
<?php
$im = file_get_contents('filename.gif');
$imdata = base64_encode($im);
?>
사용 Mozilla 가이드 OpenSearch 플러그인 생성에 대한 도움말을 확인하세요.예를 들어 icon 요소는 다음과 같이 사용됩니다.
<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'));
나의 시놉시스 RFC2397 이다:
base64로 인코딩된 이미지 데이터를 얻었으면 "라는 접두사가 붙은 <Image></Image> 태그 안에 넣으세요.data:{mimetype};base64,
" 이는 괄호 안에 접두사를 붙이는 것과 비슷합니다. url()
CSS 정의 또는 인용된 값 src
의 속성 img
[X]HTML에 태그를 추가하세요.다음을 입력하여 Firefox에서 데이터 URL을 테스트할 수 있습니다. data:image/...
URL 필드에 줄을 입력하고 Enter 키를 누르면 이미지가 표시됩니다.
실제로 인코딩하기 위해서는 Base64가 무언가를 인코딩하는 방법이 너무 많기 때문에 PHP뿐만 아니라 모든 옵션을 살펴볼 필요가 있다고 생각합니다.
- 사용
base64
명령줄 도구.이는 GNU coreutils(v6+)의 일부이며 어떤 경우에도 거의 기본값입니다. 시그윈, 엘나N유엑스, GnuWin32 설치했지만 시도한 BSD는 아닙니다.문제:$ base64 imagefile.ico > imagefile.base64.txt
- 다음과 같이 base64로 변환하는 옵션이 있는 도구를 사용하세요. 메모장++ 플러그인->MIME 도구->base64 인코딩 아래에 기능이 있습니다.
- 파일을 자신에게 이메일로 보내고 원본 이메일 내용을 확인하고 복사하여 붙여넣으세요.
- 사용 편물 형태.
MIME 유형에 대한 참고 사항:다음 중 하나를 사용하는 것이 좋습니다. 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).도움이 되었기를 바랍니다!