5.3.6 Impressão de Dados Variáveis Para concluir essa fase de testes práticos, resolveu-se testar uma solução para um tipo de produto gráfico que



Documentos relacionados
5.3.2 Livros Texto

Manual do Visualizador NF e KEY BEST

LINEAR EQUIPAMENTOS RUA SÃO JORGE, TELEFONE: SÃO CAETANO DO SUL - SP - CEP

Criando uma mala direta com o Word 2007 em 6 Passos

Construtor de sites SoftPixel GUIA RÁPIDO - 1 -

Tutorial Gerar arquivo PDF. Gerando um documento pdf com várias imagens 1- Inserir imagem no Word

Voltado para novos usuários, este capítulo fornece uma instrução para edição de Leiaute do SILAS e suas funções.

Como Gerar documento em PDF com várias Imagens

Configurando um Grupo Doméstico e Compartilhando arquivos no Windows 7

Manual de Conversão para PDF Envio de Arquivos ao Diário Oficial

E-books. Guia para Facebook Ads. Sebrae

GUIA RÁPIDO DE UTILIZAÇÃO DO PORTAL DO AFRAFEP SAÚDE

Barra de ferramentas padrão. Barra de formatação. Barra de desenho Painel de Tarefas

Microsoft Office PowerPoint 2007

Sumário 1. SOBRE O NFGoiana DESKTOP Apresentação Informações do sistema Acessando o NFGoiana Desktop

Como instalar uma impressora?

Tutorial do ADD Analisador de Dados Dinâmico.

EXEMPLO DE COMO FAZER UMA MALA DIRETA

Sistemas Operacionais

Manual de Instalação e Utilização

A VISTA BACKSTAGE PRINCIPAIS OPÇÕES NO ECRÃ DE ACESSO

- Versão 1.0 Página 1

PROCEDIMENTOS PARA CONVERSÃO DE IMAGENS DIGITALIZADAS EM DOCUMENTO PDF ÚNICO UTILIZANDO A IMPRESSORA FREEPDF XP.

WF Processos. Manual de Instruções

Portal Sindical. Manual Operacional Empresas/Escritórios

Tabela e Gráficos Dinâmicos Como estruturar dinamicamente dados no Excel

Análise de Dados do Financeiro

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2

Manual do usuário. Softcall Java. versão 1.0.5

CATÁLOGO DE CUSTOMIZAÇÕES Apontamento Web

Table of Contents. PowerPoint XP

PHP Material de aula prof. Toninho (8º Ano)

Manual do Módulo SAC

Planejando o aplicativo

Manual Captura S_Line

02 - Usando o SiteMaster - Informações importantes

Manual de criação de envios no BTG360

Este software resolve todos esses problemas.adobe reader é um software free, para ler os arquivos pdf..

Manual da Nota Fiscal Eletrônica

Manual SAGe Versão 1.2 (a partir da versão )

Smart Laudos 1.9. A Forma Inteligente de Criar seus Laudos Médicos. Manual do Usuário

Editor de Questões E24H

Fluxo de trabalho do Capture Pro Software: Indexação de código de barras e separação de documentos

MANUAL MIKOGO 1. VISÃO GERAL

ÍNDICE. Futura Ponto (REP) Configurações Iniciais Cadastrar Horário Configurar Hora Extra Cadastrar Departamento...

ANDRÉ APARECIDO DA SILVA APOSTILA BÁSICA SOBRE O POWERPOINT 2007

SSE 3.0 Guia Rápido Parametrizando o SISTEMA DE SECRETARIA Nesta Edição Configurando a Conexão com o Banco de Dados

Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo.

GUIA MUDANÇA E FORMATAÇÃO DE SERVIDOR - MILLENNIUM

WORD. Professor: Leandro Crescencio Colégio Politécnico 1

Processo de Controle das Reposições da loja

Escritório Virtual Administrativo

MANUAL DE UTILIZAÇÃO

Microsoft Word INTRODUÇÃO

Forms Composer. Document Producer 1. Document Producer

MICROSOFT OFFICE EXCEL 2007

MINISTÉRIO DA FAZENDA

3 Dicas MATADORAS Para Escrever s Que VENDEM Imóveis

ATENÇÃO: * Arquivos com tamanho superior a 500 KB NÃO SERÃO ACEITOS * SOMENTE serão aceitos documentos do formato: PDF

CorelDRAW UM PROGRAMA DE DESIGN

Como gerar arquivos para Sphinx Operador

MANUAL DE UTILIZAÇÃO. Produtos: Saúde Pró Faturamento Saúde Pró Upload. Versão:

Manual de utilização do sistema OTRS (Atendimento) Cliente Externo

Tela Principal. 2) Criação do CD para ser entregue ao cliente.

APOSTILA DE EXCEL 2007

OBF40000 (PAINEL NF-E)

Gerencie a sala de espera e garanta a satisfação dos pacientes

Manual de Administração DPS Printer 2.1 NDDigital S/A - Software

Estalo Desenvolvimento e Tecnologia Rua Ismael Carlos Correia, 107 CEP Joinville - SC estalo@estalo.com.br Fone/Fax: (47)

Introdução Contratando o produto Link2NFe Assistente de configuração de emissor Configurações Avançadas do Emissor...

Impressão de Código de Barras Uma abordagem prática ZEBRA ZPL2

Vamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova.

Primeiros passos das Planilhas de Obra v2.6

Clique no menu Iniciar > Todos os Programas> Microsoft Office > Publisher 2010.

Procedimentos para Reinstalação do Sisloc

Criar Pesquisas. Guia rápido sobre...

Lazarus pelo SVN Linux/Windows

Sumário. Computação Gráfica Illustrator

e-ouv Passo-a-passo Sistema de Ouvidorias do Poder Executivo Federal Junho, 2015 Controladoria-Geral da União

OCOMON PRIMEIROS PASSOS

1 Inicie um novo. Guia de Referência Rápida de Gerenciamento de Projeto para o Project projeto

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1

SCIM 1.0. Guia Rápido. Instalando, Parametrizando e Utilizando o Sistema de Controle Interno Municipal. Introdução

ÍNDICE MANUAL SITE ADMINISTRÁVEL TV. 1. Introdução 2. Acessando o site administrável/webtv SITE ADMINISTRÁVEL 3. CONFIGURAÇÕES

Manual Equipamento ST10 Flasher Rev. 1

Objetivos. Página - 2

Manual das planilhas de Obras v2.5

Manual de Utilização do PDV Klavix

Página 1 MANUAL DE UTILIZAÇÃO DA FERRAMENTA OFFICE ONLINE WORD ONLINE EXCEL ONLINE POWER POINT ONLINE

Guia de Início Rápido

ALBUM DE FOTOGRAFIAS NO POWER POINT

MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO. Motor Periférico Versão 8.0

Microsoft Access XP Módulo Um

JOOPP O construtor de sites mais rápido do mundo!

43 11 Relatórios, Listagens e Exportações para Excel, TXT e HTML

Roteiro 3: Apresentações eletrônicas (parte 1)

TUTORIAL COM OS PROCEDIMENTOS DE

Softwares de Acessibilidade (DOSVOX) Guia de Consulta

Transcrição:

105 5.3.6 Impressão de Dados Variáveis Para concluir essa fase de testes práticos, resolveu-se testar uma solução para um tipo de produto gráfico que está se tornando cada vez mais disseminado e requisitado pelos clientes, a Impressão de Dados Variáveis. Esse tipo de impresso consiste, basicamente, na possibilidade de substituir determinados campos chave de um impresso para obter uma impressão diferente a cada registro de um banco de dados. Para exemplificar, temos as contas de consumo, as faturas, as malas-diretas, dentre outros. Porém, conforme as tecnologias de impressão sem forma (ou impressão digital), onde não é necessário que a máquina impressora seja alimentada com matrizes de impressão como chapas ou clichês, foram evoluindo e se tornando mais acessíveis, rápidas e confiáveis, mais e mais idéias de aplicação surgiram para a Impressão de Dados Variáveis. Como uma personalização mais apurada de uma propaganda, veiculada até um assinante através de uma revista, ou uma mala direta focada nas preferências de um público alvo. A maior vantagem disso tudo é que não seria necessário criar manualmente as variações, como trocar os nomes dos clientes, ou a cor de um carro pela cor que o cliente gosta. As soluções nesse tipo de serviço são para que todo o conjunto de regras seja definido apenas uma vez e a impressão esteja conectada a um banco de dados, o qual fará as alterações automaticamente para cada impresso. Aquele que projeta esse tipo de serviço tem de possuir um bom conhecimento em informática e, dependendo do caso, algum conhecimento em programação e no padrão XML, bastante usado nos Scripts de configuração das soluções proprietárias para essa classe de trabalho. Isso não é diferente no Linux, porém, ele não necessita de nenhuma aplicação voltada especificamente para a Impressão de Dados Variáveis. Isso porque o sistema de funcionamento dos programas dentro do Linux faz com que seja possível interligar um banco de dados a um layout de uma página e fazer com que o conteúdo desejado seja alterado dinamicamente. Na verdade, por essas e outras características de funcionamento interno do Linux, é cabível dizer e demonstrar como ele pode ser uma ferramenta até mesmo superior às soluções proprietárias, em se tratando de Impressão de Dados Variáveis.

