;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Logo Pagbenk Seu dinheiro rende mais
Topo

Fábrica faz café e guarda álcool de vinho em barril para produzir perfumes

Juliana Kirihata

Do UOL, em São José dos Pinhais*

30/12/2016 06h00

Grãos de café preparados em água quente e álcool de vinho armazenado em barris de carvalho francês. As cenas poderiam ser de uma cozinha, mas são de uma fábrica de perfumes.

O café, por exemplo, é ingrediente das fragrâncias da linha Coffee, da marca O Boticário. "A ideia é dar um toque especial, mas não ficar cheirando a café", diz Cesar Veiga, especialista em fragrâncias da empresa. 

Na fábrica, é feita a infusão dos grãos com água quente, que são colocados em um recipiente de inox, com capacidade para até 80 litros. O processo é parecido com o da bebida feita em casa, só que se usam grãos em vez de pó. A infusão é feita em dez minutos. Depois, sai um líquido alaranjado, como um chá (e não o preto tradicional do café).

Veja o processo detalhadamente nas fotos acima ou clique aqui.

Essência de tiramissu e algodão-doce

Segundo Veiga, um perfume pode surgir de vários produtos e depende do perfil do consumidor. “Em média, são usadas de 50 a 150 matérias-primas na fabricação”, diz.

Entre as matérias-primas, estão óleos essenciais e também fragrâncias produzidas em laboratório que reproduzem o cheiro de flores, frutas e sobremesas, como chocolate, tiramisu e algodão-doce.

No caso do Malbec, perfume mais vendido da marca atualmente, a intenção é lembrar o universo dos vinhos. Para isso, o perfume leva álcool vínico --obtido pela fermentação da uva.

No processo, o álcool descansa em barris de carvalho instalados no meio da fábrica, por um período que pode variar de um dia a semanas. O álcool absorve o aroma amadeirado dos barris, segundo a empresa, e o tempo de armazenagem depende do aroma necessário para cada produto.

Esses perfumes fazem parte dos 250 milhões de itens produzidos por ano na fábrica do Grupo Boticário em São José dos Pinhais (PR). Lá também são feitos cremes, loções e maquiagem, entre outros itens.

Queda de vendas

As inovações na perfumaria, assim como em outros setores, são ainda mais necessárias diante do cenário de crise econômica.

Em 2015, os produtos de higiene pessoal, perfumaria e cosméticos registraram queda de 9% nas vendas, mostrou levantamento da Abihpec, associação do setor. Foi a primeira baixa em 23 anos.

Em entrevista ao UOL, o presidente do Grupo Boticário, Artur Grynbaum, disse que a crise afeta todos os setores da economia. "O ritmo de crescimento arrefeceu um pouco, porém, continuamos crescendo", afirmou.

(*A repórter viajou a convite do Grupo Boticário)

Perfume não é mais supérfluo, é cesta básica, diz Grynbaum

UOL Notícias