0

問題なく PDF を作成できますが、PDF のページ番号を特定のページ (1 ではなく) で開始する必要があります。通常、cfdocument スコープを使用してページ番号を表示しますが、ページが必要ないためです。 1 から始まる番号 コードが機能しません。各ページをインクリメントしながらこれを行う最善の方法がわかりません。正常に動作するコードは次のとおりです。

<cfset theStartPageNumber = 10 />
<cfdocument format="PDF>
  <cfoutput query="getPerson">
    <cfdocumentsection>
      <cfdocumentitem type="header">
        <table>
          <tr>
            <td>My Header</td>
          </tr>
        </table>
      </cfdocumentitem>
      #getPerson.FirstName# #getPerson.LastName#
      <cfdocumentitem type="footer" evalAtPrint="true" pageNumber="#theStartPageNumber#">
        <table>
          <tr>
            <td align="center"><cfoutput>#attributes.pageNumber#</cfoutput></td>
          </tr>
        </table>
      </cfdocumentitem>
    </cfdocumentsection>
    <cfset thePageNumber ++ />
  </cfoutput>
</cfdocument>

しかし、改ページを導入すると、番号付けは各ページをインクリメントしません。各ページ番号をインクリメントしないコードを次に示します。

<cfset theStartPageNumber = 10 />
<cfdocument format="PDF>
  <cfoutput query="getPerson">
    <cfdocumentsection>
      <cfdocumentitem type="header">
        <table>
          <tr>
            <td>My Header</td>
          </tr>
        </table>
      </cfdocumentitem>
      #getPerson.FirstName# #getPerson.LastName#
      <cfdocumentitem type="pagebreak" />
      #getPerson.Address#
      <cfdocumentitem type="pagebreak" />
      <cfdocumentitem type="footer" evalAtPrint="true" pageNumber="#theStartPageNumber#">
        <table>
          <tr>
            <td align="center"><cfoutput>#attributes.pageNumber#</cfoutput></td>
          </tr>
        </table>
      </cfdocumentitem>
    </cfdocumentsection>
    <cfset thePageNumber ++ />
  </cfoutput>
</cfdocument>

機能しないコードを使用すると、ページ番号は 2 ページの間「10」のままになり、その後「11」に増加します。

どんな助けでも大歓迎です!

4

2 に答える 2

0
<cfset theStartPageNumber = 10 />
<cfdocument format="PDF>
    <cfoutput query="getPerson">
        <cfdocumentsection>
        <cfdocumentitem type="header">
            <table>
            <tr>
            <td>My Header</td>
            </tr>
            </table>
            </cfdocumentitem>
            #getPerson.FirstName# #getPerson.LastName#
            <p style='page-break-after:always;'>&nbsp;</p>
            #getPerson.Address#
            <p style='page-break-after:always;'>&nbsp;</p>
            <cfdocumentitem type="footer" evalAtPrint="true" pageNumber="#theStartPageNumber#">
            <table>
            <tr>
            <td align="center"><cfoutput>#attributes.pageNumber#</cfoutput></td>
            </tr>
            </table>
        </cfdocumentitem>
        </cfdocumentsection>
    <cfset thePageNumber ++ />
    </cfoutput>
</cfdocument>

また、フッターと数字を使用して、次のようにします。

<cfdocumentitem type="footer" evalatprint="true"> 
  <table width="100%" border="0" cellpadding="0" cellspacing="0"> 
  <tr><td align="center">
  <cfoutput>
    #cfdocument.currentpagenumber# of 
    #cfdocument.totalpagecount# | 
    #dateformat(now(),"mm-dd-yyyy")#
  </cfoutput>
  </td></tr> 
  </table> 
</cfdocumentitem>

私の完全な実例:

<cfdocument localUrl="yes" 
  format="PDF" 
  mimetype="text/html" 
  marginbottom=".0925" 
  margintop="0" 
  marginright=".1" 
  marginleft=".1">
  <cfoutput>
      test 
      <p style='page-break-after:always;'>&nbsp;</p>
      test
      <p style='page-break-after:always;'>&nbsp;</p>
      test
      <p style='page-break-after:always;'>&nbsp;</p>
</cfoutput>
<cfdocumentitem type="footer" evalatprint="true"> 
  <table width="100%" border="0" cellpadding="0" cellspacing="0"> 
  <tr><td align="center">
  <cfoutput>
    #cfdocument.currentpagenumber# of 
    #cfdocument.totalpagecount# | 
    #dateformat(now(),"mm-dd-yyyy")#
  </cfoutput>
  </td></tr> 
  </table> 
</cfdocumentitem>
</cfdocument>
于 2015-11-13T19:04:38.787 に答える