#1199 removed convenience converstion for iptc to xmp, apps should handle it directly since webp doesnt support iptc.

v0.27.3
draekko 9 years ago
parent ce14557d07
commit 6f7b3ba8f7

@ -80,6 +80,7 @@ namespace Exiv2 {
@brief Not supported. Calling this function will throw an Error(32). @brief Not supported. Calling this function will throw an Error(32).
*/ */
void setComment(const std::string& comment); void setComment(const std::string& comment);
void setIptcData(const IptcData& /*iptcData*/);
//! @name Accessors //! @name Accessors
//@{ //@{

@ -113,7 +113,7 @@ namespace {
{ ImageType::crw, newCrwInstance, isCrwType, amReadWrite, amNone, amNone, amReadWrite }, { ImageType::crw, newCrwInstance, isCrwType, amReadWrite, amNone, amNone, amReadWrite },
{ ImageType::mrw, newMrwInstance, isMrwType, amRead, amRead, amRead, amNone }, { ImageType::mrw, newMrwInstance, isMrwType, amRead, amRead, amRead, amNone },
{ ImageType::tiff, newTiffInstance, isTiffType, amReadWrite, amReadWrite, amReadWrite, amNone }, { ImageType::tiff, newTiffInstance, isTiffType, amReadWrite, amReadWrite, amReadWrite, amNone },
{ ImageType::webp, newWebPInstance, isWebPType, amReadWrite, amReadWrite, amReadWrite, amNone }, { ImageType::webp, newWebPInstance, isWebPType, amReadWrite, amNone, amReadWrite, amNone },
{ ImageType::dng, newTiffInstance, isTiffType, amReadWrite, amReadWrite, amReadWrite, amNone }, { ImageType::dng, newTiffInstance, isTiffType, amReadWrite, amReadWrite, amReadWrite, amNone },
{ ImageType::nef, newTiffInstance, isTiffType, amReadWrite, amReadWrite, amReadWrite, amNone }, { ImageType::nef, newTiffInstance, isTiffType, amReadWrite, amReadWrite, amReadWrite, amNone },
{ ImageType::pef, newTiffInstance, isTiffType, amReadWrite, amReadWrite, amReadWrite, amNone }, { ImageType::pef, newTiffInstance, isTiffType, amReadWrite, amReadWrite, amReadWrite, amNone },

@ -75,6 +75,12 @@ namespace Exiv2 {
/* =========================================== */ /* =========================================== */
void WebPImage::setIptcData(const IptcData& /*iptcData*/)
{
// not supported
throw(Error(32, "IPTC metadata", "WebP"));
}
void WebPImage::setComment(const std::string& /*comment*/) void WebPImage::setComment(const std::string& /*comment*/)
{ {
// not supported // not supported
@ -138,10 +144,6 @@ namespace Exiv2 {
has_icc = true; has_icc = true;
} }
if (iptcData_.count() > 0) {
copyIptcToXmp(iptcData_, xmpData_);
}
if (exifData_.count() > 0) { if (exifData_.count() > 0) {
ExifParser::encode(blob, littleEndian, exifData_); ExifParser::encode(blob, littleEndian, exifData_);
if (blob.size() > 0) { if (blob.size() > 0) {
@ -150,11 +152,6 @@ namespace Exiv2 {
} }
if (xmpData_.count() > 0) { if (xmpData_.count() > 0) {
if (iptcData_.count() == 0) {
moveXmpToIptc(xmpData_, iptcData_);
iptcData_.clear();
}
XmpParser::encode(xmpPacket_, xmpData_, XmpParser::encode(xmpPacket_, xmpData_,
XmpParser::useCompactFormat | XmpParser::useCompactFormat |
XmpParser::omitAllFormatting); XmpParser::omitAllFormatting);
@ -693,7 +690,6 @@ namespace Exiv2 {
std::cout << "Display Hex Dump [size:" << (unsigned long)size << "]" << std::endl; std::cout << "Display Hex Dump [size:" << (unsigned long)size << "]" << std::endl;
std::cout << Internal::binaryToHex(rawExifData, size); std::cout << Internal::binaryToHex(rawExifData, size);
#endif #endif
moveXmpToIptc(xmpData_, iptcData_);
} }
} else { } else {
io_->seek(size, BasicIo::cur); io_->seek(size, BasicIo::cur);

Loading…
Cancel
Save