Side by Side Comparison

Status Strong

The raw PDF mimicks the WH LFBC PDF to a remarkable level of similarity. This was for the Preview saved Xerox scan on a 7535 Xerox WorkCentre.

Before I continue, I do have to point out that Preview reorders and renames the Objects, removes any JBIG2 encoding as well as other non PDF 1.3 supported features. Therefore, the similarity between two Preview created documents may be strongly correlated. However, I will show how for example, using a ‘forged’ pdf by Polland, the Preview saved version contains many differences.

Since the Xerox scanned documents typically do not contain the same number of Images as the WH LFBC, the numbering will eventually diverge but the overall structure will remain. In the following table, the objects are shown as they show up in the PDF and aligned to take into account the extra image objects in the WH LFBC. Note how all objects align up exactly. Not just that but the objects themselves contain the same tags.

WH LFBC
obj 4 0
obj 5 0
obj 2 0
obj 6 0
obj 20 0
obj 21 0
obj 22 0
obj 23 0
obj 24 0
obj 25 0
obj 9 0
obj 10 0
obj 14 0
obj 15 0
obj 7 0
obj 8 0
obj 18 0
obj 19 0
obj 12 0
obj 13 0
obj 16 0
obj 17 0
obj 27 0
obj 28 0
obj 26 0
obj 29 0
obj 30 0
obj 11 0
obj 3 0
obj 31 0
obj 32 0
obj 33 0
obj 34 0
obj 35 0
obj 36 0
obj 37 0
obj 38 0
obj 39 0
obj 1 0
Object Name
Contents
Length
Page 
Resources
1st Obj
Length 1st
2nd Obj
Length 2nd
3rd Obj
Length 3rd
4th Obj
Length 4th
5th bj
Length 5th
6th Obj
Length
7th Obj
Length
8th Obj
Length 8th
9th Obj
Length 9th
DeviceGray
Length
/CS2
DeviceRGB
Length
/CS1
Pages
Root
Title
Producer
Author
Subject
Creator
Creationdate
Keywords
AAPL:Keywords
Info
WH7655USDFedRotPreview
obj 4 0
obj 5 0
obj 2 0
obj 6 0
obj 12 0
obj 13 0
obj 16 0
obj 17 0
obj 9 0
obj 10 0
obj 14 0
obj 15 0
obj 7 0
obj 8 0
NA
NA
NA
NA
NA
NA
NA
NA
obj 19 0
obj 20 0
obj 18 0
obj 21 0
obj 22 0
obj 11 0
obj 3 0
obj 23 0
obj 24 0
obj 25 0
obj 26 0
obj 27 0
obj 28 0
obj 29 0
obj 30 0
obj 31 0
obj 1 0

The next step is to compare side-by-side the actual objects

obj 4 0
 Type: 
 Referencing: 5 0 R
 Contains stream

  <<
    /Length 5 0 R
    /Filter /FlateDecode
  >>
obj 4 0
 Type: 
 Referencing: 5 0 R
 Contains stream

  <<
    /Length 5 0 R
    /Filter /FlateDecode
  >>
obj 5 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '310'), (1, '\n')]

310
obj 5 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '205'), (1, '\n')]

205
obj 2 0
 Type: /Page
 Referencing: 3 0 R, 6 0 R, 4 0 R

  <<
    /Type /Page
    /Parent 3 0 R
    /Resources 6 0 R
    /Contents 4 0 R
    /MediaBox [0 0 612 792]
  >>
obj 2 0
 Type: /Page
 Referencing: 3 0 R, 6 0 R, 4 0 R

  <<
    /Type /Page
    /Parent 3 0 R
    /Resources 6 0 R
    /Contents 4 0 R
    /MediaBox [0 0 612 792]
  >>
obj 6 0
 Type: 
 Referencing: 26 0 R, 11 0 R, 20 0 R, 22 0 R, 
24 0 R, 9 0 R, 14 0 R, 7 0 R, 18 0 R, 12 0 R, 
16 0 R

  <<
    /ProcSet [ /PDF /ImageB /ImageC /ImageI ]
    /ColorSpace
      <<
        /Cs2 26 0 R
        /Cs1 11 0 R
      >>
    /XObject
      <<
        /Im7 20 0 R
        /Im8 22 0 R
        /Im9 24 0 R
        /Im2 9 0 R
        /Im4 14 0 R
        /Im1 7 0 R
        /Im6 18 0 R
        /Im3 12 0 R
        /Im5 16 0 R
      >>
  >
obj 6 0
 Type: 
 Referencing: 18 0 R, 11 0 R, 12 0 R, 16 0 R, 
 9 0 R, 14 0 R, 7 0 R

  <<
    /ProcSet [ /PDF /ImageB /ImageC /ImageI ]
    /ColorSpace
      <<
        /Cs2 18 0 R
        /Cs1 11 0 R
      >>
    /XObject
      <<
        /Im3 12 0 R
        /Im5 16 0 R
        /Im2 9 0 R
        /Im4 14 0 R
        /Im1 7 0 R
      >>
  >>
obj 20 0
 Type: /XObject
 Referencing: 21 0 R
 Contains stream

  <<
    /Length 21 0 R
    /Type /XObject
    /Subtype /Image
    /Width 34
    /Height 70
    /ImageMask true
    /BitsPerComponent 1
    /Filter /FlateDecode
  >>
obj 12 0
 Type: /XObject
 Referencing: 13 0 R
 Contains stream

  <<
    /Length 13 0 R
    /Type /XObject
    /Subtype /Image
    /Width 203
    /Height 787
    /ImageMask true
    /BitsPerComponent 1
    /Filter /FlateDecode
  >>
obj 21 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '173'), (1, '\n')]

173
obj 13 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '5913'), (1, '\n')]

5913
obj 22 0
 Type: /XObject
 Referencing: 23 0 R
 Contains stream

  <<
    /Length 23 0 R
    /Type /XObject
    /Subtype /Image
    /Width 243
    /Height 217
    /ImageMask true
    /BitsPerComponent 1
    /Filter /FlateDecode
  >>
obj 16 0
 Type: /XObject
 Referencing: 17 0 R
 Contains stream

  <<
    /Length 17 0 R
    /Type /XObject
    /Subtype /Image
    /Width 122
    /Height 278
    /ImageMask true
    /BitsPerComponent 1
    /Filter /FlateDecode
  >>
obj 23 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '671'), (1, '\n')]

671
obj 17 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '314'), (1, '\n')]

314
obj 24 0
 Type: /XObject
 Referencing: 25 0 R
 Contains stream

  <<
    /Length 25 0 R
    /Type /XObject
    /Subtype /Image
    /Width 132
    /Height 142
    /ImageMask true
    /BitsPerComponent 1
    /Filter /FlateDecode
  >>
obj 9 0
 Type: /XObject
 Referencing: 10 0 R
 Contains stream

  <<
    /Length 10 0 R
    /Type /XObject
    /Subtype /Image
    /Width 1457
    /Height 1832
    /ImageMask true
    /BitsPerComponent 1
    /Filter /FlateDecode
  >>
obj 25 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '344'), (1, '\n')]

344
obj 10 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '56397'), (1, '\n')]

56397
obj 9 0
 Type: /XObject
 Referencing: 10 0 R
 Contains stream

  <<
    /Length 10 0 R
    /Type /XObject
    /Subtype /Image
    /Width 1454
    /Height 1819
    /ImageMask true
    /BitsPerComponent 1
    /Filter /FlateDecode
  >>
obj 14 0
 Type: /XObject
 Referencing: 15 0 R
 Contains stream

  <<
    /Length 15 0 R
    /Type /XObject
    /Subtype /Image
    /Width 46
    /Height 284
    /ImageMask true
    /BitsPerComponent 1
    /Filter /FlateDecode
  >>
obj 10 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '67980'), (1, '\n')]

67980
obj 15 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '557'), (1, '\n')]

557
obj 14 0
 Type: /XObject
 Referencing: 15 0 R
 Contains stream

  <<
    /Length 15 0 R
    /Type /XObject
    /Subtype /Image
    /Width 42
    /Height 274
    /ImageMask true
    /BitsPerComponent 1
    /Filter /FlateDecode
  >>
obj 7 0
 Type: /XObject
 Referencing: 8 0 R, 11 0 R
 Contains stream

  <<
    /Length 8 0 R
    /Type /XObject
    /Subtype /Image
    /Width 1656
    /Height 1280
    /ColorSpace 11 0 R
    /BitsPerComponent 8
    /Filter /DCTDecode
  >>
obj 15 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '480'), (1, '\n')]

480
obj 8 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '238742'), (1, '\n')]

238742
obj 7 0
 Type: /XObject
 Referencing: 8 0 R, 11 0 R
 Contains stream

  <<
    /Length 8 0 R
    /Type /XObject
    /Subtype /Image
    /Width 1652
    /Height 1276
    /ColorSpace 11 0 R
    /BitsPerComponent 8
    /Filter /DCTDecode
  >>
NA
obj 8 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '299366'), (1, '\n')]

