[SCM] exiv2 packaging branch, master, updated. debian/0.25-3.1-3734-gdcbc29a

Maximiliano Curia maxy at moszumanska.debian.org
Thu Jul 13 17:42:29 UTC 2017


Gitweb-URL: http://git.debian.org/?p=pkg-kde/kde-extras/exiv2.git;a=commitdiff;h=3c1d3d9

The following commit has been merged in the master branch:
commit 3c1d3d993be1706a14dcb274e735a9817092a6e9
Author: vog <vog at notjusthosting.com>
Date:   Mon Jun 27 16:39:07 2011 +0000

    #689: Added support for native DOS EPS previews
---
 src/epsimage.cpp                                   |  27 ++++++++++++++++++---
 src/preview.cpp                                    |   4 +++
 ...ps-flat_oodraw_ai-cs5-lev3-preview-preview1.tif | Bin 0 -> 37902 bytes
 ...s-flat_oodraw_ai-cs5-lev3-preview-preview2.jpg} | Bin
 .../eps-flat_photoshop-e9-win-doseps-preview1.tif  | Bin 0 -> 23782 bytes
 test/data/eps/eps-test.out                         |   4 ++-
 6 files changed, 31 insertions(+), 4 deletions(-)

diff --git a/src/epsimage.cpp b/src/epsimage.cpp
index 4278510..015c0e9 100644
--- a/src/epsimage.cpp
+++ b/src/epsimage.cpp
@@ -403,7 +403,7 @@ namespace {
     }
 
     //! Unified implementation of reading and writing EPS metadata
-    static void readWriteEpsMetadata(BasicIo& io, std::string& xmpPacket, bool write)
+    static void readWriteEpsMetadata(BasicIo& io, std::string& xmpPacket, NativePreviewList& nativePreviews, bool write)
     {
         // open input file
         if (io.open() != 0) {
@@ -721,6 +721,27 @@ namespace {
         if (!write) {
             // copy XMP metadata
             xmpPacket.assign(reinterpret_cast<const char*>(data + xmpPos), xmpSize);
+
+            // native previews
+            nativePreviews.clear();
+            if (sizeWmf != 0) {
+                NativePreview nativePreview;
+                nativePreview.position_ = static_cast<long>(posWmf);
+                nativePreview.size_ = sizeWmf;
+                nativePreview.width_ = 0;
+                nativePreview.height_ = 0;
+                nativePreview.mimeType_ = "image/x-wmf";
+                nativePreviews.push_back(nativePreview);
+            }
+            if (sizeTiff) {
+                NativePreview nativePreview;
+                nativePreview.position_ = static_cast<long>(posTiff);
+                nativePreview.size_ = sizeTiff;
+                nativePreview.width_ = 0;
+                nativePreview.height_ = 0;
+                nativePreview.mimeType_ = "image/tiff";
+                nativePreviews.push_back(nativePreview);
+            }
         } else {
             const bool useExistingEmbedding = (xmpPos != posEndEps && removableEmbeddings.empty());
 
@@ -1001,7 +1022,7 @@ namespace Exiv2
         #endif
 
         // read metadata
-        readWriteEpsMetadata(*io_, xmpPacket_, /* write = */ false);
+        readWriteEpsMetadata(*io_, xmpPacket_, nativePreviews_, /* write = */ false);
 
         // decode XMP metadata
         if (xmpPacket_.size() > 0 && XmpParser::decode(xmpData_, xmpPacket_) > 1) {
@@ -1031,7 +1052,7 @@ namespace Exiv2
         }
 
         // write metadata
-        readWriteEpsMetadata(*io_, xmpPacket_, /* write = */ true);
+        readWriteEpsMetadata(*io_, xmpPacket_, nativePreviews_, /* write = */ true);
 
         #ifdef DEBUG
         EXV_DEBUG << "Exiv2::EpsImage::writeMetadata: Finished writing EPS file " << io_->path() << "
";
diff --git a/src/preview.cpp b/src/preview.cpp
index 9d16997..1093ac1 100644
--- a/src/preview.cpp
+++ b/src/preview.cpp
@@ -420,6 +420,10 @@ namespace {
         prop.mimeType_ = nativePreview_.mimeType_;
         if (nativePreview_.mimeType_ == "image/jpeg") {
             prop.extension_ = ".jpg";
+        } else if (nativePreview_.mimeType_ == "image/tiff") {
+            prop.extension_ = ".tif";
+        } else if (nativePreview_.mimeType_ == "image/x-wmf") {
+            prop.extension_ = ".wmf";
         } else {
 #ifndef SUPPRESS_WARNINGS
             EXV_WARNING << "Unknown native preview format: " << nativePreview_.mimeType_ << "
";
diff --git a/test/data/eps/eps-flat_oodraw_ai-cs5-lev3-preview-preview1.tif b/test/data/eps/eps-flat_oodraw_ai-cs5-lev3-preview-preview1.tif
new file mode 100644
index 0000000..29128b4
Binary files /dev/null and b/test/data/eps/eps-flat_oodraw_ai-cs5-lev3-preview-preview1.tif differ
diff --git a/test/data/eps/eps-flat_oodraw_ai-cs5-lev3-preview-preview1.jpg b/test/data/eps/eps-flat_oodraw_ai-cs5-lev3-preview-preview2.jpg
similarity index 100%
rename from test/data/eps/eps-flat_oodraw_ai-cs5-lev3-preview-preview1.jpg
rename to test/data/eps/eps-flat_oodraw_ai-cs5-lev3-preview-preview2.jpg
diff --git a/test/data/eps/eps-flat_photoshop-e9-win-doseps-preview1.tif b/test/data/eps/eps-flat_photoshop-e9-win-doseps-preview1.tif
new file mode 100644
index 0000000..08f46a2
Binary files /dev/null and b/test/data/eps/eps-flat_photoshop-e9-win-doseps-preview1.tif differ
diff --git a/test/data/eps/eps-test.out b/test/data/eps/eps-test.out
index 1b11eb3..9a369db 100644
--- a/test/data/eps/eps-test.out
+++ b/test/data/eps/eps-test.out
@@ -1917,7 +1917,8 @@ Xmp.xmpMM.History[3]/stEvt:changed           XmpText     1  /
 Exit code: 253
 
 Command: exiv2 -pp eps-flat_oodraw_ai-cs5-lev3-preview.eps
-Preview 1: image/jpeg, 256x208 pixels, 3166 bytes
+Preview 1: image/tiff, 213x170 pixels, 37902 bytes
+Preview 2: image/jpeg, 256x208 pixels, 3166 bytes
 Exit code: 0
 
 Command: exiv2 -f -ep eps-flat_oodraw_ai-cs5-lev3-preview.eps
@@ -2882,6 +2883,7 @@ Xmp.photoshop.ICCProfile                     XmpText    17  sRGB IEC61966-2.1
 Exit code: 253
 
 Command: exiv2 -pp eps-flat_photoshop-e9-win-doseps.eps
+Preview 1: image/tiff, 454x340 pixels, 23782 bytes
 Exit code: 0
 
 Command: exiv2 -f -ep eps-flat_photoshop-e9-win-doseps.eps

-- 
exiv2 packaging



More information about the pkg-kde-commits mailing list