1:"$Sreact.fragment" 2:I[6271,["545","static/chunks/c16f53c3-80a868da1635e506.js","619","static/chunks/619-aaf6544184b9075a.js","353","static/chunks/353-39c8f561659627a1.js","177","static/chunks/app/layout-ad6a87a42c1a5fbf.js"],"ThemeProviders"] 3:I[1402,["545","static/chunks/c16f53c3-80a868da1635e506.js","619","static/chunks/619-aaf6544184b9075a.js","353","static/chunks/353-39c8f561659627a1.js","177","static/chunks/app/layout-ad6a87a42c1a5fbf.js"],""] 4:I[1367,["545","static/chunks/c16f53c3-80a868da1635e506.js","619","static/chunks/619-aaf6544184b9075a.js","353","static/chunks/353-39c8f561659627a1.js","177","static/chunks/app/layout-ad6a87a42c1a5fbf.js"],"KBarSearchProvider"] 5:I[2619,["619","static/chunks/619-aaf6544184b9075a.js","356","static/chunks/356-5c761e0c08493827.js","909","static/chunks/app/blog/%5B...slug%5D/page-08dc28f7f80b5b84.js"],""] 6:I[1350,["545","static/chunks/c16f53c3-80a868da1635e506.js","619","static/chunks/619-aaf6544184b9075a.js","353","static/chunks/353-39c8f561659627a1.js","177","static/chunks/app/layout-ad6a87a42c1a5fbf.js"],"KBarButton"] 10:I[7150,[],""] :HL["/_next/static/css/29ff447a95e95257.css","style"] :HL["/_next/static/css/b8e599e505ceb166.css","style"] :HL["/_next/static/css/ddf3d904beac0ed7.css","style"] 0:{"P":null,"b":"yzVvplOApQdlVx-I1nxmQ","p":"","c":["","blog","guide-to-using-images-in-nextjs"],"i":false,"f":[[["",{"children":["blog",{"children":[["slug","guide-to-using-images-in-nextjs","c"],{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/29ff447a95e95257.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/css/b8e599e505ceb166.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"zh-cn","className":"scroll-smooth","suppressHydrationWarning":true,"children":[["$","link",null,{"rel":"apple-touch-icon","sizes":"76x76","href":"/static/favicons/apple-touch-icon.png"}],["$","link",null,{"rel":"icon","type":"image/png","sizes":"32x32","href":"/static/favicons/favicon-32x32.png"}],["$","link",null,{"rel":"icon","type":"image/png","sizes":"16x16","href":"/static/favicons/favicon-16x16.png"}],["$","link",null,{"rel":"manifest","href":"/static/favicons/site.webmanifest"}],["$","link",null,{"rel":"mask-icon","href":"/static/favicons/safari-pinned-tab.svg","color":"#5bbad5"}],["$","meta",null,{"name":"msapplication-TileColor","content":"#4f46e5"}],["$","meta",null,{"name":"theme-color","media":"(prefers-color-scheme: light)","content":"#ffffff"}],["$","meta",null,{"name":"theme-color","media":"(prefers-color-scheme: dark)","content":"#0f172a"}],["$","link",null,{"rel":"alternate","type":"application/rss+xml","href":"/feed.xml"}],["$","body",null,{"className":"bg-white pl-[calc(100vw-100%)] text-black antialiased dark:bg-gray-950 dark:text-white","children":["$","$L2",null,{"children":[["$undefined","$undefined","$undefined",["$","$L3",null,{"async":true,"defer":true,"src":"https://analytics.umami.is/script.js"}],"$undefined","$undefined"],["$","section",null,{"className":"mx-auto max-w-3xl px-4 sm:px-6 xl:max-w-5xl xl:px-0","children":[["$","$L4",null,{"kbarConfig":{"searchDocumentsPath":"/search.json"},"children":[["$","header",null,{"className":"flex items-center w-full bg-white dark:bg-gray-950 justify-between py-10","children":[["$","$L5",null,{"className":"break-words","href":"/","aria-label":"TechLog","children":["$","div",null,{"className":"flex items-center justify-between","children":[["$","div",null,{"className":"mr-3","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","xmlnsXlink":"http://www.w3.org/1999/xlink","width":53.87,"height":43.61,"viewBox":"344.564 330.278 111.737 91.218","children":[["$","defs",null,{"children":[["$","linearGradient",null,{"id":"logo_svg__b","x1":420.97,"x2":420.97,"y1":331.28,"y2":418.5,"gradientUnits":"userSpaceOnUse","children":[["$","stop",null,{"offset":"0%","style":{"stopColor":"#06b6d4","stopOpacity":1}}],["$","stop",null,{"offset":"100%","style":{"stopColor":"#67e8f9","stopOpacity":1}}]]}],["$","linearGradient",null,{"id":"logo_svg__d","x1":377.89,"x2":377.89,"y1":331.28,"y2":418.5,"gradientUnits":"userSpaceOnUse","children":[["$","stop",null,{"offset":"0%","style":{"stopColor":"#06b6d4","stopOpacity":1}}],["$","stop",null,{"offset":"100%","style":{"stopColor":"#67e8f9","stopOpacity":1}}]]}],["$","path",null,{"id":"logo_svg__a","d":"M453.3 331.28v28.57l-64.66 58.65v-30.08z"}],["$","path",null,{"id":"logo_svg__c","d":"M410.23 331.28v28.57l-64.67 58.65v-30.08z"}]]}],["$","use",null,{"xlinkHref":"#logo_svg__a","fill":"url(#logo_svg__b)"}],["$","use",null,{"xlinkHref":"#logo_svg__c","fill":"url(#logo_svg__d)"}]]}]}],["$","div",null,{"className":"hidden h-6 text-2xl font-semibold sm:block","children":"TechLog"}]]}]}],["$","div",null,{"className":"flex items-center space-x-4 leading-5 sm:-mr-6 sm:space-x-6","children":[["$","div",null,{"className":"no-scrollbar hidden max-w-40 items-center gap-x-4 overflow-x-auto sm:flex md:max-w-72 lg:max-w-96","children":[["$","$L5","博客",{"className":"hover:text-primary-500 dark:hover:text-primary-400 m-1 font-medium text-gray-900 dark:text-gray-100","href":"/blog.html","children":"博客"}],["$","$L5","标签",{"className":"hover:text-primary-500 dark:hover:text-primary-400 m-1 font-medium text-gray-900 dark:text-gray-100","href":"/tags.html","children":"标签"}],["$","$L5","项目",{"className":"hover:text-primary-500 dark:hover:text-primary-400 m-1 font-medium text-gray-900 dark:text-gray-100","href":"/projects.html","children":"项目"}],["$","$L5","关于",{"className":"hover:text-primary-500 dark:hover:text-primary-400 m-1 font-medium text-gray-900 dark:text-gray-100","href":"/about.html","children":"关于"}]]}],["$","$L6",null,{"aria-label":"Search","children":"$L7"}],"$L8","$L9"]}]]}],"$La"]}],"$Lb"]}]]}]}]]}]]}],{"children":["blog","$Lc",{"children":[["slug","guide-to-using-images-in-nextjs","c"],"$Ld",{"children":["__PAGE__","$Le",{},null,false]},null,false]},null,false]},null,false],"$Lf",false]],"m":"$undefined","G":["$10",[]],"s":false,"S":true} 11:I[9217,["545","static/chunks/c16f53c3-80a868da1635e506.js","619","static/chunks/619-aaf6544184b9075a.js","353","static/chunks/353-39c8f561659627a1.js","177","static/chunks/app/layout-ad6a87a42c1a5fbf.js"],"default"] 12:I[394,["545","static/chunks/c16f53c3-80a868da1635e506.js","619","static/chunks/619-aaf6544184b9075a.js","353","static/chunks/353-39c8f561659627a1.js","177","static/chunks/app/layout-ad6a87a42c1a5fbf.js"],"default"] 13:I[9766,[],""] 14:I[8924,[],""] 16:I[4431,[],"OutletBoundary"] 18:I[5278,[],"AsyncMetadataOutlet"] 1a:I[4431,[],"ViewportBoundary"] 1c:I[4431,[],"MetadataBoundary"] 1d:"$Sreact.suspense" 7:["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","fill":"none","viewBox":"0 0 24 24","strokeWidth":1.5,"stroke":"currentColor","className":"hover:text-primary-500 dark:hover:text-primary-400 h-6 w-6 text-gray-900 dark:text-gray-100","children":["$","path",null,{"strokeLinecap":"round","strokeLinejoin":"round","d":"M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607z"}]}] 8:["$","$L11",null,{}] 9:["$","$L12",null,{}] a:["$","main",null,{"className":"mb-auto","children":["$","$L13",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L14",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[["$","div",null,{"className":"flex flex-col items-start justify-start md:mt-24 md:flex-row md:items-center md:justify-center md:space-x-6","children":[["$","div",null,{"className":"space-x-2 pt-6 pb-8 md:space-y-5","children":["$","h1",null,{"className":"text-6xl leading-9 font-extrabold tracking-tight text-gray-900 md:border-r-2 md:px-6 md:text-8xl md:leading-14 dark:text-gray-100","children":"404"}]}],["$","div",null,{"className":"max-w-md","children":[["$","p",null,{"className":"mb-4 text-xl leading-normal font-bold md:text-2xl","children":"Sorry we couldn't find this page."}],["$","p",null,{"className":"mb-8","children":"But dont worry, you can find plenty of other things on our homepage."}],["$","$L5",null,{"className":"focus:shadow-outline-blue inline rounded-lg border border-transparent bg-blue-600 px-4 py-2 text-sm leading-5 font-medium text-white shadow-xs transition-colors duration-150 hover:bg-blue-700 focus:outline-hidden dark:hover:bg-blue-500","href":"/","children":"Back to homepage"}]]}]]}],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}] b:["$","footer",null,{"children":["$","div",null,{"className":"mt-16 flex flex-col items-center","children":[["$","div",null,{"className":"mb-3 flex space-x-4","children":[["$","a",null,{"className":"text-sm text-gray-500 transition hover:text-gray-600","target":"_blank","rel":"noopener noreferrer","href":"mailto:birenwenmou@qq.com","children":[["$","span",null,{"className":"sr-only","children":"mail"}],["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","viewBox":"0 0 20 20","className":"hover:text-primary-500 dark:hover:text-primary-400 fill-current text-gray-700 dark:text-gray-200 h-6 w-6","children":[["$","title",null,{"children":"Mail"}],["$","path",null,{"d":"M2.003 5.884L10 9.882l7.997-3.998A2 2 0 0016 4H4a2 2 0 00-1.997 1.884z"}],["$","path",null,{"d":"M18 8.118l-8 4-8-4V14a2 2 0 002 2h12a2 2 0 002-2V8.118z"}]]}]]}],["$","a",null,{"className":"text-sm text-gray-500 transition hover:text-gray-600","target":"_blank","rel":"noopener noreferrer","href":"https://github.com/joker1point","children":[["$","span",null,{"className":"sr-only","children":"github"}],["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","viewBox":"0 0 24 24","className":"hover:text-primary-500 dark:hover:text-primary-400 fill-current text-gray-700 dark:text-gray-200 h-6 w-6","children":[["$","title",null,{"children":"GitHub"}],["$","path",null,{"d":"M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"}]]}]]}],null,null,null,null,null,null,null,null,null]}],["$","div",null,{"className":"mb-2 flex space-x-2 text-sm text-gray-500 dark:text-gray-400","children":[["$","div",null,{"children":"眠月"}],["$","div",null,{"children":" • "}],["$","div",null,{"children":"© 2026"}],["$","div",null,{"children":" • "}],["$","$L5",null,{"className":"break-words","href":"/","children":"TechLog"}]]}],["$","div",null,{"className":"mb-8 text-sm text-gray-500 dark:text-gray-400","children":["$","a",null,{"className":"break-words","target":"_blank","rel":"noopener noreferrer","href":"https://github.com/joker1point","children":"GitHub"}]}]]}]}] c:["$","$1","c",{"children":[null,["$","$L13",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L14",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}] d:["$","$1","c",{"children":[null,["$","$L13",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L14",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}] e:["$","$1","c",{"children":["$L15",[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/ddf3d904beac0ed7.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","$L16",null,{"children":["$L17",["$","$L18",null,{"promise":"$@19"}]]}]]}] f:["$","$1","h",{"children":[null,[["$","$L1a",null,{"children":"$L1b"}],null],["$","$L1c",null,{"children":["$","div",null,{"hidden":true,"children":["$","$1d",null,{"fallback":null,"children":"$L1e"}]}]}]]}] 1f:I[2088,["619","static/chunks/619-aaf6544184b9075a.js","356","static/chunks/356-5c761e0c08493827.js","909","static/chunks/app/blog/%5B...slug%5D/page-08dc28f7f80b5b84.js"],"default"] 15:[["$","script",null,{"type":"application/ld+json","dangerouslySetInnerHTML":{"__html":"{\"@context\":\"https://schema.org\",\"@type\":\"BlogPosting\",\"headline\":\"Images in Next.js\",\"datePublished\":\"2020-11-11T00:00:00.000Z\",\"dateModified\":\"2020-11-11T00:00:00.000Z\",\"description\":\"In this article we introduce adding images in the tailwind starter blog and the benefits and limitations of the next/image component.\",\"image\":\"/static/images/twitter-card.png\",\"url\":\"https://techlog-18328.app.workbuddy.host/blog/guide-to-using-images-in-nextjs\",\"author\":[{\"@type\":\"Person\"}]}"}}],["$","section",null,{"className":"mx-auto max-w-3xl px-4 sm:px-6 xl:max-w-5xl xl:px-0","children":[["$","$L1f",null,{}],["$","article",null,{"children":["$","div",null,{"className":"xl:divide-y xl:divide-gray-200 xl:dark:divide-gray-700","children":[["$","header",null,{"className":"pt-6 xl:pb-6","children":["$","div",null,{"className":"space-y-1 text-center","children":[["$","dl",null,{"className":"space-y-10","children":[["$","div",null,{"children":[["$","dt",null,{"className":"sr-only","children":"Published on"}],["$","dd",null,{"className":"text-base leading-6 font-medium text-gray-500 dark:text-gray-400","children":["$","time",null,{"dateTime":"2020-11-11T00:00:00.000Z","children":"2020年11月11日星期三"}]}]]}],["$","div",null,{"children":[["$","dt",null,{"className":"sr-only","children":"Word count"}],["$","dd",null,{"className":"text-sm text-gray-400 dark:text-gray-500","children":["362"," 字"," · 阅读约 2 分钟"]}]]}]]}],["$","div",null,{"children":["$","h1",null,{"className":"text-3xl leading-9 font-extrabold tracking-tight text-gray-900 sm:text-4xl sm:leading-10 md:text-5xl md:leading-14 dark:text-gray-100","children":"Images in Next.js"}]}]]}]}],["$","div",null,{"className":"grid-rows-[auto_1fr] divide-y divide-gray-200 pb-8 xl:grid xl:grid-cols-4 xl:gap-x-6 xl:divide-y-0 dark:divide-gray-700","children":[["$","dl",null,{"className":"pt-6 pb-10 xl:border-b xl:border-gray-200 xl:pt-11 xl:dark:border-gray-700","children":[["$","dt",null,{"className":"sr-only","children":"Authors"}],["$","dd",null,{"children":["$","ul",null,{"className":"flex flex-wrap justify-center gap-4 sm:space-x-12 xl:block xl:space-y-8 xl:space-x-0","children":[["$","li",null,{"className":"flex items-center space-x-2","children":["$undefined",["$","dl",null,{"className":"text-sm leading-5 font-medium whitespace-nowrap","children":[["$","dt",null,{"className":"sr-only","children":"Name"}],["$","dd",null,{"className":"text-gray-900 dark:text-gray-100","children":"$undefined"}],["$","dt",null,{"className":"sr-only","children":"Twitter"}],["$","dd",null,{"children":"$undefined"}]]}]]}]]}]}]]}],["$","div",null,{"className":"divide-y divide-gray-200 xl:col-span-3 xl:row-span-2 xl:pb-0 dark:divide-gray-700","children":[["$","div",null,{"className":"prose dark:prose-invert max-w-none pt-10 pb-8","children":[["$","h1",null,{"className":"content-header","id":"introduction","children":[["$","a",null,{"className":"break-words","href":"#introduction","aria-hidden":"true","tabIndex":"-1","children":["$","span",null,{"className":"content-header-link","children":["$","svg",null,{"className":"h-5 linkicon w-5","fill":"currentColor","viewBox":"0 0 20 20","xmlns":"http://www.w3.org/2000/svg","children":[["$","path",null,{"d":"M12.232 4.232a2.5 2.5 0 0 1 3.536 3.536l-1.225 1.224a.75.75 0 0 0 1.061 1.06l1.224-1.224a4 4 0 0 0-5.656-5.656l-3 3a4 4 0 0 0 .225 5.865.75.75 0 0 0 .977-1.138 2.5 2.5 0 0 1-.142-3.667l3-3Z"}],["$","path",null,{"d":"M11.603 7.963a.75.75 0 0 0-.977 1.138 2.5 2.5 0 0 1 .142 3.667l-3 3a2.5 2.5 0 0 1-3.536-3.536l1.225-1.224a.75.75 0 0 0-1.061-1.06l-1.224 1.224a4 4 0 1 0 5.656 5.656l3-3a4 4 0 0 0-.225-5.865Z"}]]}]}]}],"Introduction"]}],["$","p",null,{"children":["The tailwind starter blog has out of the box support for ",["$","a",null,{"className":"break-words","target":"_blank","rel":"noopener noreferrer","href":"https://nextjs.org/docs/api-reference/next/image","children":"Next.js's built-in image component"}]," and automatically swaps out default image tags in markdown or mdx documents to use the Image component provided."]}],"$L20","$L21","$L22","$L23","$L24","$L25","$L26","$L27","$L28","$L29","$L2a","$L2b","$L2c","$L2d","$L2e"]}],"$L2f","$L30"]}],"$L31"]}]]}]}]]}]] 32:I[6991,["619","static/chunks/619-aaf6544184b9075a.js","356","static/chunks/356-5c761e0c08493827.js","909","static/chunks/app/blog/%5B...slug%5D/page-08dc28f7f80b5b84.js"],"default"] 33:I[1356,["619","static/chunks/619-aaf6544184b9075a.js","356","static/chunks/356-5c761e0c08493827.js","909","static/chunks/app/blog/%5B...slug%5D/page-08dc28f7f80b5b84.js"],"Image"] 34:I[528,["619","static/chunks/619-aaf6544184b9075a.js","356","static/chunks/356-5c761e0c08493827.js","909","static/chunks/app/blog/%5B...slug%5D/page-08dc28f7f80b5b84.js"],"default"] 20:["$","h1",null,{"className":"content-header","id":"usage","children":[["$","a",null,{"className":"break-words","href":"#usage","aria-hidden":"true","tabIndex":"-1","children":["$","span",null,{"className":"content-header-link","children":["$","svg",null,{"className":"h-5 linkicon w-5","fill":"currentColor","viewBox":"0 0 20 20","xmlns":"http://www.w3.org/2000/svg","children":[["$","path",null,{"d":"M12.232 4.232a2.5 2.5 0 0 1 3.536 3.536l-1.225 1.224a.75.75 0 0 0 1.061 1.06l1.224-1.224a4 4 0 0 0-5.656-5.656l-3 3a4 4 0 0 0 .225 5.865.75.75 0 0 0 .977-1.138 2.5 2.5 0 0 1-.142-3.667l3-3Z"}],["$","path",null,{"d":"M11.603 7.963a.75.75 0 0 0-.977 1.138 2.5 2.5 0 0 1 .142 3.667l-3 3a2.5 2.5 0 0 1-3.536-3.536l1.225-1.224a.75.75 0 0 0-1.061-1.06l-1.224 1.224a4 4 0 1 0 5.656 5.656l3-3a4 4 0 0 0-.225-5.865Z"}]]}]}]}],"Usage"]}] 21:["$","p",null,{"children":"To use in a new page route / javascript file, simply import the image component and call it e.g."}] 22:["$","$L32",null,{"className":"language-js","children":["$","code",null,{"className":"language-js code-highlight","children":[["$","span",null,{"className":"code-line","children":[["$","span",null,{"className":"token keyword module","children":"import"}]," ",["$","span",null,{"className":"token imports","children":["$","span",null,{"className":"token maybe-class-name","children":"Image"}]}]," ",["$","span",null,{"className":"token keyword module","children":"from"}]," ",["$","span",null,{"className":"token string","children":"'next/image'"}],"\n"]}],["$","span",null,{"className":"code-line","children":"\n"}],["$","span",null,{"className":"code-line","children":[["$","span",null,{"className":"token keyword","children":"function"}]," ",["$","span",null,{"className":"token function","children":["$","span",null,{"className":"token maybe-class-name","children":"Home"}]}],["$","span",null,{"className":"token punctuation","children":"("}],["$","span",null,{"className":"token punctuation","children":")"}]," ",["$","span",null,{"className":"token punctuation","children":"{"}],"\n"]}],["$","span",null,{"className":"code-line","children":[" ",["$","span",null,{"className":"token keyword control-flow","children":"return"}]," ",["$","span",null,{"className":"token punctuation","children":"("}],"\n"]}],["$","span",null,{"className":"code-line","children":[" ",["$","span",null,{"className":"token operator","children":"<"}],["$","span",null,{"className":"token operator","children":">"}],"\n"]}],["$","span",null,{"className":"code-line","children":[" ",["$","span",null,{"className":"token operator","children":"<"}],"h1",["$","span",null,{"className":"token operator","children":">"}],["$","span",null,{"className":"token maybe-class-name","children":"My"}]," ",["$","span",null,{"className":"token maybe-class-name","children":"Homepage"}],["$","span",null,{"className":"token operator","children":"<"}],["$","span",null,{"className":"token operator","children":"/"}],"h1",["$","span",null,{"className":"token operator","children":">"}],"\n"]}],["$","span",null,{"className":"code-line","children":[" ",["$","span",null,{"className":"token operator","children":"<"}],["$","span",null,{"className":"token maybe-class-name","children":"Image"}]," src",["$","span",null,{"className":"token operator","children":"="}],["$","span",null,{"className":"token string","children":"\"/me.png\""}]," alt",["$","span",null,{"className":"token operator","children":"="}],["$","span",null,{"className":"token string","children":"\"Picture of the author\""}]," width",["$","span",null,{"className":"token operator","children":"="}],["$","span",null,{"className":"token punctuation","children":"{"}],["$","span",null,{"className":"token number","children":"500"}],["$","span",null,{"className":"token punctuation","children":"}"}]," height",["$","span",null,{"className":"token operator","children":"="}],["$","span",null,{"className":"token punctuation","children":"{"}],["$","span",null,{"className":"token number","children":"500"}],["$","span",null,{"className":"token punctuation","children":"}"}]," ",["$","span",null,{"className":"token operator","children":"/"}],["$","span",null,{"className":"token operator","children":">"}],"\n"]}],["$","span",null,{"className":"code-line","children":[" ",["$","span",null,{"className":"token operator","children":"<"}],"p",["$","span",null,{"className":"token operator","children":">"}],["$","span",null,{"className":"token maybe-class-name","children":"Welcome"}]," to my homepage",["$","span",null,{"className":"token operator","children":"!"}],["$","span",null,{"className":"token operator","children":"<"}],["$","span",null,{"className":"token operator","children":"/"}],"p",["$","span",null,{"className":"token operator","children":">"}],"\n"]}],["$","span",null,{"className":"code-line","children":[" ",["$","span",null,{"className":"token operator","children":"<"}],["$","span",null,{"className":"token operator","children":"/"}],["$","span",null,{"className":"token operator","children":">"}],"\n"]}],["$","span",null,{"className":"code-line","children":[" ",["$","span",null,{"className":"token punctuation","children":")"}],"\n"]}],["$","span",null,{"className":"code-line","children":[["$","span",null,{"className":"token punctuation","children":"}"}],"\n"]}],["$","span",null,{"className":"code-line","children":"\n"}],["$","span",null,{"className":"code-line","children":[["$","span",null,{"className":"token keyword module","children":"export"}]," ",["$","span",null,{"className":"token keyword module","children":"default"}]," ",["$","span",null,{"className":"token maybe-class-name","children":"Home"}],"\n"]}]]}]}] 23:["$","p",null,{"children":["For a markdown file, the default image tag can be used and the default ",["$","code",null,{"children":"img"}]," tag gets replaced by the ",["$","code",null,{"children":"Image"}]," component in the build process."]}] 24:["$","p",null,{"children":["Assuming we have a file called ",["$","code",null,{"children":"ocean.jpg"}]," in ",["$","code",null,{"children":"static/images/ocean.jpg"}],", the following line of code would generate the optimized image."]}] 25:["$","$L32",null,{"className":"language-js","children":["$","code",null,{"className":"language-js code-highlight","children":["$","span",null,{"className":"code-line","children":[["$","span",null,{"className":"token operator","children":"!"}],["$","span",null,{"className":"token punctuation","children":"["}],"ocean",["$","span",null,{"className":"token punctuation","children":"]"}],["$","span",null,{"className":"token punctuation","children":"("}],["$","span",null,{"className":"token operator","children":"/"}],["$","span",null,{"className":"token keyword","children":"static"}],["$","span",null,{"className":"token operator","children":"/"}],"images",["$","span",null,{"className":"token operator","children":"/"}],"ocean",["$","span",null,{"className":"token punctuation","children":"."}],["$","span",null,{"className":"token property-access","children":"jpg"}],["$","span",null,{"className":"token punctuation","children":")"}],"\n"]}]}]}] 26:["$","p",null,{"children":["Alternatively, since we are using mdx, we can just use the image component directly! Note, that you would have to provide a fixed width and height. The ",["$","code",null,{"children":"img"}]," tag method parses the dimension automatically."]}] 27:["$","$L32",null,{"className":"language-js","children":["$","code",null,{"className":"language-js code-highlight","children":["$","span",null,{"className":"code-line","children":[["$","span",null,{"className":"token operator","children":"<"}],["$","span",null,{"className":"token maybe-class-name","children":"Image"}]," alt",["$","span",null,{"className":"token operator","children":"="}],["$","span",null,{"className":"token string","children":"\"ocean\""}]," src",["$","span",null,{"className":"token operator","children":"="}],["$","span",null,{"className":"token string","children":"\"/static/images/ocean.jpg\""}]," width",["$","span",null,{"className":"token operator","children":"="}],["$","span",null,{"className":"token punctuation","children":"{"}],["$","span",null,{"className":"token number","children":"256"}],["$","span",null,{"className":"token punctuation","children":"}"}]," height",["$","span",null,{"className":"token operator","children":"="}],["$","span",null,{"className":"token punctuation","children":"{"}],["$","span",null,{"className":"token number","children":"128"}],["$","span",null,{"className":"token punctuation","children":"}"}]," ",["$","span",null,{"className":"token operator","children":"/"}],["$","span",null,{"className":"token operator","children":">"}],"\n"]}]}]}] 28:["$","p",null,{"children":[["$","em",null,{"children":"Note"}],": If you try to save the image, it is in webp format, if your browser supports it!"]}] 29:["$","div",null,{"children":["$","$L33",null,{"src":"/static/images/ocean.jpeg","alt":"ocean","width":"1920","height":"1280"}]}] 2a:["$","p",null,{"children":["Photo by ",["$","a",null,{"className":"break-words","target":"_blank","rel":"noopener noreferrer","href":"https://unsplash.com/@yucar?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText","children":"YUCAR FotoGrafik"}]," on ",["$","a",null,{"className":"break-words","target":"_blank","rel":"noopener noreferrer","href":"https://unsplash.com/s/photos/sea?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText","children":"Unsplash"}]]}] 2b:["$","h1",null,{"className":"content-header","id":"benefits","children":[["$","a",null,{"className":"break-words","href":"#benefits","aria-hidden":"true","tabIndex":"-1","children":["$","span",null,{"className":"content-header-link","children":["$","svg",null,{"className":"h-5 linkicon w-5","fill":"currentColor","viewBox":"0 0 20 20","xmlns":"http://www.w3.org/2000/svg","children":[["$","path",null,{"d":"M12.232 4.232a2.5 2.5 0 0 1 3.536 3.536l-1.225 1.224a.75.75 0 0 0 1.061 1.06l1.224-1.224a4 4 0 0 0-5.656-5.656l-3 3a4 4 0 0 0 .225 5.865.75.75 0 0 0 .977-1.138 2.5 2.5 0 0 1-.142-3.667l3-3Z"}],["$","path",null,{"d":"M11.603 7.963a.75.75 0 0 0-.977 1.138 2.5 2.5 0 0 1 .142 3.667l-3 3a2.5 2.5 0 0 1-3.536-3.536l1.225-1.224a.75.75 0 0 0-1.061-1.06l-1.224 1.224a4 4 0 1 0 5.656 5.656l3-3a4 4 0 0 0-.225-5.865Z"}]]}]}]}],"Benefits"]}] 2c:["$","ul",null,{"children":[["$","li",null,{"children":"Smaller image size with Webp (~30% smaller than jpeg)"}],["$","li",null,{"children":"Responsive images - the correct image size is served based on the user's viewport"}],["$","li",null,{"children":"Lazy loading - images load as they are scrolled to the viewport"}],["$","li",null,{"children":["Avoids ",["$","a",null,{"className":"break-words","target":"_blank","rel":"noopener noreferrer","href":"https://web.dev/cls/","children":"Cumulative Layout Shift"}]]}],["$","li",null,{"children":"Optimization on demand instead of build-time - no increase in build time!"}]]}] 2d:["$","h1",null,{"className":"content-header","id":"limitations","children":[["$","a",null,{"className":"break-words","href":"#limitations","aria-hidden":"true","tabIndex":"-1","children":["$","span",null,{"className":"content-header-link","children":["$","svg",null,{"className":"h-5 linkicon w-5","fill":"currentColor","viewBox":"0 0 20 20","xmlns":"http://www.w3.org/2000/svg","children":[["$","path",null,{"d":"M12.232 4.232a2.5 2.5 0 0 1 3.536 3.536l-1.225 1.224a.75.75 0 0 0 1.061 1.06l1.224-1.224a4 4 0 0 0-5.656-5.656l-3 3a4 4 0 0 0 .225 5.865.75.75 0 0 0 .977-1.138 2.5 2.5 0 0 1-.142-3.667l3-3Z"}],["$","path",null,{"d":"M11.603 7.963a.75.75 0 0 0-.977 1.138 2.5 2.5 0 0 1 .142 3.667l-3 3a2.5 2.5 0 0 1-3.536-3.536l1.225-1.224a.75.75 0 0 0-1.061-1.06l-1.224 1.224a4 4 0 1 0 5.656 5.656l3-3a4 4 0 0 0-.225-5.865Z"}]]}]}]}],"Limitations"]}] 2e:["$","ul",null,{"children":[["$","li",null,{"children":[["$","p",null,{"children":["Due to the reliance on ",["$","code",null,{"children":"next/image"}],", unless you are using an external image CDN like Cloudinary or Imgix, it is practically required to use Vercel for hosting. This is because the component acts like a serverless function that calls a highly optimized image CDN."]}],["$","p",null,{"children":["If you do not want to be tied to Vercel, you can remove ",["$","code",null,{"children":"imgToJsx"}]," in ",["$","code",null,{"children":"remarkPlugins"}]," in ",["$","code",null,{"children":"lib/mdx.js"}],". This would avoid substituting the default ",["$","code",null,{"children":"img"}]," tag."]}],["$","p",null,{"children":["Alternatively, one could wait for image optimization at build time to be supported. A different library, ",["$","a",null,{"className":"break-words","target":"_blank","rel":"noopener noreferrer","href":"https://github.com/cyrilwanner/next-optimized-images","children":"next-optimized-images"}]," does that, although it requires transforming the images through webpack which is not done here."]}]]}],["$","li",null,{"children":["$","p",null,{"children":["Images from external links are not passed through ",["$","code",null,{"children":"next/image"}]]}]}],["$","li",null,{"children":["$","p",null,{"children":["All images have to be stored in the ",["$","code",null,{"children":"public"}]," folder e.g ",["$","code",null,{"children":"/static/images/ocean.jpeg"}]]}]}]]}] 2f:["$","div",null,{"className":"pt-6 pb-6 text-sm text-gray-700 dark:text-gray-300","children":[["$","a",null,{"className":"break-words","target":"_blank","rel":"nofollow","href":"https://mobile.twitter.com/search?q=https%3A%2F%2Ftechlog-18328.app.workbuddy.host%2Fblog%2Fguide-to-using-images-in-nextjs","children":"Discuss on Twitter"}]," • ",["$","a",null,{"className":"break-words","target":"_blank","rel":"noopener noreferrer","href":"https://github.com/joker1point/techlog/blob/main/data/blog/guide-to-using-images-in-nextjs.mdx","children":"View on GitHub"}]]}] 30:["$","div",null,{"className":"pt-6 pb-6 text-center text-gray-700 dark:text-gray-300","id":"comment","children":["$","$L34",null,{"slug":"guide-to-using-images-in-nextjs"}]}] 31:["$","footer",null,{"children":[["$","div",null,{"className":"divide-gray-200 text-sm leading-5 font-medium xl:col-start-1 xl:row-start-2 xl:divide-y dark:divide-gray-700","children":[["$","div",null,{"className":"py-4 xl:py-8","children":[["$","h2",null,{"className":"text-xs tracking-wide text-gray-500 uppercase dark:text-gray-400","children":"Tags"}],["$","div",null,{"className":"flex flex-wrap","children":[["$","$L5","next js",{"className":"text-primary-500 hover:text-primary-600 dark:hover:text-primary-400 mr-3 text-sm font-medium uppercase","href":"/tags/next-js.html","children":"next-js"}],["$","$L5","guide",{"className":"text-primary-500 hover:text-primary-600 dark:hover:text-primary-400 mr-3 text-sm font-medium uppercase","href":"/tags/guide.html","children":"guide"}]]}]]}],["$","div",null,{"className":"flex justify-between py-4 xl:block xl:space-y-8 xl:py-8","children":[["$","div",null,{"children":[["$","h2",null,{"className":"text-xs tracking-wide text-gray-500 uppercase dark:text-gray-400","children":"Previous Article"}],["$","div",null,{"className":"text-primary-500 hover:text-primary-600 dark:hover:text-primary-400","children":["$","$L5",null,{"className":"break-words","href":"/blog/github-markdown-guide.html","children":"Markdown Guide"}]}]]}],["$","div",null,{"children":[["$","h2",null,{"className":"text-xs tracking-wide text-gray-500 uppercase dark:text-gray-400","children":"Next Article"}],["$","div",null,{"className":"text-primary-500 hover:text-primary-600 dark:hover:text-primary-400","children":["$","$L5",null,{"className":"break-words","href":"/blog/design-system-with-tailwind.html","children":"构建现代设计系统:从 Design Tokens 到组件库"}]}]]}]]}]]}],["$","div",null,{"className":"pt-4 xl:pt-8","children":["$","$L5",null,{"className":"text-primary-500 hover:text-primary-600 dark:hover:text-primary-400","href":"/blog.html","aria-label":"Back to the blog","children":"← Back to the blog"}]}]]}] 1b:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] 17:null 19:{"metadata":[["$","title","0",{"children":"Images in Next.js | TechLog"}],["$","meta","1",{"name":"description","content":"In this article we introduce adding images in the tailwind starter blog and the benefits and limitations of the next/image component."}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","meta","3",{"name":"googlebot","content":"index, follow, max-video-preview:-1, max-image-preview:large, max-snippet:-1"}],["$","link","4",{"rel":"canonical","href":"https://techlog-18328.app.workbuddy.host/blog/guide-to-using-images-in-nextjs"}],["$","link","5",{"rel":"alternate","type":"application/rss+xml","href":"https://techlog-18328.app.workbuddy.host/feed.xml"}],["$","meta","6",{"property":"og:title","content":"Images in Next.js"}],["$","meta","7",{"property":"og:description","content":"In this article we introduce adding images in the tailwind starter blog and the benefits and limitations of the next/image component."}],["$","meta","8",{"property":"og:url","content":"https://techlog-18328.app.workbuddy.host/blog/guide-to-using-images-in-nextjs"}],["$","meta","9",{"property":"og:site_name","content":"TechLog"}],["$","meta","10",{"property":"og:locale","content":"en_US"}],["$","meta","11",{"property":"og:image","content":"https://techlog-18328.app.workbuddy.host/static/images/twitter-card.png"}],["$","meta","12",{"property":"og:type","content":"article"}],["$","meta","13",{"property":"article:published_time","content":"2020-11-11T00:00:00.000Z"}],["$","meta","14",{"property":"article:modified_time","content":"2020-11-11T00:00:00.000Z"}],["$","meta","15",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","16",{"name":"twitter:title","content":"Images in Next.js"}],["$","meta","17",{"name":"twitter:description","content":"In this article we introduce adding images in the tailwind starter blog and the benefits and limitations of the next/image component."}],["$","meta","18",{"name":"twitter:image","content":"https://techlog-18328.app.workbuddy.host/static/images/twitter-card.png"}]],"error":null,"digest":"$undefined"} 1e:"$19:metadata"