0

我有一些 XSL 用作描述 PDF/Letter 布局的表示。要求之一是在其右侧垂直向下显示一些文本。我已经搜索过这个主题,但还没有真正找到明确或明确的答案。

我试图附上一张图片将有助于展示我想要实现的目标,但因为我是新来的,所以不会让我这样做。这是我到目前为止所得到的,但到目前为止我还没有让它工作(甚至显示文本!)

                <fo:block-container writing-mode="tb-lr">
                    <fo:block intrusion-displace="line">        
                      <fo:float float="start">
                          <fo:block text-align="center" border="1pt solid gray" font="bold italic 9pt Helvetica">               
                              <fo:block>
                                Floaty Vertical Text
                              </fo:block>
                        </fo:block>
                      </fo:float>            
                    </fo:block>
                </fo:block-container>

你们有没有聪明人能告诉我如何做到这一点?帮助将不胜感激。

谢谢 :)

4

3 回答 3

0

我通过进一步阅读设法解决了这个问题,我需要做的主要事情是了解 XSL-FO 基础知识,这反过来又使我能够更清楚地了解需要什么。这是一个片段,显示了我如何解决我的问题:

        <fo:layout-master-set>

            <fo:simple-page-master master-name="simpleA4"  page-height="29.7cm" page-width="21cm" margin-top="1.27cm" margin-bottom="1.27cm" margin-left="1.75cm">
                <fo:region-body margin-top="1mm" margin-bottom="1mm" /> 
                <fo:region-before region-name="header-normal" extent="0mm" />
                <fo:region-after region-name="footer-normal" extent="0mm" />
                <fo:region-end region-name="right-sidebar" writing-mode="tb-rl" extent="10mm" />                    
            </fo:simple-page-master>

        </fo:layout-master-set>

        <fo:page-sequence master-reference="simpleA4" font-family="sans-serif">

        <!-- Output the BARR string -->
            <fo:static-content flow-name="right-sidebar" font-size="4pt">                           
                <fo:block padding-before="4pt"text-align="left">
                    <xsl:value-of select="$BARRstring" />
                </fo:block>                 
            </fo:static-content>

一旦你知道怎么做,就非常直接!只需要创建一个新的 region-end 并将 write-mode 设置为 tb-rl,然后在 page-sequence 中引用该区域。

希望这可以帮助其他尝试做同样事情的人。:)

于 2012-11-28T10:18:41.133 回答
0

您的解决方案是可行的,但作为替代方法,您可以将reference-orientation相应fo:static-content元素的 设置为适当的值。例如,如果您希望文本从上到下流动,您可以将属性的值设置为270

<fo:static-content flow-name="right-sidebar" font-size="4pt" reference-orientation="270">
<!-- Put content here -->
</fo:static-content>
于 2016-02-04T19:16:50.623 回答
0

采用reference-orientation="90"

<fo:block-container reference-orientation="90" display-align="center" inline-progression-dimension="6cm">
                                                    <fo:block>barra</fo:block>
                                                    <fo:block font-weight="bold">91219934073AA1123</fo:block>
                                                </fo:block-container>
于 2021-02-10T19:33:08.340 回答