Há uma 4 opção (feia), que é renderizares o TLF (grande) com scale
necessário mediante os dpi's de impressão (terias depois a nível de tamanho
das fontes dividir a escala), depois tirar snapshot e guardar jpg/png..

No dia 12 de dezembro de 2017 às 11:45, Hugo Ferreira <
[email protected]> escreveu:

> João:
> Obrigado na mesma.
>
> Da vasta checklist de funcionalidades tenho, não tem dado dor de cabeça,
> exceto a parte das imagens.
> Acabei por perceber que o que está implementado não serve de todo para mim.
> Se fornecer um URI dá para exportar e importar porque é uma string mas
> como estava a fazer, simplesmente tenta converter para string ficando na
> exportação [Sprite object] e naturalmente depois na importação um quadrado
> branco.
>
> Já analisei o código do TLF e estou a proceder ao patch para tentar
> suportar base64 string. Assim irei passar apenas um base64 ou bytearray, na
> exportação em XML ou HTML irá exportar como base64 e na importação irá
> criar o objecto visual, pelo menos espero eu.
> Isto irá também melhor imenso a exportação para HTML.
>
> Rui:
> Antes de começar isto, fiz uma checklist de todas as funcionalidades que
> pretendo implementar, esperando alguns problemas no terreno e para meu
> grande espanto só mesmo as imagens é que me obrigaram a entrar dentro do
> código fonte do TLF. Consegui implementar tudo (paginação automática,
> formação de texto, corretor ortográfico, etc, etc), exceto isto mas espero
> vir a conseguir (tem mesmo de ser).
> Da minha lista, só uma funcionalidade (importantíssima) é que foi difícil
> encontrar solução: Impressão.
> O Flex suporta impressão de objetos e consegue-se reproduzir a impressão
> de todas as páginas com pouco esforço mas não é preciso um olho clínico
> para perceber que o Flex (independentemente da antiguidade da tecnologia),
> é muito bom em muita coisa mas péssimo na impressão.
> A melhor impressão que se pode ter é por PDF e isso já está mais do que
> estudado.
> Para imprimir para PDF, analisei as diversas opções que tenho e cheguei a
> 3 possibilidades:
>
>    - Criar um novo exportador para o textflow para PDF-A usando o
>    AlivePDF: Um esforço de gigante para ficar perfeito mas ficará um PDF-A
>    perfeito (ou não) vectorial e com seleção de texto;
>    - Exportar o textflow para PDF (não norma A) usando o AlivePDF (ou
>    qualquer outro): Prints de cada página não vectorial (quanto maior a
>    densidade da imagem, melhor a qualidade e maior o tamanho do ficheiro), não
>    selecionável mas penso que se implementa isto em poucas horas - vale o
>    esforço do teste;
>    - Exportar para HTML usando o exportador de HTML do TLF (que não é
>    perfeito) e dai converter para PDF usando isto localmente: https://
>    wkhtmltopdf.org (este é o conversão "de facto" que criar PDF-A com
>    qualidade praticamente perfeita num único binário existente para os 3 OS) e
>    depois seria invocar o executável a partir da aplicação.
>
> Estou a considerar a segunda opção para impressão e eventualmente no
> futuro com mais tempo (se é que algum dia o vou fazer), a primeira opção.
> Caso falhe nos testes, a terceira opção sei que irá funcionar.
>
> No dia 12 de dezembro de 2017 às 11:25, Rui Cruz <[email protected]>
> escreveu:
>
>> E eu TLF só textos e apenas com TextFlow, Imagens é uma dor de cabeça
>> porque tens de contar com os dpi's que vais imprimir pois vai-se reflectir
>> na qualidade de impressão, tens também de ter em atenção os perfis de cor
>> das imagens. Provavelmente mais te vale usares o AlivePDF.
>>
>> No dia 12 de dezembro de 2017 às 11:20, João Fernandes <
>> [email protected]> escreveu:
>>
>>> Gostava de te ajudar Hugo mas já não uso Flex há mais de 2 anos e o TLF
>>> sempre foi uma dor de cabeça.
>>>
>>> On Dec 11, 2017 11:11 AM, "Hugo Ferreira" <[email protected]>
>>> wrote:
>>>
>>>> Bom dia,
>>>>
>>>> Estou a desenvolver um pequeno processador de texto dentro da minha
>>>> aplicação utilizando TLF.
>>>>
>>>> A parte do suporte a imagens está a dar luta e queria ver se tinha a
>>>> sorte de encontrar aqui alguém que tenha trabalhado com isto e conheça
>>>> estes problemas ou num contexto geral do Flex consiga ajudar.
>>>>
>>>> Problema 1:
>>>> Para inserir imagens, estou a usar o método insertInlineGraphic do
>>>> EditManager e funciona como o esperado, ou seja, insere uma imagem no local
>>>> onde o cursor estiver a piscar (a imagem é um binário renderizado num
>>>> Sprite).
>>>> Para editar imagens, dou um clique direito na imagem (menu de contexto)
>>>> e escolho a opção de editar (permito alterar a largura, altura e se faz
>>>> wrap texto à direita ou à esquerda).
>>>> Ao tentar editar, o curso tem de estar a piscar (posicionado)
>>>> imediatamente antes da imagem, o que não é nada conveniente e o utilizador
>>>> não se vai aperceber e assim a edição não vai produzir resultados.
>>>>
>>>> Problema 2:
>>>> Uma vez que a edição da imagem é na própria imagem, não queria que o
>>>> cursor fica-se com um ícone de edição como acontece no texto. Para tal mexi
>>>> em várias propriedade da imagem sem sucesso: "useHandCursor = true",
>>>> "mouseChildren = false" e "buttonMode = true".
>>>>
>>>> O problema 2 é mais um pormenor mas o 1 é mais gravoso.
>>>> Acho que uma possível solução passaria por encontrar a imagem e mover o
>>>> cursor mas assim não sei como.
>>>>
>>>> Cumprimentos,
>>>> Hugo.
>>>>
>>>>
>>>> --
>>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org"
>>>> do Grupos do Google.
>>>> Para anular a subscrição deste grupo e parar de receber emails do
>>>> mesmo, envie um email para [email protected].
>>>> Para publicar uma mensagem neste grupo, envie um email para
>>>> [email protected].
>>>> Visite este grupo em https://groups.google.com/group/riapt.
>>>> Para mais opções, visite https://groups.google.com/d/optout.
>>>>
>>> --
>>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do
>>> Grupos do Google.
>>> Para anular a subscrição deste grupo e parar de receber emails do mesmo,
>>> envie um email para [email protected].
>>> Para publicar uma mensagem neste grupo, envie um email para
>>> [email protected].
>>> Visite este grupo em https://groups.google.com/group/riapt.
>>> Para mais opções, visite https://groups.google.com/d/optout.
>>>
>>
>> --
>> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
>> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do
>> Grupos do Google.
>> Para anular a subscrição deste grupo e parar de receber emails do mesmo,
>> envie um email para [email protected].
>> Para publicar uma mensagem neste grupo, envie um email para
>> [email protected].
>> Visite este grupo em https://groups.google.com/group/riapt.
>> Para mais opções, visite https://groups.google.com/d/optout.
>>
>
> --
> Recebeu esta mensagem porque subscreveu ao grupo "Mailing List da
> Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do
> Grupos do Google.
> Para anular a subscrição deste grupo e parar de receber emails do mesmo,
> envie um email para [email protected].
> Para publicar uma mensagem neste grupo, envie um email para
> [email protected].
> Visite este grupo em https://groups.google.com/group/riapt.
> Para mais opções, visite https://groups.google.com/d/optout.
>

-- 
Recebeu esta mensagem porque está inscrito no grupo "Mailing List da Comunidade 
Portuguesa de Rich Internet Applications - www.riapt.org" dos Grupos do Google.

Para anular a subscrição deste grupo e parar de receber emails do mesmo, envie 
um email para [email protected].
Para publicar uma mensagem neste grupo, envie um e-mail para 
[email protected].
Visite este grupo em https://groups.google.com/group/riapt.
Para mais opções, consulte https://groups.google.com/d/optout.

Responder a