106 Atenção: Diferentemente dos outros capítulos, este traz especificações extremamente técnicas de manipulação de formatos de arquivos e criação de Scripts de automação em Linux, portanto, o seu total entendimento e aplicação, requerem do leitor um grau considerável de conhecimento sobre Linux, sobre conceitos de bancos de dados e sobre os programas utilizados. Lembrando que mesmo no uso de soluções proprietárias, são exigidos conhecimentos com o mesmo grau de dificuldade. A complexidade em se elaborar um projeto para impressão de dados variáveis está diretamente relacionada ao objetivo do produto. Uma simples conta de Luz pode ser obtida através da impressão prévia do layout apenas como fundo para posteriormente se imprimir os campos desejados, exatamente como numa nota fiscal em formulário contínuo. Isso não requer nenhuma solução de Editoração Eletrônica. Agora, em um anúncio personalizado, onde o nome do cliente aparece no parabrisa de um carro, ou todo o layout é ajustado ao que a estratégia de marketing acredita atrair melhor cada classe de consumidor, todo um conjunto de ferramentas é necessário para produzir uma mídia de impacto e com muito mais chances de se obter retorno. 5.3.6.1 Iniciando O primeiro passo é decidir o que será feito, o que de dinâmico a impressão de dados variáveis irá conter, para se definir os métodos de execução. Como exemplo, escolhemos criar um convite informal de formatura. A idéia principal é a de um convite em que apareçam os nomes do formando e do convidado. Além disso, uma identificação mais pessoal entre os dois, onde poderíamos ter um layout festivo para os irmãos, pais e amigos dos formandos e um outro layout mais romântico, quando a relação entre os dois for um casamento, namoro ou noivado. Outra característica interessante desse convite, seria uma imagem que representasse o formando, como uma caricatura por exemplo, específica para cada um. Usando o Inkscape para o layout desse projeto, é possível visualizar o que pode ser feito.

107 Figura 89: Através do controle de camadas, podemos criar uma camada para o ambiente festivo, uma para o ambiente romântico e uma para os dados variáveis Os blocos de texto do Inkscape podem ser configurados para ocupar um espaço pré-definido, como no caso do texto dentro do balão, então não é preciso se preocupar com as relações entre o que é um campo variável e o que é um campo fixo. Determinase as variáveis escrevendo seus nomes exatamente nos locais onde elas devem aparecer. No caso uma frase de saudação, o nome do convidado, o nome do formando e o convite dentro da caixa de texto. Figura 90: Cada campo recebe um nome de uma variável do banco de dados para que seu conteúdo seja substituído na hora da geração de cada um dos convites.

