1import{_ as te}from"./Bd0f9Qs1.js";import{_ as oe}from"./B2sMSdD6.js";import{_ as ie}from"./D-lNPkbW.js";import{_ as ae}from"./CJl4j3ov.js";import{_ as se}from"./Cp2jbVXz.js";import{e as ne,g as re,h as le,c as p,a as e,b as n,u as a,w as g,k as z,m as de,p as me,l as I,o as m,T as R,U as H,t as c,F as b,r as _,i as A,f as ce,_ as pe}from"./D-nGNtiX.js";import{u as ge}from"./C7C9uT-e.js";import{u as xe}from"./BPbSWU5D.js";import{u as ue}from"./e2eawtfc.js";import{u as he}from"./BLLGlMtW.js";import"./BFcO_e5-.js";import"./BLgEGyUv.js";import"./B81FB3ZV.js";import"./BFNxxS5g.js";import"./B4h6jbmO.js";import"./BwAnmAu4.js";import"./RrcQCMRT.js";import"./QVcxE1KH.js";import"./x2dlmd-L.js";import"./DiUZYGXh.js";import"./CZg6Dn-M.js";import"./GYUriF8q.js";import"./B6TxRJ5n.js";import"./9WgO2MJn.js";import"./WdRo7VI1.js";import"./DZvvIX3P.js";import"./CAyB1ryF.js";import"./7n-t4xsm.js";import"./LLAPbHIK.js";import"./DJZjc8od.js";import"./D1YyKpAh.js";import"./CUK4cA7r.js";const fe={class:"flex-1"},we={class:"mx-auto max-w-[1640px] px-4 md:px-8"},ve={key:0,class:"mt-16 space-y-20 md:mt-20 md:space-y-32"},be={class:"mx-auto pt-8 md:pt-12 lg:pt-16"},_e={class:"relative aspect-[16/10] overflow-hidden rounded-[18px] bg-chip"},ye=["src","alt"],ke={class:"mt-4 min-h-[132px] rounded-[18px] bg-chip/60 p-4 text-left"},Ie={class:"mt-4 flex justify-end"},Ae={class:"flex gap-2 overflow-x-auto pb-2 lg:h-full lg:flex-col lg:overflow-visible lg:pb-0"},Te=["aria-pressed","aria-label","onClick"],Ce={class:"flex aspect-[16/10] h-full items-center justify-center overflow-hidden rounded-[10px] bg-chip lg:aspect-auto"},je=["src","alt"],Se={class:"mx-auto"},Ue={class:"mt-10 grid gap-5 md:mt-12 md:grid-cols-2 md:items-start md:gap-6 lg:gap-8"},Ee={class:"flex items-baseline gap-3"},Pe={class:"text-[36px] font-semibold leading-none text-ink/10 transition-colors duration-300 group-hover:text-ink/20 md:text-[44px]"},qe={class:"text-[17px] font-semibold leading-6 text-ink"},Ge={class:"mt-3 text-[14px] leading-7 text-muted"},ze={class:"mx-auto"},Re={class:"mt-14 space-y-20 md:mt-16 md:space-y-24"},He={class:"capability-visual overflow-hidden rounded-[18px] bg-chip"},De=["src","alt"],Fe={class:"mx-auto max-w-[500px] text-center"},Ne={class:"text-[24px] font-semibold leading-[32px] text-ink"},We={class:"mt-4 text-[15px] leading-7 text-muted"},Le={class:"mx-auto"},$e={class:"mt-12 grid gap-x-14 gap-y-10 md:grid-cols-2"},Be={class:"lift-panel max-w-[520px] rounded-[20px] bg-white/85 p-5"},Me={class:"text-[18px] font-semibold leading-7 text-ink"},Qe={class:"mt-3 text-[15px] leading-7 text-muted"},Ve={class:"mx-auto"},T="Text to Image AI Generator | Ezier AI",C="Use Ezier's Text to Image AI generator to create scenes, portraits, covers, and concept art from prompts with model, ratio, resolution, and count controls.",Ke=ne({__name:"text-to-image",setup(Oe){const x=I(""),u=I("Atmospheric place"),h=I("next"),s=ce(()=>r.find(i=>i.title===u.value)||r[0]);let f=null,j=!1;const r=[{title:"Atmospheric place",text:"Give the model a setting, time of day, weather, and one visual anchor.",prompt:"Quiet cliffside temple above the sea at dawn, drifting mist, warm light glowing from the doorway, pine trees on dark rock, soft cinematic atmosphere, wide 16:10 composition",image:"/images/landing/text-to-image/image1.webp",imageAlt:"Cliffside temple by the sea at dawn generated from a text prompt.",imagePosition:"85% center"},{title:"Editorial portrait",text:"Shape the person through styling, expression, light, and background.",prompt:"Editorial portrait of a confident woman in a structured black jacket, calm expression, loose dark hair, soft window light, minimal concrete backdrop, wide 16:10 composition",image:"/images/landing/text-to-image/image2.webp",imageAlt:"Editorial portrait generated from a focused text prompt.",imagePosition:"center center"},{title:"Cover direction",text:"Use mood, contrast, and open space when the image may become a cover or campaign frame.",prompt:"Atmospheric cover image, lone figure walking through a rain-lit city alley, blue shadows, red neon signs, wet reflective ground, cinematic depth, wide 16:10 composition",image:"/images/landing/text-to-image/image3.webp",imageAlt:"Rain-lit city cover concept generated from a text prompt.",imagePosition:"center center"}];function D(i){const t=r.findIndex(w=>w.title===u.value),l=r.findIndex(w=>w.title===i);if(l<0||l===t){E();return}const d=r.length-1;t===d&&l===0?h.value="next":t===0&&l===d?h.value="prev":h.value=l>t?"next":"prev",u.value=i,E()}function F(){const i=r.findIndex(l=>l.title===u.value),t=i>=0?(i+1)%r.length:0;h.value="next",u.value=r[t].title}function y(){j||f||typeof window>"u"||(f=window.setInterval(F,5200))}function k(){f&&(window.clearInterval(f),f=null)}function S(){k()}function U(){y()}function E(){k(),y()}re(()=>{j=typeof window<"u"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches,y()}),le(()=>{k()});function N(i){x.value=i,setTimeout(()=>{x.value===i&&(x.value="")},1800)}async function W(i,t){try{navigator.clipboard?.writeText&&await navigator.clipboard.writeText(t),N(i)}catch{x.value=""}}const L=[{title:"Write the core idea",text:"Describe the scene, person, object, or world you want the image to create."}
1,{title:"Choose a model",text:"Pick the image model that fits the style, realism, speed, or text handling you need."},{title:"Set the output frame",text:"Choose the ratio, resolution, and image count before you generate."},{title:"Review the first draft",text:"Open the result in your workspace, then refine the prompt or settings from the strongest version."}],$=[{title:"Atmospheric scenes from scratch",text:"Build places, landscapes, interiors, and cinematic scenes when you do not have a source image yet.",image:"/images/landing/text-to-image/image4.webp",imageAlt:"Text to image landscape scene with mist, mountains, and cinematic sunset light."},{title:"Portraits without a reference",text:"Describe the expression, wardrobe, lighting, and setting when the character can be invented from words.",image:"/images/landing/text-to-image/image5.webp",imageAlt:"Text to image portrait of a man in moody editorial lighting."},{title:"Concept frames and covers",text:"Explore story worlds, dramatic silhouettes, album-style covers, and early visual directions before final polish.",image:"/images/landing/text-to-image/image6.webp",imageAlt:"Text to image fantasy concept art with a cloaked figure and distant castle."}],B=[{title:"Give the image a role",text:"Say whether it is a cover, portrait, scene, poster, mood board, or background."},{title:"Use fewer style words",text:"Choose a few useful style cues instead of stacking every visual adjective you can think of."},{title:"Name the composition",text:"Add framing such as close portrait, wide landscape, centered subject, or open space for text."},{title:"Change one decision at a time",text:"If the result is close, adjust one thing: subject, lighting, style, frame, or background."}],P=[{q:"What is text to image AI?",a:"Text to image AI creates a new image from written instructions. You describe the subject, style, lighting, composition, and use case, then the model generates a visual from those words."},{q:"Do I need a reference image?",a:"No. Text to Image is useful when you want to start from words alone. If you already have a source image that should guide the result, Image to Image is usually the better tool."},{q:"What should I include in a text to image prompt?",a:"Include the image type, subject, mood, style, composition, lighting, and where the image will be used. Keep the first prompt focused so the next version is easy to improve."},{q:"How do I choose the right format?",a:"Choose the aspect ratio and resolution based on where the image will appear. Wide frames work well for scenes and covers, while square or vertical formats fit posts, portraits, and mobile surfaces."},{q:"Should I use text to image or image to image?",a:"Use text to image when you are starting from a written idea and no strong visual reference exists yet. Use image to image when you already have a base image and want to refine it."},{q:"Why does my text to image result still feel generic?",a:"Generic outputs often come from prompts that lack a clear image type, subject, mood, or publishing context. Narrowing the brief usually helps more than adding extra adjectives."},{q:"What should I do with the first result?",a:"Use it as the baseline. If the subject or mood is wrong, revise the prompt. If the shape is wrong, change the ratio or model before generating again."}],M=me(),q=`${String(M.public.siteUrl||"").replace(/\/$/,"")}/ai-image/text-to-image`,Q={"@context":"https://schema.org","@type":"FAQPage",mainEntity:P.map(i=>
1({"@type":"Question",name:i.q,acceptedAnswer:{"@type":"Answer",text:i.a}}))};ge({title:T,meta:[{name:"description",content:C},{property:"og:title",content:T},{property:"og:description",content:C},{property:"og:url",content:q},{property:"og:type",content:"website"},{name:"twitter:title",content:T},{name:"twitter:description",content:C},{name:"twitter:card",content:"summary_large_image"}],link:[{rel:"canonical",href:q}],script:[{type:"application/ld+json",children:JSON.stringify(Q)}]});const{isAuthenticated:G,attachConversation:V}=xe("ai-image"),{savePendingContext:K,require:O}=ue(),{start:J}=he();function Y(){window.scrollTo({top:0,behavior:"smooth"})}async function X(i){if(K({prompt:i,mode:"image",tool:"text-to-image"}),!O())return;const t=await J(i);t&&await V(t)}return(i,t)=>{const l=te,d=oe,w=ie,Z=ae,ee=se;return m(),p("main",fe,[e("div",we,[e("div",null,[n(l,{mode:"image",title:"Text to Image AI Generator for Visual Ideas",subtitle:"Start with words alone and shape scenes, portraits, covers, and concepts before moving the best direction into your workspace.","title-size-class":"text-[28px] leading-[36px] md:text-[28px] md:leading-[36px]",placeholder:"Describe the image you want from text. Then choose model, ratio, resolution, and count below...",onGenerate:t[0]||(t[0]=o=>X(o))})]),a(G)?z("",!0):(m(),p("div",ve,[n(d,{class:"mt-16 md:mt-40"},{default:g(()=>[e("section",be,[t[3]||(t[3]=e("div",{class:"mx-auto max-w-[860px] text-center"},[e("h2",{class:"text-[24px] font-semibold leading-[32px] text-ink text-center md:text-[24px] md:leading-[32px]"}," See how far words can take an image "),e("p",{class:"mt-3 text-[16px] leading-7 text-muted"}," A cliffside temple, an editorial portrait, a rain-lit cover idea. Each prompt gives the model a subject, a mood, and a frame to build from. ")],-1)),e("div",{class:"mt-8 grid items-stretch gap-4 md:gap-5 lg:grid-cols-[minmax(0,1.15fr)_150px] xl:grid-cols-[minmax(0,1.15fr)_168px]",onMouseenter:S,onMouseleave:U,onFocusin:S,onFocusout:U},[e("div",null,[e("div",_e,[n(R,{name:a(h)==="next"?"showcase-visual-slide-next":"showcase-visual-slide-prev"},{default:g(()=>[(m(),p("img",{key:a(s).image,src:a(s).image,alt:a(s).imageAlt,class:"absolute inset-0 h-full w-full object-cover",style:H({objectPosition:a(s).imagePosition}),loading:"lazy"},null,12,ye))]),_:1},8,["name"])]),e("div",ke,[t[2]||(t[2]=e("div",{class:"mb-2"},[e("span",{class:"text-[13px] font-semibold text-ink"},"Prompt")],-1)),n(R,{name:"showcase-copy-swap",mode:"out-in"},{default:g(()=>[(m(),p("p",{key:a(s).prompt,class:"text-[14px] leading-6 text-muted"},c(a(s).prompt),1))]),_:1}),e("div",Ie,[e("button",{type:"button",class:"rounded-full border border-hairline bg-white px-3 py-1.5 text-[13px] font-medium text-ink transition-colors hover:bg-chip",onClick:t[1]||(t[1]=o=>W("prompt-pattern:"+a(s).title,a(s).prompt))},c(a(x)==="prompt-pattern:"+a(s).title?"Copied":"Copy prompt"),1)])])]),e("div",Ae,[(m(),p(b,null,_(r,o=>e("button",{key:o.title,type:"button","aria-pressed":a(s).title===o.title,"aria-label":o.title,class:A(["group relative w-[104px] shrink-0 overflow-hidden rounded-[14px] border border-transparent bg-white/80 p-1.5 transition-all duration-300 ease-out lg:min-h-0 lg:w-full lg:flex-1",a(s).title===o.title?"is-active scale-[1.025] opacity-100 shadow-[0_16px_36px_rgba(15,23,42,0.13)]":"opacity-70 hover:scale-[1.015] hover:bg-chip/35 hover:opacity-100"]),onClick:v=>D(o.title)},[e("span",Ce,[e("img",{src:o.image,alt:o.imageAlt,"aria-hidden":"true",class:"h-full w-full object-cover transition duration-200 group-hover:scale-[1.02]",style:H({objectPosition:o.imagePosition}),loading:"lazy"},null,12,je)])],10,Te)),64))])],32)])]),_:1}),n(d,{class:"mt-16 md:mt-40"},{default:g(()=>[e("section",Se,[t[4]||(t[4]=e("div",{class:"mx-auto max-w-[620px] text-center"},[e("h2",{class:"text-[24px] font-semibold leading-[32px] text-ink text-center md:text-[24px] md:leading-[32px]"}," Shape the first version before you generate "),e("p",{class:"mt-4 text-[16px] leading-7 text-muted"}," The prompt starts the image, but the model and output settings decide how the first draft arrives. ")],-1)),e("ol",Ue,[(m(),p(b,null,_(L,(o,v)=>
1e("li",{key:o.title,class:"lift-panel group grid gap-4 rounded-[20px] bg-white/85 p-5 md:grid-cols-[76px_minmax(0,1fr)] md:gap-6 md:p-6"},[e("div",Ee,[e("span",Pe,c(String(v+1).padStart(2,"0")),1)]),e("div",null,[e("h3",qe,c(o.title),1),e("p",Ge,c(o.text),1)])])),64))])])]),_:1}),n(d,{class:"mt-16 md:mt-40"},{default:g(()=>[e("section",ze,[t[5]||(t[5]=e("div",{class:"mx-auto max-w-[720px] text-center"},[e("h2",{class:"text-[24px] font-semibold leading-[32px] text-ink text-center md:text-[24px] md:leading-[32px]"}," When the image starts as words "),e("p",{class:"mt-4 text-[16px] leading-7 text-muted"}," Use Text to Image for places that do not exist yet, portraits without a reference, and concept frames that need room to evolve. ")],-1)),e("div",Re,[(m(),p(b,null,_($,(o,v)=>e("section",{key:o.title,class:"grid gap-8 md:grid-cols-2 md:items-center md:gap-14"},[e("div",{class:A(v%2===1?"md:order-2":"")},[e("div",He,[e("img",{src:o.image,alt:o.imageAlt,class:"aspect-[16/10] h-full w-full object-cover",loading:"lazy"},null,8,De)])],2),e("div",{class:A(v%2===1?"md:order-1":"")},[e("div",Fe,[e("h3",Ne,c(o.title),1),e("p",We,c(o.text),1)])],2)])),64))])])]),_:1}),n(d,{class:"mt-16 md:mt-40"},{default:g(()=>[e("section",Le,[t[6]||(t[6]=e("div",{class:"mx-auto max-w-[860px] text-center"},[e("h2",{class:"text-[24px] font-semibold leading-[32px] text-ink text-center md:text-[24px] md:leading-[32px]"}," Make the prompt less generic "),e("p",{class:"mt-4 text-[16px] leading-7 text-muted"}," A stronger prompt gives the model a job, not a pile of adjectives. Add one clear decision at a time so each version is easier to judge. ")],-1)),e("div",$e,[(m(),p(b,null,_(B,o=>e("div",{key:o.title},[e("div",Be,[e("h3",Me,c(o.title),1),e("p",Qe,c(o.text),1)])])),64))])])]),_:1}),n(d,{class:"mt-16 md:mt-40"},{default:g(()=>[e("section",{class:"mx-auto rounded-[28px] bg-chip/50 p-5 md:p-8 lg:p-10"},[e("div",{class:"flex flex-col gap-6 md:flex-row md:items-center md:justify-between"},[t[7]||(t[7]=e("div",{class:"max-w-[860px]"},[e("p",{class:"text-[14px] font-semibold text-muted"}," Text to Image in Ezier "),e("h2",{class:"mt-3 text-[24px] font-semibold leading-[32px] text-ink md:text-[24px] md:leading-[32px]"}," Turn a blank prompt into a first image. "),e("p",{class:"mt-4 text-[15px] leading-7 text-muted"}," Describe what you see in your head, choose the frame, and generate a first version you can keep shaping in Ezier. ")],-1)),e("button",{type:"button",class:"shrink-0 rounded-full bg-ink px-5 py-3 text-[14px] font-semibold text-white transition-colors hover:bg-ink/85",onClick:Y}," Generate from text ")])])]),_:1}),n(d,{class:"mt-16 md:mt-40"},{default:g(()=>[e("section",Ve,[t[8]||(t[8]=e("div",{class:"mx-auto mb-7 max-w-[720px] text-center"},[e("h2",{class:"text-[24px] font-semibold leading-[32px] text-ink text-center md:text-[24px] md:leading-[32px]"}," Text to Image FAQ "),e("p",{class:"mt-3 text-[15px] leading-7 text-muted"}," Practical answers about starting from words, choosing settings, and knowing when another image tool fits better. ")],-1)),n(w,{items:P,"initial-open":0,"hide-title":""})])]),_:1}),n(Z,{class:"pb-16 md:pb-[80px]",current:"ai-image-detail","tool-name":"Text to Image"})]))]),a(G)?z("",!0):(m(),de(ee,{key:0}))])}}}),St=pe(Ke,[["__scopeId","data-v-b4d43dd8"]]);export{St as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.