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.
