2017-05-10 1 views
0

좋은 하루,XSL-FO를 사용하여 순서 목록 (HTML의 ol)을 만드는 방법은 무엇입니까?

나는이 기술을 사용하고 어디 XML에서 PDF로 변환 프레 젠 테이션을하고 있어요

:

  • XML
  • XSL
  • XSL-FO를
  • 색슨
  • 기타 ...

그리고 내 XSL-FO 파일에는 번호가 매겨진 특정 항목 목록이 들어있는 프레젠테이션 슬라이드가 있어야합니다. 내가 발견 한 것만이이 단락 위에 표시된 것처럼 일반적인 목록입니다. 여기

https://www.alt-soft.com/tutorial/xslfo_tutorial/xsl-fo_list.html 내 코드입니다 : 여기에 목록에 대한 XSL-FO 문서입니다

<fo:list-block padding="4pt" margin-left="10mm" margin-top="4mm"> 
     <xsl:for-each select="//*[starts-with(name(), 'slide_')]"> 
      <xsl:if test="not(position()=1)"> 
       <fo:list-item margin-left="13mm" margin-top="8mm" margin-right="5mm" font-family="Times, 'Times New Roman', serif" font-size="15pt"> 
        <fo:list-item-label end-indent="label-end()"> 
         <fo:block>&#x02022;</fo:block> 
        </fo:list-item-label> 
        <fo:list-item-body start-indent="body-start()"> 
         <fo:block margin-left="10mm"> 
          <xsl:value-of select="title"/> 
         </fo:block> 
        </fo:list-item-body> 

       </fo:list-item> 
      </xsl:if> 
     </xsl:for-each> 
    </fo:list-block> 

이 코드는 모든 슬라이드 제목의 공통 점 목록을 생성하지만, 내가 좋아하는 숫자 정렬 된 목록을 드릴 수 없습니다 HTML의 ol. 이 목록 요소가 어떻게 든 중첩되어있는 곳에서는 작동하지 않는 솔루션 만 발견했습니다. 나는 그것을 시도했지만 편집하는 동안 항상 실패합니다. 이 작업을 수행 할 수있는 방법을 몇 가지 해결책이 있습니까 http://www.utilities-online.info/foprender/#.WRLOAYh97cs

:이 온라인 사이트는 당신이 온라인으로 테스트하기 위해, 나를 위해 해결책을 찾기 위해 도움이 될 수 있습니다 https://www.w3.org/Style/XSL/TestSuite/contrib/FOP/list.pdf

: 여기에 그 코드에 링크 (페이지 8,9)입니다 부디? 귀하의 회신에 미리 감사드립니다.

답변

1

fo:list-item-label&#x02022; 대신 숫자를 입력해야합니다.

xsl:number을 사용하여 원본 XML의 구조에서 숫자를 생성 할 수 있습니다. XSLT 1.0 정의 및 몇 가지 간단한 예제는 https://www.w3.org/TR/xslt#number을 참조하십시오.

+0

흠, 고마워요! 이제 나는 내 실수를 이해합니다. w3.org에서 을 사용했지만 여전히 다음과 같이 잘못된 출력을합니다. . 1은 1이 아닙니다. –

+0

aa .. 나쁜 라벨, 사용했습니다. 다음과 같이 필요합니다. end-indent = "label-start()"... 감사합니다. 작동합니다! –

관련 문제