fixed EpsImage to handle %%PageTrailer and %%Trailer properly, adjusted test suite

This commit is contained in:
vog
2011-07-12 17:19:43 +00:00
parent c62fa03a86
commit 8c6d9fe2c2
11 changed files with 113 additions and 11 deletions
@@ -0,0 +1,7 @@
%!PS-Adobe-3.0 EPSF-3.0
%%BoundingBox: 5 5 105 105
10 setlinewidth
10 10 moveto
0 90 rlineto 90 0 rlineto 0 -90 rlineto closepath
stroke
%%Trailer
@@ -0,0 +1,71 @@
%!PS-Adobe-3.0 EPSF-3.0
%%BoundingBox: 5 5 105 105
%%LanguageLevel: 2
%ADO_ContainsXMP: MainFirst
%%Pages: 1
%Exiv2Version: _Exiv2Version_
%Exiv2Website: http://www.exiv2.org/
%%EndComments
%%Page: 1 1
%%EndPageComments
%%BeginPageSetup
%Exiv2BeginXMP: Before %%EndPageSetup
/currentdistillerparams where
{pop currentdistillerparams /CoreDistVersion get 5000 lt} {true} ifelse
{userdict /Exiv2_pdfmark /cleartomark load put
userdict /Exiv2_metafile_pdfmark {flushfile cleartomark} bind put}
{userdict /Exiv2_pdfmark /pdfmark load put
userdict /Exiv2_metafile_pdfmark {/PUT pdfmark} bind put} ifelse
[/NamespacePush Exiv2_pdfmark
[/_objdef {Exiv2_metadata_stream} /type /stream /OBJ Exiv2_pdfmark
[{Exiv2_metadata_stream} 2 dict begin
/Type /Metadata def /Subtype /XML def currentdict end /PUT Exiv2_pdfmark
[{Exiv2_metadata_stream}
currentfile 0 (% &&end XMP packet marker&&)
/SubFileDecode filter Exiv2_metafile_pdfmark
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="XMP Core 4.4.0-Exiv2">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about=""
xmlns:test="http://www.example.com/"
test:test="TEST"/>
</rdf:RDF>
</x:xmpmeta>
<?xpacket end="w"?>
% &&end XMP packet marker&&
[/Document 1 dict begin
/Metadata {Exiv2_metadata_stream} def currentdict end /BDC Exiv2_pdfmark
%Exiv2EndXMP
%%EndPageSetup
10 setlinewidth
10 10 moveto
0 90 rlineto 90 0 rlineto 0 -90 rlineto closepath
stroke
%%PageTrailer
%Exiv2BeginXMP: After %%PageTrailer
[/EMC Exiv2_pdfmark
[/NamespacePop Exiv2_pdfmark
%Exiv2EndXMP
%%Trailer
%%EOF
@@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?>
@@ -123,6 +123,7 @@ gr
0 27700 t
pom
count op_count sub {pop} repeat countdictstack dict_count sub {end} repeat b4_inc_state restore
%%PageTrailer
%Exiv2BeginXMP: After %%PageTrailer
[/EMC Exiv2_pdfmark
[/NamespacePop Exiv2_pdfmark
@@ -124,6 +124,7 @@ gr
0 27700 t
pom
count op_count sub {pop} repeat countdictstack dict_count sub {end} repeat b4_inc_state restore
%%PageTrailer
%Exiv2BeginXMP: After %%PageTrailer
[/EMC Exiv2_pdfmark
[/NamespacePop Exiv2_pdfmark
@@ -127,6 +127,7 @@ S
Q
cleartomark end end pagesave restore
showpage
%%PageTrailer
%Exiv2BeginXMP: After %%PageTrailer
[/EMC Exiv2_pdfmark
[/NamespacePop Exiv2_pdfmark
@@ -800,7 +800,7 @@ Adobe_IllustratorA_AI3 /initialize get exec
%%EndProlog
%%BeginSetup
Adobe_cshow /initialize get exec
Adobe_customcolor /initialize get exec
Adobe_customcolor /initialize get exec
Adobe_IllustratorA_AI3 /initialize get exec
%%EndSetup
%%Page: 1 1
@@ -800,7 +800,7 @@ Adobe_IllustratorA_AI3 /initialize get exec
%%EndProlog
%%BeginSetup
Adobe_cshow /initialize get exec
Adobe_customcolor /initialize get exec
Adobe_customcolor /initialize get exec
Adobe_IllustratorA_AI3 /initialize get exec
%%EndSetup
%%Page: 1 1
@@ -2748,7 +2748,7 @@ Adobe_Illustrator_AI5 /initialize get exec
databuf 2 index
3 -1 roll put
} repeat
pop
pop
} def
/getint16 {
mark true 3 -1 roll
+17
View File
@@ -151,6 +151,23 @@ Exit code: 0
Command: exiv2 -f -ex eps-flat_minimal-noeol.eps
Exit code: 0
-----> eps-flat_minimal-trailer.eps <-----
Command: exiv2 -u -pa eps-flat_minimal-trailer.eps
Exit code: 253
Command: exiv2 -f -eX eps-flat_minimal-trailer.eps
Exit code: 0
Command: exiv2 -ix eps-flat_minimal-trailer.eps
Exit code: 0
Command: (2) exiv2 -ix eps-flat_minimal-trailer.eps
Exit code: 0
Command: exiv2 -f -ex eps-flat_minimal-trailer.eps
Exit code: 0
-----> eps-flat_minimal.eps <-----
Command: exiv2 -u -pa eps-flat_minimal.eps