[RESOLVIDO]Escrever em uma imagem no Seam PDF

1 resposta
TEX

Fala aí galera,

Estou tentando escrever um texto por cima de uma imagem utilizando o pdf do seam, mas não consegui. Dei uma olhada na documentação do Seam e vi que na tag <p:image> tem o atributo underlying mas não sei como utiliza-ló, encontrei um exemplo mas não entendi como usar.

segue abaixo o exemplo:

[color=red]Image img2 = Image.getInstance("…/resources/foxdog.gif");

img2.setAlignment(Image.MIDDLE | Image.UNDERLYING);

document.add(img2);[/color]

segue o código:

<p:document xmlns:p=“http://jboss.com/products/seam/pdf
xmlns=“http://www.w3.org/1999/xhtml
xmlns:ui=“http://java.sun.com/jsf/facelets
xmlns:h=“http://java.sun.com/jsf/html
xmlns:f=“http://java.sun.com/jsf/core
xmlns:a4j=“http://richfaces.org/a4j
xmlns:rich=“http://richfaces.org/rich
xmlns:s=“http://jboss.com/products/seam/taglib”>

<p:table columns=“1”>
<p:cell minimumHeight=“25”>
<p:image value="/imagens/teste.gif" alignment=“underlying”/>
<p:html><h:outputText value=“Escrevendo na imagem” style=“font-size:7;text-align:center;”/></p:html>
</p:cell>
</p:table>
</p:document>

agradeço desde já.

1 Resposta

TEX

Desculpem pela demora, consegui resolver o problema de duas maneiras:
A 1° foi utilizando tag’s do html.
A 2° foi criando uma classe que gera uma imagem e escreve em cima dela, só que não ficou legal por que a imagem estava ficando desfocada, daí optei por utilizar a 1° mesmo. Segue a solução:

&lt;p:table columns="1"&gt; 
        &lt;p:cell borderWidth="1" horizontalAlignment="left"&gt;
        &lt;p:table columns="2" widthPercentage="100" spacingBefore="15" spacingAfter="10" widths="1.0 10"&gt;
        &lt;p:cell borderWidth="0"&gt;
            &lt;p:html&gt;
        <img  src='${facesContext.externalContext.request.getRealPath("/")}/imagens/teste.gif' alt="escrevendo na imagem" />
            &lt;/p:html&gt;
        &lt;/p:cell&gt;
        &lt;p:cell borderWidth="0" paddingLeft="6" minimumHeight="50"&gt;
            &lt;p:html&gt;<br/><br/><br/><br/>&lt;/p:html&gt;
            &lt;p:font size="8" style="bold"&gt;
                &lt;p:text value="Escrevendo na imagem" /&gt;
            &lt;/p:font&gt;                                                                   	              
            &lt;/p:cell&gt;
         &lt;/p:table&gt;
       &lt;/p:cell&gt;
       &lt;/p:table&gt;
Criado 22 de outubro de 2010
Ultima resposta 5 de nov. de 2010
Respostas 1
Participantes 1