Ինչպես ավելացնել վեբ տառատեսակներ Next.js կայքում
Վեբ տառատեսակները կարող են օգնել ձեզ նախագծել ձեր ապրանքանիշը կամ կատարելագործել ձեր կայքի դիզայնը, սակայն դրանք օգտագործելու մեկից ավելի եղանակ կա:
Վեբ տառատեսակները ձեր կայքէջում հատուկ տառատեսակներ ավելացնելու հիանալի միջոց են: Այս տառատեսակները կարող են հասանելի չլինել օգտագործողի համակարգում, այնպես որ դուք պետք է դրանք ներառեք ձեր նախագծում՝ հոսթինգով դրանք կամ հղում կատարելով CDN-ի միջոցով:
Իմացեք, թե ինչպես ներառել վեբ տառատեսակներ Next.js կայքում՝ օգտագործելով այս երկու մեթոդները:
Next.js-ում Self-Hosted տառատեսակների օգտագործումը
Next.js-ում ինքնակառավարվող տառատեսակներ ավելացնելու համար անհրաժեշտ է օգտագործել @font-face CSS կանոնը: Այս կանոնը թույլ է տալիս վեբ էջին հատուկ տառատեսակներ ավելացնել:
Նախքան font-face-ն օգտագործելը, դուք պետք է ներբեռնեք այն տառատեսակները, որոնք ցանկանում եք օգտագործել: Ինտերնետում կան բազմաթիվ կայքեր, որոնք առաջարկում են անվճար տառատեսակներ, ներառյալ Google տառատեսակները, fontspace և dafont կայքերը:
Վեբ տառատեսակները ներբեռնելուց հետո դրանք փոխակերպեք տարբեր տառատեսակների՝ բազմաթիվ բրաուզերներին աջակցելու համար: Դա անելու համար կարող եք օգտագործել տառատեսակների փոխակերպման առցանց անվճար գործիքներ: Ժամանակակից վեբ բրաուզերներն աջակցում են .woff և .woff2 ձևաչափերին: Եթե Ձեզ անհրաժեշտ է աջակցել հին բրաուզերներին, ապա պետք է տրամադրեք նաև .eot և .ttf ձևաչափեր:
Ստեղծեք նոր թղթապանակ, որը կոչվում է fonts ձեր կայքի գրացուցակում և պահպանեք ձեր փոխարկված տառատեսակի ֆայլերը այնտեղ:
Հաջորդ քայլը տառատեսակների դեմքերը ներառելն է styles/global.css ֆայլում՝ դրանք հասանելի դարձնելու ամբողջ կայքին: Այս օրինակը ցույց է տալիս ջրահարս տառատեսակի տառատեսակները թավերով.
@font-face {
font-family: 'Mermaid';
src: url('Mermaid-Bold.eot');
src: url('Mermaid-Bold.eot?#iefix') format('embedded-opentype'),
url('Mermaid-Bold.woff2') format('woff2'),
url('Mermaid-Bold.woff') format('woff'),
url('Mermaid-Bold.ttf') format('truetype');
font-weight: bold;
font-style: normal;
font-display: swap;
}
Տառատեսակի ֆայլերը ներառելուց հետո կարող եք օգտագործել այդ տառատեսակները բաղադրիչի մակարդակի CSS ֆայլում.
h1 {
font-family: Mermaid;
}
Ներառյալ վեբ տառատեսակներ Next.js-ում CDN-ի միջոցով
Որոշ կայքեր սպասարկում են վեբ տառատեսակներ CDN-ի միջոցով, որոնք կարող եք ներմուծել ձեր հավելված: Այս մոտեցումը հեշտ է կարգավորել, քանի որ ձեզ հարկավոր չէ ներբեռնել տառատեսակներ կամ ստեղծել տառատեսակներ: Բացի այդ, եթե օգտագործում եք Google տառատեսակներ կամ TypeKit, Next.js-ն ավտոմատ կերպով կարգավորում է օպտիմալացումը:
Դուք կարող եք տառատեսակներ ավելացնել CDN-ից՝ օգտագործելով հղումի պիտակը կամ @import կանոնը CSS ֆայլի ներսում:
Ինչպես ներմուծել տառատեսակներ Next.js նախագծին՝ օգտագործելով հղումի պիտակը
Հղման պիտակը միշտ մտնում է HTML փաստաթղթի գլխի թեգի ներսում: Next.js-ում գլխի պիտակ ավելացնելու համար դուք պետք է ստեղծեք հատուկ փաստաթուղթ: Այս փաստաթուղթը փոփոխում է գլխի և մարմնի պիտակները, որոնք օգտագործվում են յուրաքանչյուր էջի ցուցադրման համար:
Սկսեք օգտագործել այս հատուկ փաստաթղթի հնարավորությունը՝ ստեղծելով ֆայլ /pages/_document.js:
Այնուհետև ներառեք տառատեսակի հղումը _document.js ֆայլի գլխում:
import Document, { Html, Head, Main, NextScript } from "next/document";
class MyDocument extends Document {
static async getInitialProps(ctx) {
const initialProps = await Document.getInitialProps(ctx);
return { ...initialProps };
}
render() {
return (
<Html>
<Head>
<link
href="https://fonts.googleapis.com/css2?family=Libre+Caslon+Display&display=swap"
rel="stylesheet"
/>
</Head>
<body>
<Main />
<NextScript />
</body>
</Html>
);
}
}
export default MyDocument;
Ինչպես օգտագործել @import կանոնը՝ Next.js նախագծում տառատեսակներ ներառելու համար
Մեկ այլ տարբերակ է օգտագործել @import կանոնը CSS ֆայլում, որը ցանկանում եք օգտագործել տառատեսակը:
Օրինակ՝ տառատեսակը հասանելի դարձրեք ամբողջ նախագծին՝ ներմուծելով վեբ տառատեսակը styles/global.css ֆայլում:
@import url('https://fonts.googleapis.com/css2?family=Libre+Caslon+Display&display=swap');
Այժմ կարող եք հղում կատարել տառատեսակների ընտանիքին CSS ընտրիչում այսպես.
h1 {
font-family:'Libre Caslon Display', serif;
}
@import կանոնը թույլ է տալիս ներմուծել տառատեսակ պարունակվող CSS ֆայլում: Հղման պիտակի օգտագործումը տառատեսակը հասանելի է դարձնում ամբողջ կայքում:
Պե՞տք է տեղակայել տառատեսակները, թե՞ ներմուծել դրանք CDN-ի միջոցով:
Տեղում տեղակայված տառատեսակները սովորաբար ավելի արագ են, քան CDN-ից ներմուծված տառատեսակները: Դա պայմանավորված է նրանով, որ զննարկիչը չպետք է լրացուցիչ հարցում կատարի CDN տառատեսակին, երբ վեբ էջը բեռնվի:
Եթե ցանկանում եք օգտագործել ներմուծված տառատեսակներ, նախապես ներբեռնեք դրանք՝ կայքի աշխատանքը բարելավելու համար: Եթե տառատեսակները հասանելի են Google տառատեսակներում կամ Typekit-ում, կարող եք ներմուծել դրանք և օգտվել Next.js-ի օպտիմալացման հնարավորություններից: