{"id":854,"date":"2026-07-21T09:02:42","date_gmt":"2026-07-21T09:02:42","guid":{"rendered":"https:\/\/aizonic.site\/?page_id=854"},"modified":"2026-07-21T09:06:52","modified_gmt":"2026-07-21T09:06:52","slug":"font-style-generator","status":"publish","type":"page","link":"https:\/\/aizonic.site\/font-style-generator\/","title":{"rendered":"Font Style Generator"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"854\" class=\"elementor elementor-854\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-79d4a3d e-con-full e-flex e-con e-child\" data-id=\"79d4a3d\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-a413505 e-con-full e-flex e-con e-child\" data-id=\"a413505\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f7668d4 elementor-widget__width-initial elementor-widget elementor-widget-image\" data-id=\"f7668d4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/aizonic.site\/wp-content\/uploads\/2026\/07\/icon-font-style-generator.png\" title=\"icon-font-style-generator\" alt=\"icon-font-style-generator\" loading=\"lazy\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2951fd4 e-con-full e-flex e-con e-child\" data-id=\"2951fd4\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-9d8716e e-con-full e-flex e-con e-child\" data-id=\"9d8716e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fb1bb69 elementor-widget elementor-widget-heading\" data-id=\"fb1bb69\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Font Style Generator <\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f185c6b elementor-widget elementor-widget-heading\" data-id=\"f185c6b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h6 class=\"elementor-heading-title elementor-size-default\">Generate stylish font &amp; names for games, Social Media, bios<\/h6>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b1e2fc7 e-flex e-con-boxed e-con e-parent\" data-id=\"b1e2fc7\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-56498a8 elementor-widget elementor-widget-html\" data-id=\"56498a8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div id=\"fs-font-style-generator\" class=\"fs-wrap\">\n  <style>\n    #fs-font-style-generator {\n      --fs-bg: #14161a; --fs-panel: #1c1f25; --fs-border: #2c303a;\n      --fs-text: #e9ebf0; --fs-muted: #9aa0ac; --fs-accent: #5eead4; --fs-accent-dim: #1f4b45;\n      font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n      color: var(--fs-text); max-width: 720px; margin: 0 auto; box-sizing: border-box;\n    }\n    #fs-font-style-generator *, #fs-font-style-generator *::before, #fs-font-style-generator *::after { box-sizing: border-box; }\n    .fs-card { background: var(--fs-panel); border: 1px solid var(--fs-border); border-radius: 16px; padding: 28px; }\n    .fs-title { font-size: 20px; font-weight: 700; margin: 0 0 4px; letter-spacing: -0.01em; }\n    .fs-subtitle { font-size: 14px; color: var(--fs-muted); margin: 0 0 20px; }\n    .fs-input {\n      width: 100%; background: var(--fs-bg); border: 1px solid var(--fs-border); color: var(--fs-text);\n      border-radius: 10px; padding: 12px 14px; font-size: 15px;\n    }\n    .fs-input:focus { outline: 1px solid var(--fs-accent); }\n    .fs-list { margin-top: 20px; display: flex; flex-direction: column; gap: 8px; max-height: 480px; overflow-y: auto; }\n    .fs-item {\n      display: flex; align-items: center; gap: 10px; background: var(--fs-bg); border: 1px solid var(--fs-border);\n      border-radius: 10px; padding: 12px 14px;\n    }\n    .fs-item-text { flex: 1; font-size: 16px; word-break: break-word; }\n    .fs-item-label { font-size: 11px; color: var(--fs-muted); text-transform: uppercase; letter-spacing: 0.03em; width: 90px; flex-shrink: 0; }\n    .fs-copy-btn {\n      background: transparent; border: 1px solid var(--fs-border); color: var(--fs-text);\n      border-radius: 6px; padding: 6px 10px; font-size: 12px; cursor: pointer; flex-shrink: 0;\n    }\n    .fs-copy-btn:hover { border-color: var(--fs-accent); color: var(--fs-accent); }\n    .fs-copy-btn.fs-copied { border-color: var(--fs-accent); color: var(--fs-accent); }\n    .fs-empty { font-size: 13px; color: var(--fs-muted); margin-top: 16px; }\n  <\/style>\n  <div class=\"fs-card\">\n    <p class=\"fs-title\">Font Style Generator<\/p>\n    <p class=\"fs-subtitle\">Type text and get stylish Unicode fonts for bios, captions and titles \u2014 copy with one click.<\/p>\n    <input class=\"fs-input\" id=\"fsInput\" type=\"text\" placeholder=\"Type something...\" value=\"Hello World\">\n    <div class=\"fs-list\" id=\"fsList\"><\/div>\n    <p class=\"fs-empty\" id=\"fsEmpty\" style=\"display:none;\">Type something above to see styles.<\/p>\n  <\/div>\n<\/div>\n<script>\n(function () {\n  const wrap = document.getElementById('fs-font-style-generator');\n  const input = wrap.querySelector('#fsInput');\n  const list = wrap.querySelector('#fsList');\n  const emptyEl = wrap.querySelector('#fsEmpty');\n\n  function mapRange(str, upperStart, lowerStart, digitStart, exceptions) {\n    let out = '';\n    for (const ch of str) {\n      if (exceptions && exceptions[ch] !== undefined) { out += exceptions[ch]; continue; }\n      const code = ch.codePointAt(0);\n      if (ch >= 'A' && ch <= 'Z') out += String.fromCodePoint(upperStart + (code - 65));\n      else if (ch >= 'a' && ch <= 'z') out += String.fromCodePoint(lowerStart + (code - 97));\n      else if (digitStart && ch >= '0' && ch <= '9') out += String.fromCodePoint(digitStart + (code - 48));\n      else out += ch;\n    }\n    return out;\n  }\n\n  const scriptExceptions = { B:'\\u212C', E:'\\u2130', F:'\\u2131', H:'\\u210B', I:'\\u2110', L:'\\u2112', M:'\\u2133', R:'\\u211B', e:'\\u212F', g:'\\u210A', o:'\\u2134' };\n  const doubleStruckExceptions = { C:'\\u2102', H:'\\u210D', N:'\\u2115', P:'\\u2119', Q:'\\u211A', R:'\\u211D', Z:'\\u2124' };\n  const frakturExceptions = { C:'\\u212D', H:'\\u210C', I:'\\u2111', R:'\\u211C', Z:'\\u2128' };\n  const italicExceptions = { h:'\\u210E' };\n\n  const smallCapsMap = { a:'\u1d00',b:'\u0299',c:'\u1d04',d:'\u1d05',e:'\u1d07',f:'\ua730',g:'\u0262',h:'\u029c',i:'\u026a',j:'\u1d0a',k:'\u1d0b',l:'\u029f',m:'\u1d0d',n:'\u0274',o:'\u1d0f',p:'\u1d18',q:'\ua7af',r:'\u0280',s:'s',t:'\u1d1b',u:'\u1d1c',v:'\u1d20',w:'\u1d21',x:'x',y:'\u028f',z:'\u1d22' };\n  const upsideDownMap = { a:'\u0250',b:'q',c:'\u0254',d:'p',e:'\u01dd',f:'\u025f',g:'\u0183',h:'\u0265',i:'\u1d09',j:'\u027e',k:'\u029e',l:'l',m:'\u026f',n:'u',o:'o',p:'d',q:'b',r:'\u0279',s:'s',t:'\u0287',u:'n',v:'\u028c',w:'\u028d',x:'x',y:'\u028e',z:'z',\n    A:'\u2200',B:'\u15fa',C:'\u0186',D:'\u15e1',E:'\u018e',F:'\u2132',G:'\u2141',H:'H',I:'I',J:'\u017f',K:'\u029e',L:'\ua780',M:'W',N:'N',O:'O',P:'\u0500',Q:'\u038c',R:'\u1d1a',S:'S',T:'\u2534',U:'\u2229',V:'\u039b',W:'M',X:'X',Y:'\u2144',Z:'Z',\n    '0':'0','1':'\u0196','2':'\u1105','3':'\u0190','4':'\u3123','5':'5','6':'9','7':'\u3125','8':'8','9':'6','.':'\u02d9',',':\"'\",\"'\":',','!':'\u00a1','?':'\u00bf' };\n\n  function circled(str) {\n    let out = '';\n    for (const ch of str) {\n      const code = ch.codePointAt(0);\n      if (ch >= 'A' && ch <= 'Z') out += String.fromCodePoint(0x24B6 + (code - 65));\n      else if (ch >= 'a' && ch <= 'z') out += String.fromCodePoint(0x24D0 + (code - 97));\n      else if (ch === '0') out += '\\u24EA';\n      else if (ch >= '1' && ch <= '9') out += String.fromCodePoint(0x2460 + (code - 49));\n      else out += ch;\n    }\n    return out;\n  }\n\n  function combining(str, mark) {\n    return str.split('').map(ch => ch === ' ' ? ch : ch + mark).join('');\n  }\n\n  function upsideDown(str) {\n    const mapped = str.split('').map(ch => upsideDownMap[ch] !== undefined ? upsideDownMap[ch] : ch);\n    return mapped.reverse().join('');\n  }\n\n  const styles = [\n    { label: 'Bold', fn: s => mapRange(s, 0x1D400, 0x1D41A, 0x1D7CE) },\n    { label: 'Italic', fn: s => mapRange(s, 0x1D434, 0x1D44E, null, italicExceptions) },\n    { label: 'Bold Italic', fn: s => mapRange(s, 0x1D468, 0x1D482, null) },\n    { label: 'Script', fn: s => mapRange(s, 0x1D49C, 0x1D4B6, null, scriptExceptions) },\n    { label: 'Bold Script', fn: s => mapRange(s, 0x1D4D0, 0x1D4EA, null) },\n    { label: 'Fraktur', fn: s => mapRange(s, 0x1D504, 0x1D51E, null, frakturExceptions) },\n    { label: 'Bold Fraktur', fn: s => mapRange(s, 0x1D56C, 0x1D586, null) },\n    { label: 'Double-Struck', fn: s => mapRange(s, 0x1D538, 0x1D552, 0x1D7D8, doubleStruckExceptions) },\n    { label: 'Sans-Serif', fn: s => mapRange(s, 0x1D5A0, 0x1D5BA, 0x1D7E2) },\n    { label: 'Sans Bold', fn: s => mapRange(s, 0x1D5D4, 0x1D5EE, 0x1D7EC) },\n    { label: 'Sans Italic', fn: s => mapRange(s, 0x1D608, 0x1D622, null) },\n    { label: 'Monospace', fn: s => mapRange(s, 0x1D670, 0x1D68A, 0x1D7F6) },\n    { label: 'Fullwidth', fn: s => mapRange(s, 0xFF21, 0xFF41, 0xFF10) },\n    { label: 'Circled', fn: circled },\n    { label: 'Small Caps', fn: s => s.split('').map(ch => smallCapsMap[ch.toLowerCase()] !== undefined ? smallCapsMap[ch.toLowerCase()] : ch).join('') },\n    { label: 'Strikethrough', fn: s => combining(s, '\\u0336') },\n    { label: 'Underline', fn: s => combining(s, '\\u0332') },\n    { label: 'Upside Down', fn: upsideDown }\n  ];\n\n  function render() {\n    const text = input.value;\n    list.innerHTML = '';\n    if (!text) { emptyEl.style.display = ''; return; }\n    emptyEl.style.display = 'none';\n\n    styles.forEach(style => {\n      let output;\n      try { output = style.fn(text); } catch (e) { output = text; }\n      const row = document.createElement('div');\n      row.className = 'fs-item';\n\n      const label = document.createElement('span');\n      label.className = 'fs-item-label';\n      label.textContent = style.label;\n\n      const textEl = document.createElement('span');\n      textEl.className = 'fs-item-text';\n      textEl.textContent = output;\n\n      const btn = document.createElement('button');\n      btn.className = 'fs-copy-btn';\n      btn.textContent = 'Copy';\n      btn.addEventListener('click', () => {\n        navigator.clipboard.writeText(output).then(() => {\n          btn.textContent = 'Copied';\n          btn.classList.add('fs-copied');\n          setTimeout(() => { btn.textContent = 'Copy'; btn.classList.remove('fs-copied'); }, 1200);\n        });\n      });\n\n      row.appendChild(label);\n      row.appendChild(textEl);\n      row.appendChild(btn);\n      list.appendChild(row);\n    });\n  }\n\n  input.addEventListener('input', render);\n  render();\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Font Style Generator Generate stylish font &amp; names for games, Social Media, bios Font Style Generator Type text and get [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"no-sidebar","site-content-layout":"","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"disabled","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-854","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/aizonic.site\/wp-json\/wp\/v2\/pages\/854","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aizonic.site\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/aizonic.site\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/aizonic.site\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/aizonic.site\/wp-json\/wp\/v2\/comments?post=854"}],"version-history":[{"count":7,"href":"https:\/\/aizonic.site\/wp-json\/wp\/v2\/pages\/854\/revisions"}],"predecessor-version":[{"id":861,"href":"https:\/\/aizonic.site\/wp-json\/wp\/v2\/pages\/854\/revisions\/861"}],"wp:attachment":[{"href":"https:\/\/aizonic.site\/wp-json\/wp\/v2\/media?parent=854"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}