108 5.3.6.2 Substituição do Conteúdo Agora já é possível obter uma impressão de dados variáveis fazendo uma simples substituição dos valores das variáveis. Graças aos formatos de arquivos abertos, qualquer ferramenta externa é capaz de manipular o conteúdo de um layout, seja ele feito no Inkscape ou no Scribus por exemplo. É extremamente simples se obter uma impressão com dados variáveis dessa maneira. Basta utilizar um comando bem conhecido do Linux, o sed, o qual será responsável pela atualização do conteúdo do arquivo original. Salvando o layout com o nome de dadosvariaveis.svg, é possível ver o resultado do seguinte comando: sed "s/var_formando/celso Tadeu/g" dadosvariaveis.svg>temp.svg Esta instrução substitui o conteúdo do arquivo SVG do Inkscape, procurando o texto var_formando, trocando por Celso Tadeu e salvando o novo arquivo como o nome de temp.svg Esse pequeno comando é a base de todo o conceito de impressão de dados variáveis dentro do Linux. Ele é simplesmente um comando de busca e substituição de textos dentro de um arquivo, mas dada a versatilidade do sistema, é possível complementar este comando da seguinte maneira: sed "s/var_formando/celso Tadeu/g" dadosvariaveis.svg>temp.svg inkscape print= Epson C67 temp.svg Isso quer dizer que o Inkscape pode ser acionado para executar tarefas mesmo sem ter sua interface gráfica aberta. As instruções aqui foram de que ele imprimisse o layout salvo no arquivo alterado temp.svg diretamente na impressora instalada no sistema. Se não quiséssemos imprimir diretamente, poderíamos criar um arquivo em pdf, através da opção export-pdf=arquivo.pdf.

109 Figura 91: O valor de var_formando foi alterado automaticamente, e o inkscape gerou a saída sem a necessidade da interface gráfica ter sido carregada. 5.3.6.3 O Script de Alteração Agora, precisamos começar a estruturar um script de automação que simplifique esse passo, vamos criar um arquivo chamado script e nele podemos configurar todas as substituições necessárias. #!/bin/sh cp f dadosvariaveis.svg convitedadostmp.svg sed "s/var_formando/$1/g" convitedadostmp.svg>temp2.svg cp f temp2.svg convitedadostmp.svg sed "s/var_frase/$2/g" convitedadostmp.svg>temp2.svg cp f temp2.svg convitedadostmp.svg sed "s/var_nome/$3/g" convitedadostmp.svg>temp2.svg cp f temp2.svg convitedadostmp.svg sed "s/var_saudacao/$4/g" convitedadostmp.svg>temp2.svg cp f temp2.svg convitedadostmp.svg sed "s/var_thanks/$5/g" convitedadostmp.svg>temp2.svg cp f temp2.svg convitedadostmp.svg sed "s/var_grau/$6/g" convitedadostmp.svg>temp2.svg inkscape print= Epson C67 convitedadostmp.svg

110 Figura 92: Resultado do pequeno script de substituição. Como criamos esse pequeno script, basta agora acioná-lo seguindo as ordens dos parâmetros que serão transmitidos a ele pela linha de comandos../script 'Celso Tadeu' 'Ao meu querido amigo' 'Tux' 'Olá meu camarada!' 'obrigado' 'esse Pinguim sensacional' Agora precisamos incluir a caricatura do formando e definir se o visual será festivo ou romântico, dependendo da relação com o convidado. Para isso basta incluir a imagem base no Inkscape. Para transformar tanto a imagem quanto a visibilidade da camada que vai trocar o visual do convite é preciso editar manualmente uma única vez o arquivo SVG, assim que todos os elementos estiverem definidos corretamente.

111 Figura 93: A caricatura do formando é uma imagem em bitmap importada. A camada de corações é nomeada como "Romântica" para facilitar na identificação do próximo passo. 5.3.6.4 Definições em XML Definidos os objetos que compõe todo o projeto, para essa interatividade mais complexa que envolve substituir uma imagem conforme muda o nome do formando e tornar visível ou invisível uma camada inteira, é necessário interferir diretamente no código do arquivo do Inkscape, que é baseado da estrutura XML. Felizmente o próprio Inkscape fornece métodos para facilitar essas alterações, através do menu Editor XML Figura 94: O Editor XML permite alterações manuais nas propriedades dos objetos. Para a camada Romântica o valor style:inline pode ser trocado por style:var_romantica para que seja possível trocar entre inline (visível) e none (invisível) automaticamente pelo banco de dados. Para a caricatura, podemos substituir o nome do arquivo por var_caricatura por exemplo e usar esse campo chave para trocar a imagem conforme for mudando o nome do formando.

