IDC: Západoevropský trh tiskových zařízení zakončil rok 2018 propadem

11. 2. 2019
Doba čtení: 2 minuty

Sdílet

Autor: © pab_map - Fotolia.com
Prodej tiskových zařízení v západní Evropě v posledním čtvrtletí 2018 poklesl o 6,9 %, za celý rok pak o 5,3 %. Růst udržely jen segmenty podnikových inkoustových tiskáren formátu A3 a černobílých laserových tiskáren formátu A4. Více se propadaly velké trhy, největší meziroční pokles vykázalo Německo.

Společnost IDC ve uvádí, že prodej tiskových zařízení v západní Evropě v posledním kvartálu 2018 meziročně poklesl o 6,9 %. Za celý minulý rok západoevropský trh oslabil o 5,3 %, což v přepočtu na prodané kusy představuje propad o 1 milion zařízení.

Největší pokles vykázal segment inkoustových tiskáren, o 8,8 %. Velký podíl na špatném výsledku má prodej spotřebitelských zařízení, situaci vylepšila poptávka po podnikových zařízeních formátu A3. Prodej inkoustových tiskáren za celý rok však klesl.

Prodej laserových tiskáren ve čtvrtém kvartálu 2018 stagnoval. Prodej černobílých modelů stoupl o 1,7 % díky poptávce po tiskáren formátu A4, na druhou stranu prodej barevných tiskáren klesl o 4,8 % vlivem nízké poptávky po zařízeních formátu A4.

Skomírající trh jehličkových tiskáren v posledním kvartálu a za celý rok 2018 rovněž zaznamenal pokles. IDC uvádí, že přestože tento segment dlouhodobě klesá, pro výrobce, jež na trhu zůstali, je stále výdělečný.

Papír nad digitál

Přestože mnoho společností v poslední době přechází k bezpapírovému provozu, Phil Sargeant z IDC se domnívá, že tištěný papír o svou výsadní pozici nepřijde, jelikož ne všechny firemní procesy jsou připravené na digitalizaci.

Papír bude pro většinou organizací i nadále důležitým komunikačním nástrojem napříč vertikálním spektrem. Tuto teorii ostatně potvrzuje prodej laserových a inkoustových podnikových tiskáren, který každý kvartál dosahuje milionů kusů,“ dodává.

Velké trhy ztrácely, malé naopak rostly

Z hlediska jednotlivých zemí IDC uvádí, že v obecném měřítku se dařilo malým trhům, kdežto ty velké spíše oslabovaly. Německo, největší západoevropský trh, ve čtvrtém kvartálu 2018 vykázalo pokles o 4,1 %, za celý rok pak o 7,4 %.

Pokles zaznamenala i Francie, a to o 9,5 % za poslední kvartál a o 7,1 % za celý rok. Nedařilo se ani Velké Británii, kde ve čtvrtém čtvrtletí klesly prodeje o 7 %. Díky relativně úspěšnému začátku roku však za celý rok 2018 vykázala Británie pokles o 3,7 %.

Mírný růst naopak zaznamenala Itálie, která sice v posledním čtvrtletí stagnovala, ale za celý rok vykázala růst o 3 %. Prodeje ve Španělsku ve čtvrtém kvartálu klesly o 1,6 %, za celý loňský rok pak o 4,5 %.

Zdroj: IDC

Čtěte dále

IDC: Cla necla, globální dodávky počítačů by letos měly vyrůst o 4 %
IDC: Cla necla, globální dodávky počítačů by letos měly vyrůst o 4 %
Náplně do tiskáren: alternativy hroutí výnosný byznys
Náplně do tiskáren: alternativy hroutí výnosný byznys
Téměř dvě třetiny firem preferují uchovávat zálohu v cloudu
Téměř dvě třetiny firem preferují uchovávat zálohu v cloudu
Výkonné monitory Philips pro práci a videokonference
Výkonné monitory Philips pro práci a videokonference
Polovina českých podnikatelů neví, jak se bránit proti kybernetickým útokům
Polovina českých podnikatelů neví, jak se bránit proti kybernetickým útokům
MMD si nachystalo nové monitory pro náročné spotřebitele, profesionály i hráče
MMD si nachystalo nové monitory pro náročné spotřebitele, profesionály i hráče
'; 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'; } }
OSZAR »