3 Replies Latest reply on Oct 18, 2017 6:39 PM by kingaling

    startxref entries

    kingaling Level 1

      I see the following all the time and I just can't seem to find any reason for this:



      %4 extended chars were here

      26 0 obj

      <</Linearized 1/L 165618/O 28/E 160858/N 1/T 165312/H [ 540 170]>>



      39 0 obj

      <</DecodeParms<</Columns 5/Predictor 12>>/Filter/FlateDecode/ID[<7B2B288DDC9D317F7D8371774B51C538><51EF5FB138E5AC44821CEBA03B8 6B240>]/Index[26 56]/Info 25 0 R/Length 82/Prev 165313/Root 27 0 R/Size 82/Type/XRef/W[1 3 1]>>stream


      some stream data (obviously an xref stream)








      The rest of the PDF follows.


      ...and here's the end of it:






      So here's my question:

      What is the point of the first startxref statement? Obviously at offset 0 is the header comment specifying the version.

      I see this all the time and it has never made any sense to me.

        • 1. Re: startxref entries
          lrosenth Adobe Employee

          Hard to tell, but is it just an update table?

          • 2. Re: startxref entries
            kingaling Level 1

            Well the last one would be an "update" but... I don't understand the first one.
            The second one points to offset 116 which is the offset of object "39 0" so that one makes sense since object 39 is an XRef stream.
            The first one points to offset 0. There is no xref table at offset 0 so the presence of the first startxref statement makes no sense.

            • 3. Re: startxref entries
              kingaling Level 1

              OK well.... I feel dumb now. Apparently I didn't ctrl+f enough when I was ctrl+f'ing through the PDF specification.
              In Appendix F, F.2 Linearized PDF Document Structure, for linearized documents:


              Part 3: First-page cross-reference table and trailer



              0                    %Dummy cross-reference table offset

              % % EOF



              Guess I answered my own question