Olá José Ricardo,

Ando atrás de algo parecido para a extensão de pesquisa de arquivos.
No entanto, ainda não sei se há possibilidade de modificar a definição
do thumbnail nem se há como carregar a imagem na memória sem usar o
sistema de arquivos.

Minha solução até o momento foi usar o diretório temporário do sistema
operacional (tanto faz se Windows ou Linux) através da variável
$(temp):

oDirs = createUnoService("com.sun.star.util.PathSubstitution")
oDirTemp = oDirs.getSubstituteVariableValue("$(temp)")

Se chegar a alguma solução, informo a você.

 Abraço,
 Gustavo Pacheco.




2009/12/7 J. Ricardo Simoes Rodrigues <[email protected]>:
> Colegas,
>
> Tenho a macro abaixo para exibir, em um diálogo do Basic (no caso
> DlgMostraThumb), o Thumbnail do documento que fica gravado em
> "Thumbnails/thumbnail.png" dentro do arquivo  (arquivo.ott, no caso).
>
> Atualmente minha gambiarra consiste em extrair a imagem utilizando a
> sub UnZip( ) e então carregá-la no diálogo, mais especificamente em um
> componente de nome img.
>
> Gostaria de saber se há como carregar essa miminatura diretamente do
> arquivo.ott, sem precisar fazer a prévia gravação no disco, algo como
> operar apenas em memória.
>
> Outras duas perguntas:
>
> 1. Há como controlar a qualidade e dimensões (atualmente algo como
> 181x256px para um doc A4) do thumbnail gravado pelo OpenOffice?
>
> 2. Há outro método para carregar um preview de um documento OpenOffice
> em um diálogo Basic?
>
> Sub MostraThumb()
>        sMyDir = "C:\Documentos\"
>        sZipPackageUrl = ConvertToUrl( sMyDir & "arquivo.ott" )
>        sPkgSourceFile = "Thumbnails\thumbnail.png"
>        sDestination = sMyDir & sPkgSourceFile
>        UnZip( sZipPackageUrl, sPkgSourceFile, sDestination )
>        DialogLibraries.LoadLibrary("MinhaLib")
>        oDlg = CreateUnoDialog(DialogLibraries.MinhaLib.DlgMostraThumb)
>        oImg  = oDlg.getControl("img")
>        oImg.Model.ImageURL = ConvertToUrl( sDestination)
>        oDlg.Execute()
>        oDlg.dispose()
> End Sub
>
> Sub UnZip( sZipPackageUrl As String, sPkgSourceFile As String,
> sDestFile As String )
>        oZipPackage = createUnoService("com.sun.star.packages.Package")
>        oZipPackage.initialize( Array( sZipPackageUrl ) )
>        oZipPackageStream = oZipPackage.getByHierarchicalName( sPkgSourceFile )
>        xInputStream = oZipPackageStream.getInputStream()
>        xSimpleFileAccess = createUnoService( 
> "com.sun.star.ucb.SimpleFileAccess" )
>        xSimpleFileAccess.WriteFile( ConvertToUrl( sDestFile ), xInputStream )
> End Sub
>
> --
> José Ricardo Simões Rodrigues
> jricardosimoes at gmail.com
> ricardo at ricardosimoes.com
> ricardosimoes.com
> twitter.com/malechamawitz
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Responder a