299366
NA
obj 18 0
 Type: /XObject
 Referencing: 19 0 R
 Contains stream

  <<
    /Length 19 0 R
    /Type /XObject
    /Subtype /Image
    /Width 47
    /Height 216
    /ImageMask true
    /BitsPerComponent 1
    /Filter /FlateDecode
  >>
NA
obj 19 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '436'), (1, '\n')]

436
NA
obj 12 0
 Type: /XObject
 Referencing: 13 0 R
 Contains stream

  <<
    /Length 13 0 R
    /Type /XObject
    /Subtype /Image
    /Width 199
    /Height 778
    /ImageMask true
    /BitsPerComponent 1
    /Filter /FlateDecode
  >>
NA
obj 13 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '5510'), (1, '\n')]

5510
NA
obj 16 0
 Type: /XObject
 Referencing: 17 0 R
 Contains stream

  <<
    /Length 17 0 R
    /Type /XObject
    /Subtype /Image
    /Width 123
    /Height 228
    /ImageMask true
    /BitsPerComponent 1
    /Filter /FlateDecode
  >>
NA
obj 17 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '633'), (1, '\n')]

633
NA
obj 27 0
 Type: 
 Referencing: 28 0 R
 Contains stream

  <<
    /Length 28 0 R
    /N 1
    /Alternate /DeviceGray
    /Filter /FlateDecode
  >>
obj 19 0
 Type: 
 Referencing: 20 0 R
 Contains stream

  <<
    /Length 20 0 R
    /N 1
    /Alternate /DeviceGray
    /Filter /FlateDecode
  >>
obj 28 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '2905'), (1, '\n')]

2905
obj 20 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '3323'), (1, '\n')]

3323
obj 26 0
 Type: 
 Referencing: 27 0 R
...

[ /ICCBased 27 0 R ]
obj 18 0
 Type: 
 Referencing: 19 0 R
...

[ /ICCBased 19 0 R ]
obj 29 0
 Type: 
 Referencing: 30 0 R
 Contains stream

  <<
    /Length 30 0 R
    /N 3
    /Alternate /DeviceRGB
    /Filter /FlateDecode
  >>
obj 21 0
 Type: 
 Referencing: 22 0 R
 Contains stream

  <<
    /Length 22 0 R
    /N 3
    /Alternate /DeviceRGB
    /Filter /FlateDecode
  >>
obj 30 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '2615'), (1, '\n')]

2615
obj 22 0
 Type: 
 Referencing: 

 [(1, '\n'), (3, '2612'), (1, '\n')]

2612
obj 11 0
 Type: 
 Referencing: 29 0 R
...
[ /ICCBased 29 0 R ]
obj 11 0
 Type: 
 Referencing: 21 0 R
...
[ /ICCBased 21 0 R ]
obj 3 0
 Type: /Pages
 Referencing: 2 0 R

  <<
    /Type /Pages
    /MediaBox [0 0 612 792]
    /Count 1
    /Kids [ 2 0 R ]
  >>
 Type: /Pages
 Referencing: 2 0 R

  <<
    /Type /Pages
    /MediaBox [0 0 612 792]
    /Count 1
    /Kids [ 2 0 R ]
  >>
obj 31 0
 Type: /Catalog
 Referencing: 3 0 R

  <<
    /Type /Catalog
    /Pages 3 0 R
  >>
obj 23 0
 Type: /Catalog
 Referencing: 3 0 R

  <<
    /Type /Catalog
    /Pages 3 0 R
  >>
...
...
obj 1 0
 Type: 
 Referencing: 32 0 R, 34 0 R, 35 0 R, 33 0 R, 
36 0 R, 37 0 R, 37 0 R, 38 0 R, 39 0 R

  <<
    /Title 32 0 R
    /Author 34 0 R
    /Subject 35 0 R
    /Producer 33 0 R
    /Creator 36 0 R
    /CreationDate 37 0 R
    /ModDate 37 0 R
    /Keywords 38 0 R
    /AAPL:Keywords 39 0 R
  >>
obj 1 0
 Type: 
 Referencing: 24 0 R, 26 0 R, 27 0 R, 25 0 R, 
28 0 R, 29 0 R, 29 0 R, 30 0 R, 31 0 R

  <<
    /Title 24 0 R
    /Author 26 0 R
    /Subject 27 0 R
    /Producer 25 0 R
    /Creator 28 0 R
    /CreationDate 29 0 R
    /ModDate 29 0 R
    /Keywords 30 0 R
    /AAPL:Keywords 31 0 R
  >>

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s