Antworten auf deine Fragen:
Neues Thema erstellen

xslt - Margin zu jedem Bild aus einem Array einfügen

limubai81

Nicht mehr ganz neu hier

Moin moin,
ich steh hier mal wieder vor einem Problem. Per xslt übergebe ich ein Array aus Bildern an ein Printtemplate, das klappt soweit auch ganz gut in dem alle Bilder nebeneinander dargestellt werden. Nur leider werden diese halt direkt ohne Abstand dazwischen hintereinandergesetzt. Kann mir jemand einen Tipp geben wie ich ein Margin zu jedem einzelnen Bild realisieren kann?

xsl-template
Code:
    <xsl:template match="PictureSlider/picturetype">
        <fo:inline margin-right="5pt">
            <fo:external-graphic height="30mm">
                <xsl:attribute name="src">
                    <xsl:value-of select="Path"/>
                </xsl:attribute>
            </fo:external-graphic>
        </fo:inline>
    </xsl:template>


lg limu
 

Duddle

Posting-Frequenz: 14µHz

Ich rate mal, weil ich laaaaange nicht mehr mit XSL zu tun hatte. Die Dokumentation beschreibt fo:inline als
used to format a part of a text with a background or enclosing it in a border
was für mich nicht geeignet für ein Bildelement klingt. Probier stattdessen mal ein fo:block.


Duddle
 

limubai81

Nicht mehr ganz neu hier

Damit habe ich auch schon "rumgetestet" leider werden da die Bilder dann untereinander angeordnet. Ich schau mal ob sich das über Float regeln lässt.


edit
Leider wird in dieser Version Float nicht supported. :/
 
Zuletzt bearbeitet:

limubai81

Nicht mehr ganz neu hier

So ich habe das Problem gelöst auch wenn die Lösung leider nicht so sauber wie gewünscht ist.

Template
Code:
    <xsl:template match="PictureSlider/picturetype">
            <fo:table-cell padding-left="1mm" padding-right="1mm" width="43mm">
                    <fo:external-graphic height="30mm">
                        <xsl:attribute name="src">
                            <xsl:value-of select="Path"/>
                        </xsl:attribute>
                    </fo:external-graphic>
            </fo:table-cell>   
    </xsl:template>

Aufruf
Code:
<fo:block>
    <fo:table space-before="5mm" width="172mm">
        <fo:table-column column-width="43mm" />
        <fo:table-column column-width="43mm" />
        <fo:table-column column-width="43mm" />
        <fo:table-column column-width="43mm" />
        <fo:table-column column-width="43mm" />
        <fo:table-column column-width="43mm" />
        <fo:table-body>
            <fo:table-row>
                <xsl:apply-templates select="PictureSlider/picturetype"/>
            </fo:table-row>
        </fo:table-body>
    </fo:table>
</fo:block>
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.565
Beiträge
1.538.066
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben