<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Just to summarise (for the benefit of archives and posterity), the
    following is /almost/ sufficient to achieve PDF/X-1A:2003 compliance
    using plain XeTeX.  Full compliance can be achieved using Adobe
    Acrobat. <br>
    <blockquote cite="mid:57827B7B.1010408@Rhul.Ac.Uk" type="cite"><tt>\newif
        \ifpdfxa<br>
        \pdfxatrue<br>
        <br>
        \ifpdfxa<br>
            \special {pdf: put @thispage << /ArtBox [0 0 498.89641
        708.65968] >>}<br>
            \special {pdf: put @thispage << /BleedBox [0 0
        498.89641 708.65968] >>}<br>
            \special {pdf: put @thispage << /CropBox [0 0
        498.89641 708.65968] >>}<br>
            \special {pdf: put @thispage << /MediaBox [0 0
        498.89641 708.65968] >>}<br>
            \special {pdf: put @thispage << /TrimBox [0 0
        498.89641 708.65968] >>}<br>
            \special {pdf: docinfo << /GTS_PDFXVersion
        (PDF/X-1:2001) /GTS_PDFXConformance (PDF/X-1a:2001) >>}<br>
            \special {pdf: put @catalog << /PageMode /UseNone
        /OutputIntents [ << /Info (none) /Type /OutputIntent /S
        /GTS_PDFX /OutputConditionIdentifier (Custom) /RegistryName (<a
          moz-do-not-send="true" class="moz-txt-link-freetext"
          href="http://www.color.org/"><a class="moz-txt-link-freetext" href="http://www.color.org/">http://www.color.org/</a></a>)
        >> ] >>}<br>
            \special {pdf: dest (page.1) [@thispage /XYZ @xpos @ypos
        null]}<br>
            \special {pdf: docinfo << /Title(Document
        Title)/Subject(Some
        subject)/Creator(XeTeX)/ModDate(D:yyyymmddhhmmss)/Author(Your
        Name)/Producer(XeTeX version)/Keywords(Whatever)/Trapped/False
        >>}<br>
        \fi</tt><br>
    </blockquote>
    The caveats are as follows :<br>
    <ol>
      <li>a hook will need to be inserted into <tt>\shipout</tt> to
        insert the bounding boxes on each page;</li>
      <li>the colours will need to be converted to the desired output
        profile using Adobe Acrobat;</li>
      <li>the file will need to be reduced in size with Acrobat 4+
        compatibility but with no image compression in order to convert
        it to PDF 1.3;</li>
      <li>the dimensions of the bounding boxes are for B5 in so-called
        "big points" (Postscript points) and will need to be amended for
        other page sizes;</li>
      <li><tt>\setboundingboxes</tt> will have to be called explicitly
        for the first page only.<br>
      </li>
    </ol>
    <tt>\shipout</tt> can be hooked as follows :<br>
    <tt><br>
          \def \setboundingboxes<br>
              {%<br>
                  \special {pdf: put @thispage << /ArtBox [0 0
      498.89641  708.65968] >>}%<br>
                  \special {pdf: put @thispage << /BleedBox [0 0
      498.89641  708.65968] >>}%<br>
                  \special {pdf: put @thispage << /CropBox [0 0
      498.89641  708.65968] >>}%<br>
                  \special {pdf: put @thispage << /MediaBox [0 0
      498.89641  708.65968] >>}%<br>
                  \special {pdf: put @thispage << /TrimBox [0 0
      498.89641  708.65968] >>}%<br>
              }<br>
             <br>
          \newcount \maxpage<br>
          \maxpage = <whatever><br>
          \let \Shipout = \shipout<br>
          \def \shipout {\ifnum \pageno < \maxpage \setboundingboxes
      \fi \Shipout}</tt><br>
    <div class="moz-signature">-- <br>
      <img src="cid:part2.03050200.06010508@Rhul.Ac.Uk"><br>
      Philip Taylor</div>
  </body>
</html>