;

Když technologie, tak kvalitní a přesné

8. 9. 2017
Doba čtení: 4 minuty

Sdílet

Autor: Konica Minolta
Moderní technologie nám nabízejí stále větší pomoc ve všech oblastech osobního i pracovního života. A my tuto možnost většinou rádi využíváme.

„Čím více se však na moderní přístroje spoléháme, tím kvalitnější službu od nich musíme vyžadovat. Chcete-li mít hezké fotky z dovolené, nemůžete tam vyrazit s fotoaparátem, který fotí pouze v malém rozlišení. Jezdíte-li rádi na kole do hor, musíte si pořídit nějaké s kvalitní přehazovačkou. A stejně bychom měli přistupovat i k výběru firemního IT,“ říká Pavel Kelča, vedoucí produktového marketingu Konica Minolta Business Solutions Czech, se kterým jsme hovořili o možnostech moderního, bezchybného skenování. To je totiž základ pro úspěšný přechod ke stále využívanějším digitalizovaným dokumentům.

S jakými zákaznickými požadavky z oblasti digitalizace se nejčastěji setkáváte?

Požadavků stejně jako řešení je nesčetně. Základem všeho ale musí vždy být především bezchybné skenování, tedy převod fyzického dokumentu do elektronické editovatelné podoby. Pro zajištění bezpečného skenování zejména velkých objemů dokumentů se některé firmy přiklonily k pořízení profesionálních dokumentových skenerů. Ty jsou však finančně nákladné a například pro menší společnosti představují významnou investici, kterou si ne vždy mohou dovolit. Řada organizací tedy skenuje na různých zařízeních spíše „domácího“ typu s nízkou kvalitou a spolehlivostí.

Existuje nějaká další možnost?

Ideálním řešením je právě spojení technologií dokumentových skenerů s kancelářskými multifunkčními stroji. Dnes je již možné pořídit dostupné kancelářské zařízení vybavené speciálním ultrazvukovým senzorem, který ohlídá naskenování každého jednotlivého listu.

Jak tento senzor funguje?

Ultrazvukový senzor detekuje vzduchovou mezeru mezi dvěma (nebo více) listy, která vznikne při dvojitém podání papíru. Skenování se zastaví, na displeji multifunkčního zařízení se zobrazí náhled na poslední správně naskenovaný dokument a obsluha je vyzvána, aby papíry oddělila od sebe a znovu vložila do podavače. Pak se úloha doskenuje.

Pro jaké firmy je takové řešení vhodné?

Detekci dvojitého podání využijí nejvíce banky a finanční instituce. Stejně tak může být prospěšná pro účely veřejné správy, archivů a všude, kde často dochází ke skenování větších objemů dokumentů s požadavkem na maximální přesnost. V praxi zabraňuje chybám například při digitalizaci dokumentů, které prošly rukama zákazníků. Nejčastěji jde o faktury či dodací listy, jež jsou zmačkané, zpřehýbané a podobně poškozené. Hlídá také správné skenování nestandardních médií, jako jsou tenký či křídový papír. Ty jsou charakteristické vyšší přilnavostí, a mají tedy tendenci se ve skenerovém podavači k sobě přilepit.

Je o tento způsob skenování veliký zájem?

Zájem o bezchybné skenování je a trend je navíc stále rostoucí. Důraz na maximální bezpečnost a pečlivost při skenování kladou zejména ty firmy, které se rozhodly k přechodu na kompletní digitalizaci. Zákon totiž dnes již umožňuje evidovat veškerou firemní administrativu pouze v elektronické podobě, a fyzické dokumenty tedy není třeba uchovávat. Nenaskenování byť jen jediného listu by mohlo mít v případě neexistence papírového originálu pro takovou společnost až existenční důsledky.

Cyber25

Jaké další funkce by měli zákazníci při výběru zařízení s ultrazvukovým senzorem ještě požadovat?

