<chapter id="technical-overview"> <title >Introdução Técnica</title> <para >Este capítulo pretende dar uma vista geral técnica sobre o &kdeprint; que seja compreensível para os não-programadores.</para> <para >O &kdeprint; é uma ferramenta nova e revolucionária para permitir um fácil acesso aos serviços de impressão, quer para os utilizadores, quer para os programadores do &kde;.</para> <sect1 id="brief-description"> <title >Uma Breve Descrição do &kdeprint;</title> <para >O utilizador poderá aceder às funções do &kdeprint; de diferentes formas: através do Gestor de Impressão no &kcontrol;, através do comando <command >kprinter</command > ou através da janela que aparece quando deseja imprimir.</para> <sect2 id="what-kdeprint-is-not"> <title >O que <emphasis >não</emphasis > é</title> <para >O &kdeprint; <emphasis >não</emphasis > é um substituto do sistema de impressão em si. Como tal, o &kdeprint; <emphasis >não</emphasis > define o escalonamento e <emphasis >não</emphasis > realiza o processamento básico de &PostScript; ou de outros dados de impressão.</para> </sect2> <sect2 id="what-kde-print-is"> <title >O que <emphasis >é</emphasis ></title> <para >O &kdeprint; é uma camada intermédia entre o escalonamento e o sub-sistema de processamento dos dados de impressão instalado, e a aplicação que pretende imprimir. O &kdeprint; oferece uma interface comum para os programadores e utilizadores do &kde; entre os vários sub-sistemas de impressão suportados. Ao mesmo tempo, é altamente personalizado.</para> <para >O &kdeprint; é fácil de usar pelos programadores e utilizadores do &kde;. Os programadores podem alterar as suas aplicações, com o mínimo de alterações, de modo a passarem a usar o &kdeprint; em vez do <quote >sistema</quote > de impressão antigo do &Qt;. Os utilizadores podem escolher e configurar facilmente o sub-sistema de impressão deles.</para> <para >Como referência para os novos utilizadores do &kde;: o &Qt; é a biblioteca básica gráfica que é usada por todas as aplicações do &kde;; o &Qt; é desenvolvido pela TrollTech, uma companhia de 'software' norueguesa.</para> </sect2> </sect1> <sect1 id="different-users"> <title >&kdeprint; -- Utilização Diferente do &kdeprint; para Diferentes Pessoas</title> <para >O &kdeprint; tem diferentes vistas para diferentes pessoas.</para> <sect2 id="what-users-can-do"> <title >O que os utilizadores e os administradores podem fazer com o &kdeprint;</title> <para >O &kdeprint; permite aos utilizadores e/ou administradores, dependendo dos seus direitos, acederem aos sub-sistemas de impressão (o &CUPS;, o <acronym >LPD</acronym >, o <acronym >RLPR</acronym >, o <application >LPRng</application >, o <application >PDQ</application > &etc;), através de uma interface de utilizador gráfica do &kde; (&GUI;). Através do &kdeprint;, poderão imprimir, administrar as tarefas, impressoras e o servidor de impressão, de uma forma confortável.</para> <para >Os utilizadores experientes gostarão da possibilidade de adicionar qualquer filtro funcional dos dados de impressão entre a aplicação e o servidor de impressão. Alguns desses exemplos vêm já com o &kdeprint; <quote >básico</quote >. O utilizador podê-lo-á confirmar.</para> </sect2> <sect2 id="what-developers-can-do"> <title >O que os programadores do &kde; podem fazer com ele...</title> <para >Se um programador do &kde; necessitar de acesso às impressoras para a sua aplicação, não irá codificar as funções de impressão do zero. Antes do &kde; 2.2, este serviço era disponibilizado pela classe <classname >QPrinter</classname >, uma função da biblioteca &Qt;. A classe <classname >QPrinter</classname > baseava-se no desactualizado <quote >Line Printer Daemon</quote >(<acronym >LPD</acronym >). A biblioteca do &kdeprint; baseia-se firmemente no sistema mais moderno que é o <quote >Common &UNIX; Printing System</quote > (&CUPS;), mantendo à mesma a compatibilidade com o <acronym >LPD</acronym > e com os outros sistemas legados ou menos elaborados, assim como também <quote >deixam a porta aberta</quote > para qualquer novo desenvolvimento que possa ocorrer.</para> <para >Para os programadores do &kde; usarem a nova classe do &kdeprint; nas suas aplicações, é necessário efectuar alterações mínimas do código: para cada chamada à classe <classname >QPrinter</classname >, só precisam de a alterar para <classname >KPrinter</classname >. Basta mudar uma (!) letra em alguns sítios, e é tudo; as suas aplicações passam a tirar partido de todas as funcionalidades da biblioteca &kdeprint;.</para> <para >Os programadores mais ambiciosos, ou aqueles com necessidades especiais, poderão fazer mais: é-lhes possível personalizar à mesma a janela de impressão da sua aplicação, permitindo a adição de uma nova <quote >página</quote >, onde poderão ser colocadas as suas extensões ao &kdeprint; normal.</para> <para >Esta última funcionalidade não está a ser largamente usada no &kde; até agora, dado que os programadores ainda não têm o conhecimento completo das potencialidades do &kdeprint;. Espere mais algumas destas coisas num futuro próximo. Um exemplo que foi descoberto é a aplicação &kcron;. Esta permite ao utilizador editar o 'crontab' através de uma interface gráfica. Os programadores implementaram uma funcionalidade de impressão e que, neste caso, lhe permite (ou ao <systemitem class="username" >root</systemitem >) escolher se deseja imprimir o 'crontab' completo (para todos os utilizadores) ou apenas a parte seleccionada. Poderá ver os efeitos no &kdeprint; nas imagens seguintes.</para> <para >Esta imagem apresenta uma amostra do utilitário &kcron;. <screenshot> <screeninfo >O utilitário &kcron;: uma pequena amostra das tarefas do 'cron' de um sistema mostradas na interface do &kde;.</screeninfo> <mediaobject> <imageobject> <imagedata fileref="kcron_to_be_printed.png" format="PNG"/></imageobject> <textobject> <phrase >Os programadores do &kcron; permitem-lhe optar por imprimir toda a tabela do cron ou apenas a parte seleccionada.</phrase ></textobject> </mediaobject> </screenshot> </para> <para >A janela para configurar as opções de impressão do &kcron;: a secção adicional <guilabel >Opções do Cron</guilabel > provém do &kcron;, não do &kdeprint;; é uma extensão especial adicionada pelos programadores do &kcron; para fins de impressão que, não sendo originárias do &kdeprint;, são executadas por este. Os programadores das outras aplicações terão a liberdade para adicionar as suas próprias funcionalidades, se sentirem a necessidade.</para> <screenshot> <screeninfo >A adição do &kcron; à janela do &kdeprint;.</screeninfo> <mediaobject> <imageobject> <imagedata fileref="kprinter_with_kcron_developer_special.png" format="PNG"/></imageobject> <textobject> <phrase >A adição do &kcron; à janela do &kdeprint;.</phrase ></textobject> <caption> <para >A adição do &kcron; à janela do &kdeprint;.</para> </caption> </mediaobject> </screenshot> </sect2> <sect2> <title >O que o &kdeprint; oferece a todos...</title> <para >A interface simples de usar do &kdeprint; para os sub-sistemas de impressão suportados não elimina a fraqueza tradicional de alguns desses sistemas, mas lima algumas arestas. Os diferentes utilizadores poderão utilizar diferentes sistemas de impressão na mesma máquina. Um utilizador tem inclusive a possibilidade de mudar <quote >na altura</quote > o sub-sistema a usar na próxima tarefa, a partir da janela de impressão. (Isto é possível se os diferentes sistemas estiverem instalados de modo a que cada um <quote >não se meta no caminho de outro</quote >.)</para> <para >A maioria dos utilizadores estão acostumados à impressão com o <acronym >LPD</acronym >. O <acronym >LPD</acronym > oferece só algumas funções de impressão básicas, é muito inflexível e não utiliza as várias opções dos sistemas de impressão mais recentes, como o &CUPS;. Embora também funcione remotamente para qualquer parte (como qualquer protocolo baseado no TCP/IP), falta ao <acronym >LPD</acronym > bidireccionabilidade, autenticação, controlo de acesso e suporte de cifra.</para> <para >O &kdeprint; pode usar o &CUPS; para suportar:</para> <itemizedlist> <listitem> <para >A pesquisa na <acronym >LAN</acronym > pelas impressoras disponíveis,</para> </listitem> <listitem> <para >Autenticação Básica, com 'Digests' e com Certificados,</para> </listitem> <listitem> <para >Controlo de Acesso baseado nos endereços <acronym >IP</acronym >, nos endereços de rede, nas máscaras de rede, nos nomes das máquinas e nos domínios,</para> </listitem> <listitem> <para >e a cifra, com o TLS de 128 Bits ou com o SSL3, dos dados de impressão, para prevenir intromissões, ou pelo menos complicar tais acções.</para> </listitem> </itemizedlist> <para >Isto torna o &kdeprint; uma solução muito mais robusta e fiável do que utilizar o venerável <acronym >LPD</acronym >.</para> </sect2> <sect2> <title >Como aceder ao &kdeprint; </title> <para >Poderá obter acesso ao &kdeprint;, ou a partes dele, de quatro formas diferentes:</para> <itemizedlist> <listitem ><para >através das suas aplicações: se chamar a janela de impressão (quer por <menuchoice ><guilabel >Ficheiro</guilabel > <guilabel >Imprimir...</guilabel ></menuchoice >), quer pelo botão com o ícone da pequena impressora neste; isto irá abrir a janela de impressão.</para ></listitem> <listitem ><para >através do comando <command >kprinter</command > indicado num <application >terminal</application >, numa janela do &konsole; ou na janela de mini-<acronym >CLI</acronym > <guilabel >Executar um Comando...</guilabel >: isto também abre a janela de impressão.</para ></listitem> <listitem ><para >a partir do botão do <inlinemediaobject ><imageobject > <imagedata fileref="kcontrol-icon.png" format="PNG"/></imageobject > </inlinemediaobject >, iniciando o &kcontrol;, e indo a <menuchoice ><guilabel >Sistema</guilabel ><guilabel >Gestor de Impressão</guilabel ></menuchoice >. Isto abre a administração do &kdeprint; como parte do &kcontrolcenter;, permitindo-lhe mudar para outras componentes do &kcontrol;</para ></listitem> <listitem ><para >a partir da linha de comandos (&konsole; ou mini-<acronym >CLI</acronym >), escreva <userinput > <command >kcmshell</command > <option >printers</option ></userinput >. Isto abre apenas a componente &kdeprint; do &kcontrol;, de modo que o utilizador efectue a sua configuração. </para ></listitem> </itemizedlist> <screenshot> <screeninfo >A janela do &kprinter; a iniciar na janela de <guilabel >Executar um Comando...</guilabel ></screeninfo> <mediaobject> <imageobject> <imagedata fileref="kprinter_called_from_run_command.png" format="PNG"/></imageobject> <textobject> <phrase >A iniciar a janela do &kprinter; numa janela para <guilabel >Executar um Comando...</guilabel >.</phrase ></textobject> <caption ><para >A iniciar a janela do &kprinter; numa janela para <guilabel >Executar um Comando...</guilabel >.</para ></caption> </mediaobject> </screenshot> <!-- TODO: This one ought to be a screenshot LW. --> <para >Aqui está um desenho do &kivio; e a janela do &kdeprint;, logo que aparece após o seu início... O utilizador poderá sempre adicionar uma nova impressora, se carregar no pequeno botão do <guiicon >Assistente</guiicon > (marcado a vermelho/amarelo neste desenho).</para> <screenshot> <screeninfo >A janela do &kprinter; iniciada (rascunho do &kivio;) </screeninfo> <mediaobject> <imageobject> <imagedata fileref="kprinter-kivio.png" format="PNG"/></imageobject> <textobject> <phrase >A janela do &kprinter; iniciada (rascunho do &kivio;)</phrase ></textobject> <caption ><para >A janela do &kdeprint; iniciou (rascunho do &kivio;)</para ></caption> </mediaobject> </screenshot> </sect2> </sect1> </chapter> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-namecase-general:t sgml-general-insert-case:lower sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:0 sgml-indent-data:true sgml-parent-document:"index.docbook" "book" End: -->