어떻게 추가하 exif 데이터를 이미지?
-
04-07-2019 - |
문제
우리의 사이트에서,우리는 다량의 사진을 업로드한 다양한 소스에서입니다.
유지하기 위해서는 파일 크기의 아래,우리는 모두 제거 exif 데이터 를 사용하여 소스에서 mogrify:
mogrify -strip image.jpg
우리가 무엇을 할 수 있는 삽입하는 몇 가지 기본적인 exif 데이터(저작권 Initrode,etc.)에 다시는 이는 새로운"깨끗하게"이미지,그러나 나는 찾을 수 없는 것에서 아무것도 문는 것을 인정하여 이 상을 드립니다.
는 사람의 어떤 경험을 하는 이?
할 수 있는 경우에 없을 통해 수행 imagemagick,PHP-기반 솔루션이 될 것이다 최적화 할 수 있습니다.
감사합니다.
해결책
특히 많은 수의 이미지가있는 경우 많은 공간을 절약 할 수 있습니다 ..
text.txt에 다음을 추가하십시오 (IPTC 태그 형식에서 가져온 IPTC 태그 형식 여기):
2#110#Credit="My Company"
2#05#Object Name="THE_OBJECT_NAME"
2#55#Date Created="2011-02-03 12:45"
2#80#By-line="BY-LINE?"
2#110#Credit="The CREDIT"
2#115#Source="SOURCE"
2#116#Copyright Notice="THE COPYRIGHT"
2#118#Contact="THE CONTACT"
2#120#Caption="AKA Title"
이미지에서 기존의 모든 exif 데이터를 제거하십시오
mogrify -strip image.jpg
이미지에 크레딧을 추가하십시오
mogrify -profile 8BIMTEXT:text.txt image.jpg
다른 팁
exiftool 당신과 정확히 일치하는 것 같습니다.
나는 그것을 시도하지 않았지만 이제는 배터리가 죽은 후 날짜를 재설정하는 것을 잊었 기 때문에 01/01/2074로 표시된 모든 신혼 여행 사진을 고치려고 유혹을 받았습니다.
기 PHP Exif 라이브러리 는 어떻게 해야 당신이 필요합니다.
PHP Exif 라이브러리(PEL)할 완벽하게 조작 Exif(교환 이미지 파일 포맷)데이터.이 데이터는 디지털 카메라에 위치 자신의 이미지와 같은 날짜와 시간 셔터 속도,ISO 값 그래서 니다.
를 사용하여 화소 중 하나,완전히 수정 Exif 데이터,의미는 그것을 모두 할 수 있습 읽기와 쓰기.완전히 새로운 Exif 데이터 수 있습 또한 추가될 이미지입니다.PEL 은 완전히 작성된 PHP 에 따라 아무것도를 제외하고 표준 설치 PHP 버전 5.PEL 가 호스팅 SourceForge.
리눅스가 있는 프로그램이라고 jhead.그것은 추가할 수 있는 최소한의 exif 헤더와 명령줄은 다음과 같습니다:
jhead-mkexif img.jpg
EXIF 정보를 제거하여 많은 공간을 얻을 수 있을지 의심 스럽습니다 ...
어쨌든, 나는 틀릴 수 있지만 Exif 메타 데이터는 기술적 (및 상황에 맞는) 정보를 저장하는 데 더 많은 속입니다. 저작권과 같은 경우 대신 IPTC를 사용해야합니다.
그것은 imagemagick과 함께 당신이 할 수있는 일입니다. ImageMagick을 사용하여 JPEG에 IPTC 데이터를 작성하십시오.
당신은 이것을 사용하여 PHP에서 직접 할 수 있습니다 펠 도서관. 기존 엑시시 헤더를 덮어 쓰면이 작업을 수행 할 수 있습니다.
// Load image data
$data = new PelDataWindow(file_get_contents('IMAGE PATH'));
// Prepare image data
$jpeg = $file = new PelJpeg();
$jpeg->load($data);
// Create new EXIF-headers, overwriting any existing ones (when writing to disk)
$exif = new PelExif();
$jpeg->setExif($exif);
$tiff = new PelTiff();
$exif->setTiff($tiff);
// Create Ifd-data that will hold EXIF-tags
$ifd0 = new PelIfd(PelIfd::IFD0);
$tiff->setIfd($ifd0);
// Create EXIF-data for copyright
$make = new PelEntryAscii(PelTag::COPYRIGHT, '2008-2017 Conroy');
$ifd0->addEntry($make);
// Add more EXIF-data...
// Save to disk
$file->saveFile('IMAGE.jpg');
지원되는 모든 exif-data (peltag)의 전체 목록을 찾을 수 있습니다. Pel Docs에서.