Pokud se firma rozhodla pořídit si zařízení s funkcí ultrazvukového snímání, lze předpokládat, že skenuje větší objemy dokumentů. Při výběru by proto také měla dbát na dostatečnou rychlost skenování a podavač s co největší kapacitou. My jsme vybavili ultrazvukovým senzorem tři multifunkční kancelářská zařízení, která navíc nabízejí nejvyšší rychlost skenování na trhu – až 240 str./min černobíle i barevně. S kapacitou podavače až 300 listů tak představují ideální řešení pro firmy, jež vyžadují vysokou rychlost práce při zachování maximální bezpečnosti.

'; document.getElementById('preroll-iframe').onload = function () { setupIframe(); } prerollContainer = document.getElementsByClassName('preroll-container-iframe')[0]; } function setupIframe() { prerollDocument = document.getElementById('preroll-iframe').contentWindow.document; let el = prerollDocument.createElement('style'); prerollDocument.head.appendChild(el); el.innerText = "#adContainer>div:nth-of-type(1),#adContainer>div:nth-of-type(1) > iframe { width: 99% !important;height: 99% !important;max-width: 100%;}#videoContent,body{ width:100vw;height:100vh}body{ font-family:'Helvetica Neue',Arial,sans-serif}#videoContent{ overflow:hidden;background:#000}#adMuteBtn{ width:35px;height:35px;border:0;background:0 0;display:none;position:absolute;fill:rgba(230,230,230,1);bottom:20px;right:25px}"; videoContent = prerollDocument.getElementById('contentElement'); videoContent.style.display = 'none'; videoContent.volume = 1; videoContent.muted = false; const playPromise = videoContent.play(); if (playPromise !== undefined) { playPromise.then(function () { console.log('PREROLL sound allowed'); // setUpIMA(true); videoContent.volume = 1; videoContent.muted = false; setUpIMA(); }).catch(function () { console.log('PREROLL sound forbidden'); videoContent.volume = 0; videoContent.muted = true; setUpIMA(); }); } } function setupDimensions() { prerollWidth = Math.min(iinfoPrerollPosition.offsetWidth, 480); prerollHeight = Math.min(iinfoPrerollPosition.offsetHeight, 320); } function setUpIMA() { google.ima.settings.setDisableCustomPlaybackForIOS10Plus(true); google.ima.settings.setLocale('cs'); google.ima.settings.setNumRedirects(10); // Create the ad display container. createAdDisplayContainer(); // Create ads loader. adsLoader = new google.ima.AdsLoader(adDisplayContainer); // Listen and respond to ads loaded and error events. adsLoader.addEventListener( google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED, onAdsManagerLoaded, false); adsLoader.addEventListener( google.ima.AdErrorEvent.Type.AD_ERROR, onAdError, false); // An event listener to tell the SDK that our content video // is completed so the SDK can play any post-roll ads. const contentEndedListener = function () { adsLoader.contentComplete(); }; videoContent.onended = contentEndedListener; // Request video ads. const adsRequest = new google.ima.AdsRequest(); adsRequest.adTagUrl = iinfoVastUrls[iinfoVastUrlIndex]; console.log('Preroll advert: ' + iinfoVastUrls[iinfoVastUrlIndex]); videoContent.muted = false; videoContent.volume = 1; // Specify the linear and nonlinear slot sizes. This helps the SDK to // select the correct creative if multiple are returned. // adsRequest.linearAdSlotWidth = prerollWidth; // adsRequest.linearAdSlotHeight = prerollHeight; adsRequest.nonLinearAdSlotWidth = 0; adsRequest.nonLinearAdSlotHeight = 0; adsLoader.requestAds(adsRequest); } function createAdDisplayContainer() { // We assume the adContainer is the DOM id of the element that will house // the ads. prerollDocument.getElementById('videoContent').style.display = 'none'; adDisplayContainer = new google.ima.AdDisplayContainer( prerollDocument.getElementById('adContainer'), videoContent); } function unmutePrerollAdvert() { adVolume = !adVolume; if (adVolume) { adsManager.setVolume(0.3); prerollDocument.getElementById('adMuteBtn').innerHTML = ''; } else { adsManager.setVolume(0); prerollDocument.getElementById('adMuteBtn').innerHTML = ''; } } function onAdsManagerLoaded(adsManagerLoadedEvent) { // Get the ads manager. const adsRenderingSettings = new google.ima.AdsRenderingSettings(); adsRenderingSettings.restoreCustomPlaybackStateOnAdBreakComplete = true; adsRenderingSettings.loadVideoTimeout = 12000; // videoContent should be set to the content video element. adsManager = adsManagerLoadedEvent.getAdsManager(videoContent, adsRenderingSettings); // Add listeners to the required events. adsManager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR, onAdError); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED, onContentPauseRequested); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED, onContentResumeRequested); adsManager.addEventListener( google.ima.AdEvent.Type.ALL_ADS_COMPLETED, onAdEvent); // Listen to any additional events, if necessary. adsManager.addEventListener(google.ima.AdEvent.Type.LOADED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.STARTED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.COMPLETE, onAdEvent); playAds(); } function playAds() { // Initialize the container. Must be done through a user action on mobile // devices. videoContent.load(); adDisplayContainer.initialize(); // setupDimensions(); try { // Initialize the ads manager. Ad rules playlist will start at this time. adsManager.init(1920, 1080, google.ima.ViewMode.NORMAL); // Call play to start showing the ad. Single video and overlay ads will // start at this time; the call will be ignored for ad rules. adsManager.start(); // window.addEventListener('resize', function (event) { // if (adsManager) { // setupDimensions(); // adsManager.resize(prerollWidth, prerollHeight, google.ima.ViewMode.NORMAL); // } // }); } catch (adError) { // An error may be thrown if there was a problem with the VAST response. // videoContent.play(); } } function onAdEvent(adEvent) { const ad = adEvent.getAd(); console.log('Preroll event: ' + adEvent.type); switch (adEvent.type) { case google.ima.AdEvent.Type.LOADED: if (!ad.isLinear()) { videoContent.play(); } prerollDocument.getElementById('adContainer').style.width = '100%'; prerollDocument.getElementById('adContainer').style.maxWidth = '640px'; prerollDocument.getElementById('adContainer').style.height = '360px'; break; case google.ima.AdEvent.Type.STARTED: window.addEventListener('scroll', onActiveView); if (ad.isLinear()) { intervalTimer = setInterval( function () { // Example: const remainingTime = adsManager.getRemainingTime(); // adsManager.pause(); }, 300); // every 300ms } prerollDocument.getElementById('adMuteBtn').style.display = 'block'; break; case google.ima.AdEvent.Type.ALL_ADS_COMPLETED: if (ad.isLinear()) { clearInterval(intervalTimer); } if (prerollLastError === 303) { playYtVideo(); } break; case google.ima.AdEvent.Type.COMPLETE: if (ad.isLinear()) { clearInterval(intervalTimer); } playYtVideo(); break; } } function onAdError(adErrorEvent) { console.log(adErrorEvent.getError()); prerollLastError = adErrorEvent.getError().getErrorCode(); if (!loadNext()) { playYtVideo(); } } function loadNext() { iinfoVastUrlIndex++; if (iinfoVastUrlIndex < iinfoVastUrls.length) { iinfoPrerollPosition.remove(); playPrerollAd(); } else { return false; } adVolume = 1; return true; } function onContentPauseRequested() { videoContent.pause(); } function onContentResumeRequested() { videoContent.play(); } function onActiveView() { if (prerollContainer) { const containerOffset = prerollContainer.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight/1 && containerOffset.bottom > 0.0) { if (prerollPaused) { adsManager.resume(); prerollPaused = false; } return true; } else { if (!prerollPaused) { adsManager.pause(); prerollPaused = true; } } } return false; } function playYtVideo() { iinfoPrerollPosition.remove(); youtubeIframe.style.display = 'block'; youtubeIframe.src += '&autoplay=1&mute=1'; } }