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

    startxref entries

    kingaling

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

       

      %PDF-1.5

      %4 extended chars were here

      26 0 obj

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

      endobj

       

      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)

       

      endstream

      endobj

      startxref

      0

      %%EOF

       

      The rest of the PDF follows.

       

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

       

      startxref

      116

      %%EOF

       

      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

              "

              startxref

              0                    %Dummy cross-reference table offset

              % % EOF

              "

               

              Guess I answered my own question