O que é a "Área de Transferência" no Computador?
A área de de transferência (em Inglês: clipboard, significando "prancheta") é onde ficam armazenados os dados que foram cortados ou copiados em um aplicativo. Toda vez que você corta ou copia um texto ou uma imagem, o texto ou imagem vai para a área de transferência. Depois, ao colar o texto ou imagem em um outro aplicativo, esses dados seriam copiados da área de transferência para esse outro aplicativo. Em muitos aplicativos, o ícone da ação "colar" é uma prancheta devido ao nome da área de transferência em Inglês. Considerando isso, a área de transferência seria um objeto virtual que permite dois aplicativos diferentes comunicarem entre si. Da mesma forma que podemos salvar um arquivo com um aplicativo e abrir com um outro aplicativo, podemos copiar algo para área de transferência com um aplicativo e colar em outro aplicativo.
Como a área de transferência é compartilhada entre múltiplos aplicativos, ela não pode pertencer a um aplicativo específico. Isto é, não faria sentido que, ao fechar um aplicativo, a área de transferência fosse "fechada" junto com dele, i.e. seu tempo de vida fosse sincronizado com o de um aplicativo. Por esse motivo, a área de transferência é gerenciada pelo sistema operacional, no qual os aplicativos dependem para funcionar. Toda vez que você copia algo, o aplicativo diz para o sistema que você copiou dados, e quando você cola os dados, o sistema fica encarregado de enviar para o outro aplicativo os dados copiados. Isto é, quando você copia e colar algo de um aplicativo para o outro, os dois aplicativos não se comunicam diretamente. O aplicativo de origem não sabe quem irá receber os dados que foram copiados.
Consequentemente, a área de transferência, assim como o conceito de arrastar-e-soltar, é implementado de tal forma em que o aplicativo é capaz apenas de especificar qual o tipo dos dados copiados, e se for um tipo comum o suficiente, outros aplicativos serão capazes de receber esses dados. Por exemplo, quando você copia texto, os dados estariam em um formato chamado tecnicamente de text/plain
(texto / simples). Esse formato não suporta formatação de texto (negrito, itálico, etc.). Um formato que suporta formatação seria código HTML, cujo código identificador seria text/html
. Alguns aplicativos não suportam formatação de texto, logo não seria possível colar texto formatado neles. Para suportar o maior número possível de aplicativos, quando você copia um texto de uma página na Internet no seu navegador, por exemplo, o navegador informa ao sistema que existe dois tipos de dados diferentes que podem ser colados, isto é, ele vê o texto que está selecionado, e gera duas versões diferentes, uma de texto simples que é suportado pela maioria dos aplicativos, e uma de texto HTML que é menos suportado. Na hora de colar, o aplicativo recipiente verifica se a área de transferência possui um formato que o aplicativo suporta, e tentar receber apenas o formato suportado, ignorando outros formatos oferecidos.
Um problema surge quando o aplicativo de origem e o aplicativo de destino compartilham múltiplos tipos suportados. Por exemplo, se você copia uma imagem de uma página em seu navegador e tentar colar ela em certos programas, como Krita, você verá que o Krita oferece a opção de tentar baixar a imagem que você copiou ou colar os dados de imagem diretamente. Isso ocorre por que toda imagem na Internet é acessível por uma URL. Quando você copia a imagem, o navegador oferece dois formatos diferentes para a área de transferência: o formato image/png
, que seria os dados idênticos de um arquivo de imagem no formato PNG, só que salvos na área de transferência em vez de em um arquivo, e o formato text/url-list
, que seria uma lista de URLs, uma em cada linha. Veja que o navegador pode usar o formato image/png
mesmo ao copiar uma imagem em formato JPG ou WebP. Isso por que para carregar uma imagem em qualquer um desses formatos é necessário o uso de um programa adicional (libjpg
e libwebp
respectivamente). Se o aplicativo não conter esse programa adiciona, ele não seria capaz de carregar uma imagem nesse formato. Com isso, o aplicativo que oferece os dados usa o formato mais comum possível, que a maioria dos aplicativos suportaria, e esse formato seria o PNG.
Deixe um comentário