112 Basta incluir então essas duas novas substituições no script, exatamente como foram feitas as outras. Agora é necessário conectar tudo isso a um banco de dados. A fase de preparar as informações é a mais crítica e a mais dispendiosa, mas compensa o trabalho quando temos milhares de anúncios personalizados para imprimir. Diversas fontes de bancos de dados podem ser utilizadas, o resultado que esse banco de dados precisa dar é justamente executar a chamada ao script, de modo que tenhamos um arquivo com todos os dados, chamando o script para substituir os valores e acionar o Inkscape para gerar a saída. 5.3.6.4 O Banco de Dados Escolhemos o OpenOffice Calc, que é a planilha eletrônica do pacote OpenOffice descrito no capítulo 5.2.1. Figura 95: Uma tabela contendo os dados necessários para o convite. Informações como nome do formando, sexo, nome do convidado, sexo e grau de relacionamento. Nele é possível importar dados em vários formatos, preparar consultas e filtrar informações de maneira simples e prática, ou mesmo servir como própria fonte de dados, digitando-se todos os campos necessários.

113 Usando funções simples como SE(), E() e OU(), comuns a qualquer pessoa que tenha certa experiência com planilhas eletrônicas, é possível manipular os dados para obter valores diferentes, dependendo de alguns campos chave, no nosso caso um dos campos chave é o gênero do formando (para a variável var_thanks poder ser trocada por obrigado ou obrigada por exemplo). Monta-se então uma segunda planilha, a que vai conter os dados manipulados, ou seja, os campos que serão transferidos para o layout através do script. Figura 96: Numa segunda planilha, obtém-se os valores a serem usados dentro do script, para todos os campos que precisam ser substituídos. Uma das facilidades das planilhas eletrônica é que precisamos apenas criar uma única linha com as funções para montar os dados, depois, basta copiar as linhas até o fim da tabela que todos os valores estarão prontos automaticamente. Em seguida, será necessária a exportação desses dados, num formato em que seja possível executar o script para cada um dos registros da tabela. Este é um dos passos mais simples, uma nova planilha concatena os valores necessários e formata-os para serem executados no script. A primeira linha. #!/bin/sh indica ao Linux que se trata de um scriptshell e que ele precisa ser executado como um programa.

114 Figura 97: O Calc cria todos as chamadas ao programa, exatamente como fizemos manualmente no começo deste capítulo. A cada formando, existe um comando./script" 5.3.6.4 Executando a Impressão de Dados Variáveis Basta agora exportar essa planilha para um formato de texto plano. No caso salvamos-na como dados.sh. Depois, basta executar o scriptshell../dados.sh E todos os registros serão processados e todas as saídas serão geradas automaticamente. Se o script estiver configurado para imprimir diretamente, todos os convites estarão impressos, caso ele mande o Inkscape salvar um arquivo PDF, teremos centenas de arquivos para imprimir separadamente. Neste caso, um outro utilitário pode ser chamado no fim do arquivo dados.sh é o pdftk. Sua sintaxe é bastante simples e ele é capaz de manipular arquivos PDF de diversas formas, uma delas é juntar vários arquivos de uma página em um único arquivo com várias páginas. pdftk *.pdf output convites.pdf Eis alguns exemplos dos resultados obtidos após a conclusão do processo, que gerou exatos 125 convites diferenciados, levando cerca de 5 minutos, para os formandos de 2007 do Curso Superior em Tecnologia Gráfica do Senai de São Paulo.

115

116

117 5.3.6.5 Finalizando Estes exemplos são o resultado real dessa automação que a princípio pode parecer complicada, mas que mostra como as ferramentas do Linux podem se comunicar para se obter uma infinita gama de aplicações. A versatilidade dessa transparência entre os programas livres fica muito aparente em situações como esta, impossíveis de serem realizadas dessa maneira, sem o uso de um programa específico para impressão de dados variáveis, em qualquer outro sistema operacional. Os passos mais críticos num serviço de impressão de dados variáveis são o Projeto e a Elaboração dos Dados. A execução em si não é tão complexa. Uma das vantagens desse tipo de aplicação é que o trabalho de se elaborar um projeto é o mesmo para 1, 5, 50, 150, 1.000 ou 1.000.000 de registros diferentes, o que torna óbvio a escolha por esse método preferencialmente quando temos um volume grande de variações possíveis, e que pouparia os designers de um enfadonho e tedioso processo de alterações manuais antes de cada impressão.