CINXE.COM
METAFONT - Wikipedia
<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-disabled skin-theme-clientpref-day vector-toc-available" lang="it" dir="ltr"> <head> <meta charset="UTF-8"> <title>METAFONT - Wikipedia</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-disabled skin-theme-clientpref-day vector-toc-available";var cookie=document.cookie.match(/(?:^|; )itwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":[",\t."," \t,"],"wgDigitTransformTable":["",""], "wgDefaultDateFormat":"dmy","wgMonthNames":["","gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],"wgRequestId":"e5772ab8-8a7d-42b3-9c62-5f69ad065292","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"METAFONT","wgTitle":"METAFONT","wgCurRevisionId":139200830,"wgRevisionId":139200830,"wgArticleId":438517,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["TeX"],"wgPageViewLanguage":"it","wgPageContentLanguage":"it","wgPageContentModel":"wikitext","wgRelevantPageName":"METAFONT","wgRelevantArticleId":438517,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":false,"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"it", "pageLanguageDir":"ltr","pageVariantFallbacks":"it"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":true,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":20000,"wgRelatedArticlesCompat":[],"wgEditSubmitButtonLabelPublish":true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false,"wgVector2022LanguageInHeader":true,"wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q1457000","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.gadget.coloriDarkMode-default":"ready","ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.cite.styles":"ready", "ext.math.styles":"ready","ext.pygments":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=["ext.cite.ux-enhancements","ext.pygments.view","mediawiki.page.media","site","mediawiki.page.ready","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.gadget.MainPageWikiList","ext.gadget.stru-commonsupload","ext.gadget.HiddenCat","ext.gadget.ReferenceTooltips","ext.gadget.TitoloErrato","ext.gadget.NewSection","ext.gadget.RichiediRevisioneBozza","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap","ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming" ,"ext.uls.interface","ext.cx.eventlogging.campaigns","ext.cx.uls.quick.actions","wikibase.client.vector-2022","ext.checkUser.clientHints","ext.growthExperiments.SuggestedEditSession","wikibase.sidebar.tracking"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=it&modules=ext.cite.styles%7Cext.math.styles%7Cext.pygments%2CwikimediaBadges%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&only=styles&skin=vector-2022"> <script async="" src="/w/load.php?lang=it&modules=startup&only=scripts&raw=1&skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=it&modules=ext.gadget.coloriDarkMode-default&only=styles&skin=vector-2022"> <link rel="stylesheet" href="/w/load.php?lang=it&modules=site.styles&only=styles&skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.5"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="METAFONT - Wikipedia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//it.m.wikipedia.org/wiki/METAFONT"> <link rel="alternate" type="application/x-wiki" title="Modifica" href="/w/index.php?title=METAFONT&action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (it)"> <link rel="EditURI" type="application/rsd+xml" href="//it.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://it.wikipedia.org/wiki/METAFONT"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.it"> <link rel="alternate" type="application/atom+xml" title="Feed Atom di Wikipedia" href="/w/index.php?title=Speciale:UltimeModifiche&feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="//login.wikimedia.org"> </head> <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-METAFONT rootpage-METAFONT skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Vai al contenuto</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Sito"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Menu principale" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Menu principale</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Menu principale</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">sposta nella barra laterale</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">nascondi</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigazione </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/Pagina_principale" title="Visita la pagina principale [z]" accesskey="z"><span>Pagina principale</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Speciale:UltimeModifiche" title="Elenco delle ultime modifiche del sito [r]" accesskey="r"><span>Ultime modifiche</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Speciale:PaginaCasuale" title="Mostra una pagina a caso [x]" accesskey="x"><span>Una voce a caso</span></a></li><li id="n-nearby-pages-title" class="mw-list-item"><a href="/wiki/Speciale:NelleVicinanze"><span>Nelle vicinanze</span></a></li><li id="n-vetrina" class="mw-list-item"><a href="/wiki/Wikipedia:Vetrina"><span>Vetrina</span></a></li><li id="n-help" class="mw-list-item"><a href="/wiki/Aiuto:Aiuto" title="Pagine di aiuto"><span>Aiuto</span></a></li><li id="n-Sportello-informazioni" class="mw-list-item"><a href="/wiki/Aiuto:Sportello_informazioni"><span>Sportello informazioni</span></a></li> </ul> </div> </div> <div id="p-Comunità" class="vector-menu mw-portlet mw-portlet-Comunità" > <div class="vector-menu-heading"> Comunità </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-portal" class="mw-list-item"><a href="/wiki/Portale:Comunit%C3%A0" title="Descrizione del progetto, cosa puoi fare, dove trovare le cose"><span>Portale Comunità</span></a></li><li id="n-villagepump" class="mw-list-item"><a href="/wiki/Wikipedia:Bar"><span>Bar</span></a></li><li id="n-wikipediano" class="mw-list-item"><a href="/wiki/Wikipedia:Wikipediano"><span>Il Wikipediano</span></a></li><li id="n-contactpage" class="mw-list-item"><a href="/wiki/Wikipedia:Contatti"><span>Contatti</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/Pagina_principale" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Wikipedia" src="/static/images/mobile/copyright/wikipedia-wordmark-en.svg" style="width: 7.5em; height: 1.125em;"> <img class="mw-logo-tagline" alt="L'enciclopedia libera" src="/static/images/mobile/copyright/wikipedia-tagline-it.svg" width="120" height="13" style="width: 7.5em; height: 0.8125em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/Speciale:Ricerca" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Cerca in Wikipedia [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Ricerca</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Cerca in Wikipedia" aria-label="Cerca in Wikipedia" autocapitalize="sentences" title="Cerca in Wikipedia [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Speciale:Ricerca"> </div> <button class="cdx-button cdx-search-input__end-button">Ricerca</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Strumenti personali"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Aspetto"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="Modifica la dimensione, la larghezza e il colore del testo" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Aspetto" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Aspetto</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="//donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_it.wikipedia.org&uselang=it" class=""><span>Fai una donazione</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Speciale:CreaUtenza&returnto=METAFONT" title="Si consiglia di registrarsi e di effettuare l'accesso, anche se non è obbligatorio" class=""><span>registrati</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Speciale:Entra&returnto=METAFONT" title="Si consiglia di effettuare l'accesso, anche se non è obbligatorio [o]" accesskey="o" class=""><span>entra</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="Altre opzioni" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Strumenti personali" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Strumenti personali</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="Menu utente" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="//donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_it.wikipedia.org&uselang=it"><span>Fai una donazione</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Speciale:CreaUtenza&returnto=METAFONT" title="Si consiglia di registrarsi e di effettuare l'accesso, anche se non è obbligatorio"><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>registrati</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Speciale:Entra&returnto=METAFONT" title="Si consiglia di effettuare l'accesso, anche se non è obbligatorio [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>entra</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Pagine per utenti anonimi <a href="/wiki/Aiuto:Benvenuto" aria-label="Ulteriori informazioni sulla contribuzione"><span>ulteriori informazioni</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Speciale:MieiContributi" title="Un elenco delle modifiche fatte da questo indirizzo IP [y]" accesskey="y"><span>contributi</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Speciale:MieDiscussioni" title="Discussioni sulle modifiche fatte da questo indirizzo IP [n]" accesskey="n"><span>discussioni</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Sito"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Indice" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Indice</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">sposta nella barra laterale</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">nascondi</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">Inizio</div> </a> </li> <li id="toc-Modalità_di_funzionamento" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Modalità_di_funzionamento"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>Modalità di funzionamento</span> </div> </a> <button aria-controls="toc-Modalità_di_funzionamento-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Attiva/disattiva la sottosezione Modalità di funzionamento</span> </button> <ul id="toc-Modalità_di_funzionamento-sublist" class="vector-toc-list"> <li id="toc-File_di_output" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#File_di_output"> <div class="vector-toc-text"> <span class="vector-toc-numb">1.1</span> <span>File di output</span> </div> </a> <ul id="toc-File_di_output-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Linguaggio" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Linguaggio"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>Linguaggio</span> </div> </a> <button aria-controls="toc-Linguaggio-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Attiva/disattiva la sottosezione Linguaggio</span> </button> <ul id="toc-Linguaggio-sublist" class="vector-toc-list"> <li id="toc-Variabili_ed_equazioni" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Variabili_ed_equazioni"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1</span> <span>Variabili ed equazioni</span> </div> </a> <ul id="toc-Variabili_ed_equazioni-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Sintassi" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Sintassi"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.2</span> <span>Sintassi</span> </div> </a> <ul id="toc-Sintassi-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Grafica" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Grafica"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.3</span> <span>Grafica</span> </div> </a> <ul id="toc-Grafica-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Uso" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Uso"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>Uso</span> </div> </a> <ul id="toc-Uso-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Storia" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Storia"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>Storia</span> </div> </a> <ul id="toc-Storia-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Esempio" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Esempio"> <div class="vector-toc-text"> <span class="vector-toc-numb">5</span> <span>Esempio</span> </div> </a> <ul id="toc-Esempio-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Produzione_di_font_PostScript_Type_1" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Produzione_di_font_PostScript_Type_1"> <div class="vector-toc-text"> <span class="vector-toc-numb">6</span> <span>Produzione di font PostScript Type 1</span> </div> </a> <ul id="toc-Produzione_di_font_PostScript_Type_1-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Note" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Note"> <div class="vector-toc-text"> <span class="vector-toc-numb">7</span> <span>Note</span> </div> </a> <ul id="toc-Note-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Altri_progetti" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Altri_progetti"> <div class="vector-toc-text"> <span class="vector-toc-numb">8</span> <span>Altri progetti</span> </div> </a> <ul id="toc-Altri_progetti-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Collegamenti_esterni" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Collegamenti_esterni"> <div class="vector-toc-text"> <span class="vector-toc-numb">9</span> <span>Collegamenti esterni</span> </div> </a> <ul id="toc-Collegamenti_esterni-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Indice" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Mostra/Nascondi l'indice" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Mostra/Nascondi l'indice</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">METAFONT</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector" aria-label="Vai a una voce in un'altra lingua. Disponibile in 16 lingue" > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive mw-portlet-lang-heading-16" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language-progressive mw-ui-icon-wikimedia-language-progressive"></span> <span class="vector-dropdown-label-text">16 lingue</span> </label> <div class="vector-dropdown-content"> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="interlanguage-link interwiki-ca mw-list-item"><a href="https://ca.wikipedia.org/wiki/Metafont" title="Metafont - catalano" lang="ca" hreflang="ca" data-title="Metafont" data-language-autonym="Català" data-language-local-name="catalano" class="interlanguage-link-target"><span>Català</span></a></li><li class="interlanguage-link interwiki-cs mw-list-item"><a href="https://cs.wikipedia.org/wiki/Metafont" title="Metafont - ceco" lang="cs" hreflang="cs" data-title="Metafont" data-language-autonym="Čeština" data-language-local-name="ceco" class="interlanguage-link-target"><span>Čeština</span></a></li><li class="interlanguage-link interwiki-de mw-list-item"><a href="https://de.wikipedia.org/wiki/Metafont" title="Metafont - tedesco" lang="de" hreflang="de" data-title="Metafont" data-language-autonym="Deutsch" data-language-local-name="tedesco" class="interlanguage-link-target"><span>Deutsch</span></a></li><li class="interlanguage-link interwiki-en mw-list-item"><a href="https://en.wikipedia.org/wiki/Metafont" title="Metafont - inglese" lang="en" hreflang="en" data-title="Metafont" data-language-autonym="English" data-language-local-name="inglese" class="interlanguage-link-target"><span>English</span></a></li><li class="interlanguage-link interwiki-es mw-list-item"><a href="https://es.wikipedia.org/wiki/METAFONT" title="METAFONT - spagnolo" lang="es" hreflang="es" data-title="METAFONT" data-language-autonym="Español" data-language-local-name="spagnolo" class="interlanguage-link-target"><span>Español</span></a></li><li class="interlanguage-link interwiki-fa mw-list-item"><a href="https://fa.wikipedia.org/wiki/%D9%81%D8%B1%D8%A7%D9%82%D9%84%D9%85" title="فراقلم - persiano" lang="fa" hreflang="fa" data-title="فراقلم" data-language-autonym="فارسی" data-language-local-name="persiano" class="interlanguage-link-target"><span>فارسی</span></a></li><li class="interlanguage-link interwiki-fr mw-list-item"><a href="https://fr.wikipedia.org/wiki/Metafont" title="Metafont - francese" lang="fr" hreflang="fr" data-title="Metafont" data-language-autonym="Français" data-language-local-name="francese" class="interlanguage-link-target"><span>Français</span></a></li><li class="interlanguage-link interwiki-ja mw-list-item"><a href="https://ja.wikipedia.org/wiki/METAFONT" title="METAFONT - giapponese" lang="ja" hreflang="ja" data-title="METAFONT" data-language-autonym="日本語" data-language-local-name="giapponese" class="interlanguage-link-target"><span>日本語</span></a></li><li class="interlanguage-link interwiki-ko mw-list-item"><a href="https://ko.wikipedia.org/wiki/%EB%A9%94%ED%83%80%ED%8F%B0%ED%8A%B8" title="메타폰트 - coreano" lang="ko" hreflang="ko" data-title="메타폰트" data-language-autonym="한국어" data-language-local-name="coreano" class="interlanguage-link-target"><span>한국어</span></a></li><li class="interlanguage-link interwiki-pl mw-list-item"><a href="https://pl.wikipedia.org/wiki/METAFONT" title="METAFONT - polacco" lang="pl" hreflang="pl" data-title="METAFONT" data-language-autonym="Polski" data-language-local-name="polacco" class="interlanguage-link-target"><span>Polski</span></a></li><li class="interlanguage-link interwiki-pt mw-list-item"><a href="https://pt.wikipedia.org/wiki/METAFONT" title="METAFONT - portoghese" lang="pt" hreflang="pt" data-title="METAFONT" data-language-autonym="Português" data-language-local-name="portoghese" class="interlanguage-link-target"><span>Português</span></a></li><li class="interlanguage-link interwiki-ro mw-list-item"><a href="https://ro.wikipedia.org/wiki/METAFONT" title="METAFONT - rumeno" lang="ro" hreflang="ro" data-title="METAFONT" data-language-autonym="Română" data-language-local-name="rumeno" class="interlanguage-link-target"><span>Română</span></a></li><li class="interlanguage-link interwiki-ru mw-list-item"><a href="https://ru.wikipedia.org/wiki/METAFONT" title="METAFONT - russo" lang="ru" hreflang="ru" data-title="METAFONT" data-language-autonym="Русский" data-language-local-name="russo" class="interlanguage-link-target"><span>Русский</span></a></li><li class="interlanguage-link interwiki-sv mw-list-item"><a href="https://sv.wikipedia.org/wiki/Metafont" title="Metafont - svedese" lang="sv" hreflang="sv" data-title="Metafont" data-language-autonym="Svenska" data-language-local-name="svedese" class="interlanguage-link-target"><span>Svenska</span></a></li><li class="interlanguage-link interwiki-uk mw-list-item"><a href="https://uk.wikipedia.org/wiki/Metafont" title="Metafont - ucraino" lang="uk" hreflang="uk" data-title="Metafont" data-language-autonym="Українська" data-language-local-name="ucraino" class="interlanguage-link-target"><span>Українська</span></a></li><li class="interlanguage-link interwiki-zh mw-list-item"><a href="https://zh.wikipedia.org/wiki/METAFONT" title="METAFONT - cinese" lang="zh" hreflang="zh" data-title="METAFONT" data-language-autonym="中文" data-language-local-name="cinese" class="interlanguage-link-target"><span>中文</span></a></li> </ul> <div class="after-portlet after-portlet-lang"><span class="wb-langlinks-edit wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q1457000#sitelinks-wikipedia" title="Modifica collegamenti interlinguistici" class="wbc-editpage">Modifica collegamenti</a></span></div> </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Namespace"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/METAFONT" title="Vedi la voce [c]" accesskey="c"><span>Voce</span></a></li><li id="ca-talk" class="vector-tab-noicon mw-list-item"><a href="/wiki/Discussione:METAFONT" rel="discussion" title="Vedi le discussioni relative a questa pagina [t]" accesskey="t"><span>Discussione</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Cambia versione linguistica" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">italiano</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Visite"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/METAFONT"><span>Leggi</span></a></li><li id="ca-ve-edit" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=METAFONT&veaction=edit" title="Modifica questa pagina [v]" accesskey="v"><span>Modifica</span></a></li><li id="ca-edit" class="collapsible vector-tab-noicon mw-list-item"><a href="/w/index.php?title=METAFONT&action=edit" title="Modifica il wikitesto di questa pagina [e]" accesskey="e"><span>Modifica wikitesto</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=METAFONT&action=history" title="Versioni precedenti di questa pagina [h]" accesskey="h"><span>Cronologia</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Strumenti pagine"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Strumenti" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Strumenti</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Strumenti</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">sposta nella barra laterale</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">nascondi</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="Altre opzioni" > <div class="vector-menu-heading"> Azioni </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/METAFONT"><span>Leggi</span></a></li><li id="ca-more-ve-edit" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=METAFONT&veaction=edit" title="Modifica questa pagina [v]" accesskey="v"><span>Modifica</span></a></li><li id="ca-more-edit" class="collapsible vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=METAFONT&action=edit" title="Modifica il wikitesto di questa pagina [e]" accesskey="e"><span>Modifica wikitesto</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=METAFONT&action=history"><span>Cronologia</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> Generale </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Speciale:PuntanoQui/METAFONT" title="Elenco di tutte le pagine che sono collegate a questa [j]" accesskey="j"><span>Puntano qui</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Speciale:ModificheCorrelate/METAFONT" rel="nofollow" title="Elenco delle ultime modifiche alle pagine collegate a questa [k]" accesskey="k"><span>Modifiche correlate</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/wiki/Speciale:PagineSpeciali" title="Elenco di tutte le pagine speciali [q]" accesskey="q"><span>Pagine speciali</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=METAFONT&oldid=139200830" title="Collegamento permanente a questa versione di questa pagina"><span>Link permanente</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=METAFONT&action=info" title="Ulteriori informazioni su questa pagina"><span>Informazioni pagina</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=Speciale:Cita&page=METAFONT&id=139200830&wpFormIdentifier=titleform" title="Informazioni su come citare questa pagina"><span>Cita questa voce</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Speciale:UrlShortener&url=https%3A%2F%2Fit.wikipedia.org%2Fwiki%2FMETAFONT"><span>Ottieni URL breve</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Speciale:QrCode&url=https%3A%2F%2Fit.wikipedia.org%2Fwiki%2FMETAFONT"><span>Scarica codice QR</span></a></li> </ul> </div> </div> <div id="p-coll-print_export" class="vector-menu mw-portlet mw-portlet-coll-print_export" > <div class="vector-menu-heading"> Stampa/esporta </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-create_a_book" class="mw-list-item"><a href="/w/index.php?title=Speciale:Libro&bookcmd=book_creator&referer=METAFONT"><span>Crea un libro</span></a></li><li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=Speciale:DownloadAsPdf&page=METAFONT&action=show-download-screen"><span>Scarica come PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=METAFONT&printable=yes" title="Versione stampabile di questa pagina [p]" accesskey="p"><span>Versione stampabile</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects" > <div class="vector-menu-heading"> In altri progetti </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="wb-otherproject-link wb-otherproject-commons mw-list-item"><a href="https://commons.wikimedia.org/wiki/Category:METAFONT" hreflang="en"><span>Wikimedia Commons</span></a></li><li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q1457000" title="Collegamento all'elemento connesso dell'archivio dati [g]" accesskey="g"><span>Elemento Wikidata</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Strumenti pagine"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Aspetto"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Aspetto</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">sposta nella barra laterale</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">nascondi</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">Da Wikipedia, l'enciclopedia libera.</div> </div> <div id="contentSub"><div id="mw-content-subtitle"></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="it" dir="ltr"><p><b>METAFONT</b> è un <a href="/wiki/Linguaggio_di_descrizione_di_pagina" title="Linguaggio di descrizione di pagina">linguaggio di descrizione di pagina</a> usato per definire <a href="/wiki/Tipo_di_carattere_vettoriale" title="Tipo di carattere vettoriale">tipi di carattere vettoriale</a> e il relativo <a href="/wiki/Interprete_(informatica)" title="Interprete (informatica)">interprete</a>, che traduce il suo codice per generare caratteri bitmap utilizzabili, ad esempio nei documenti <a href="/wiki/Postscript" class="mw-redirect" title="Postscript">Postscript</a>, entrambi concepiti e realizzati da <a href="/wiki/Donald_Knuth" title="Donald Knuth">Donald Knuth</a> per realizzare uno strumento per il sistema di composizione tipografica <a href="/wiki/TeX" title="TeX"><span style="letter-spacing:-0.1em">T<sub><span style="font-size:larger">E</span></sub>X</span></a>. </p><p><a href="/wiki/Donald_Knuth" title="Donald Knuth">Knuth</a> iniziò a lavorare sul programma per la creazione di caratteri nel <a href="/wiki/1977" title="1977">1977</a>, e produsse la prima versione di METAFONT nel <a href="/wiki/1979" title="1979">1979</a>. A causa di inadeguatezze nel linguaggio METAFONT originale, Knuth sviluppò un nuovo sistema nel <a href="/wiki/1984" title="1984">1984</a>, ed è questo sistema aggiornato che è ancora in uso oggi; METAFONT enumera le versioni con un sistema simile a <a href="/wiki/TeX" title="TeX"><span style="letter-spacing:-0.1em">T<sub><span style="font-size:larger">E</span></sub>X</span></a>, in cui il numero si avvicina <a href="/wiki/Asintoto" title="Asintoto">asintoticamente</a> ad <i><a href="/wiki/E_(costante_matematica)" title="E (costante matematica)">e</a></i> ad ogni revisione. </p><p>Mentre il METAFONT per definizione genera <a href="/wiki/Grafica_raster" title="Grafica raster">grafica raster</a>, <a href="/w/index.php?title=John_Hobby&action=edit&redlink=1" class="new" title="John Hobby (la pagina non esiste)">John Hobby</a> ha reimplementato questo linguaggio per generare codice <a href="/wiki/PostScript" title="PostScript">PostScript</a>. È nato così il <a href="/wiki/MetaPost" title="MetaPost">MetaPost</a>, che sfrutta la versatilità del linguaggio ideato da Knuth per generare <a href="/wiki/Grafica_vettoriale" title="Grafica vettoriale">grafica vettoriale</a>. </p> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2"><h2 id="Modalità_di_funzionamento"><span id="Modalit.C3.A0_di_funzionamento"></span>Modalità di funzionamento</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=METAFONT&veaction=edit&section=1" title="Modifica la sezione Modalità di funzionamento" class="mw-editsection-visualeditor"><span>modifica</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=METAFONT&action=edit&section=1" title="Edit section's source code: Modalità di funzionamento"><span>modifica wikitesto</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Metafont viene spesso eseguito come supporto per i driver dei dispositivi di output (stampante, schermo); in questi casi, il suo compito è generare bitmap per un carattere per una specifica combinazione di dispositivo di output (chiamato <i>modalità</i> in Metafont) e risoluzione(visibile nel nome del file di output, vedi sotto). Queste bitmap sono tipicamente memorizzate per un successivo riutilizzo, in modo che Metafont non debba essere eseguito ogni volta che viene visualizzato un documento, ma d'altra parte le distribuzioni TeX con un componente Metafont non hanno tipicamente incluso alcun carattere bitmap precostruito, poiché sarebbero piuttosto grandi rispetto alle fonti da cui potrebbero essere generati. Poiché i font Metafont erano tradizionalmente l'impostazione predefinita di TeX da cui altri formati di font erano eccezioni, un'installazione incompleta di un font non Metafont a volte può comportare la chiamata di Metafont e l'emissione di un confuso messaggio di errore " <i>somefont</i>.mf not found". </p><p>Altrettanto importante, ma non così comune, è l'esecuzione di Metafont per generare un file di metrica dei caratteri (TFM); un file TFM viene generato solo se la variabile di <i>creazione</i> del <i>carattere</i> è positiva. Tradizionalmente le distribuzioni TeX sono spesso fornite con tutti i file TFM pre-generati (dato che sono piuttosto piccoli), ma qualcuno che installa un font Metafont dai sorgenti dovrà generare il suo file TFM prima che TeX possa usarlo. </p><p>Un terzo modo di utilizzare Metafont è la <i>modalità di prova</i>: se la variabile di <i>correzione</i> è positiva, il file del font bitmap contiene anche informazioni aggiuntive fornite tramite comandi <code>special</code>, in particolare le posizioni e i nomi dei punti che il designer del font ha considerato importanti per il design. Se si utilizza l'utilità <code>gftodvi</code> separata per generare immagini ingrandite dei glifi dei caratteri, vengono incluse queste informazioni dalle offerte speciali; le posizioni dei punti non sono limitate alla risoluzione dei pixel. </p><p>Metafont può anche essere eseguito in modo interattivo e dispone di comandi per visualizzare sullo schermo le immagini che produce. Knuth ha affermato di utilizzare Metafont come una sorta di calcolatrice da tavolo per risolvere equazioni complicate, sebbene ora utilizzi MetaPost per le illustrazioni matematiche. </p><p>Metafont può eseguire il rendering di qualsiasi tipo di output grafico, non solo glifi. Tuttavia, MetaPost e Asymptote sono preferiti per le illustrazioni matematiche. Metafont è più comunemente invocato senza una richiesta diretta da parte dell'utente. I file DVI possono contenere solo riferimenti a caratteri tipografici, piuttosto che i set di glifi raster o vettoriali consentiti da altri formati come PostScript. Di conseguenza, è necessario accedere ai glifi nei caratteri tipografici ogni volta che viene richiesta la visualizzazione, la stampa o la conversione di un file DVI. </p> <div class="mw-heading mw-heading3"><h3 id="File_di_output">File di output</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=METAFONT&veaction=edit&section=2" title="Modifica la sezione File di output" class="mw-editsection-visualeditor"><span>modifica</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=METAFONT&action=edit&section=2" title="Edit section's source code: File di output"><span>modifica wikitesto</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Metafont genera diversi tipi di file: per un file chiamato <code>NAME.mf</code>, può generare: </p> <ul><li><code>NAME.NNNNgf</code> - File con output raster alla risoluzione NNNN (2602 per impostazione predefinita).</li> <li><code>NAME.tfm</code> - File con la metrica dei caratteri TeX, che sono le informazioni di cui TeX ha bisogno. Di solito si deve dire a metafont di generare questo file.</li> <li><code>NAME.log</code>: Log file output dall'elaborazione</li></ul> <p>Dopo aver eseguito Metafont, in genere si utilizza il programma gftopk per convertire i file <code>NNNNgf</code> in formato <code>pk</code> (packed) <code>.NNNNpk</code>. Il formato pk è stato introdotto principalmente per ridurre le dimensioni del file (a circa la metà), ma si prevede anche che acceleri l'elaborazione poiché dovrebbero essere input / output meno dati. I formati GF e PK utilizzano entrambi la <a href="/wiki/Run-length_encoding" title="Run-length encoding">run-length encoding</a> dei bitmap, ma producono codifiche binarie diverse delle run-lengths. Il formato PK esegue anche una pre-elaborazione dei bitmap (riquadro di delimitazione, eliminazione di righe ripetute) e codifica tutte le righe di un carattere come una lunga sequenza di bit<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup>. </p><p>Nello standard <i>TeX Directory Structure</i>, i nomi dei file sono limitati a 8 + 3 caratteri, quindi i file GF e PK avrebbero solo estensioni<code>.gf</code>e<code>.pk</code>. I file per diverse risoluzioni vengono tenuti separati posizionandoli in directory separate, denominate <code>dpi</code>NNNN, ad esempio <code>dpi300/cmr10.pk</code>. </p> <div class="mw-heading mw-heading2"><h2 id="Linguaggio">Linguaggio</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=METAFONT&veaction=edit&section=3" title="Modifica la sezione Linguaggio" class="mw-editsection-visualeditor"><span>modifica</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=METAFONT&action=edit&section=3" title="Edit section's source code: Linguaggio"><span>modifica wikitesto</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Il linguaggio Metafont è un linguaggio interpretato per programmi che sono <i>essenzialmente dichiarativi piuttosto che imperativi<sup id="cite_ref-METAFONTbook_2-0" class="reference"><a href="#cite_note-METAFONTbook-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup></i>. </p> <div class="mw-heading mw-heading3"><h3 id="Variabili_ed_equazioni">Variabili ed equazioni</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=METAFONT&veaction=edit&section=4" title="Modifica la sezione Variabili ed equazioni" class="mw-editsection-visualeditor"><span>modifica</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=METAFONT&action=edit&section=4" title="Edit section's source code: Variabili ed equazioni"><span>modifica wikitesto</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Le variabili in Metafont possono essere di otto tipi diversi: </p> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:Metafont_pens.png" class="mw-file-description"><img alt="Con Metafont è possibile selezionare penne diverse per produrre forme diverse con la stessa pennellata." src="//upload.wikimedia.org/wikipedia/commons/thumb/3/34/Metafont_pens.png/220px-Metafont_pens.png" decoding="async" width="220" height="211" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/3/34/Metafont_pens.png 1.5x" data-file-width="271" data-file-height="260" /></a><figcaption>Con Metafont è possibile selezionare penne diverse per produrre forme diverse con la stessa pennellata.</figcaption></figure> <ul><li>Numerico (<code>Numeric</code>): numeri con segno a virgola fissa con una <a href="/wiki/Epsilon" title="Epsilon">epsilon</a> di <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 2^{-16}}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <msup> <mn>2</mn> <mrow class="MJX-TeXAtom-ORD"> <mo>−<!-- − --></mo> <mn>16</mn> </mrow> </msup> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle 2^{-16}}</annotation> </semantics> </math></span><img src="https://wikimedia.org/api/rest_v1/media/math/render/svg/382ca217daae8c7e3ab934502a5e758cd390c782" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:4.317ex; height:2.676ex;" alt="{\displaystyle 2^{-16}}"></span>, il limite massimo è inferiore a 4096 (Q12.16). Questa è l'impostazione predefinita per le variabili non dichiarate di un altro carattere.</li> <li>Coppia (<code>Pair</code>): una coppia di valori numerici, utilizzata principalmente per rappresentare punti nel piano.</li> <li>Tracciato (<code>Path</code>): come in PostScript / PDF / SVG, una curva parametrica nel piano le cui funzioni di coordinate sono polinomi cubici a tratti. Come in questi altri sistemi, i segmenti di tracciato sono codificati come curve di Bézier in termini di nodi e punti di controllo.</li> <li>Trasforma (<code>Transform</code>): una trasformazione affine del piano, equivalente a una "matrice (trasformazione)" in PostScript / PDF.</li> <li>Penna (<code>Pen</code>): un poligono convesso, che rappresenta la forma di una "penna" usata per disegnare.</li> <li>Immagine (<code>Picture</code>): un'immagine raster con un valore intero con segno per ogni pixel.</li> <li>Booleano (<code>Boolean</code>)</li> <li>Stringa (<code>String</code>) di caratteri a 8 bit.</li></ul> <p>Metapost aggiunge il colore (una tripla di valori numerici) come nono carattere e ha un modello completamente diverso (non raster) per le immagini; quest'ultimo è il principale punto di divergenza tra i due programmi. Le macro di Metafont vardef vivono anche nello stesso spazio dei nomi delle variabili e possono in qualche modo essere considerate come un nono tipo di variabile, sebbene le macro non esistano come valori di prima classe in Metafont. </p><p>Insolitamente, i nomi delle variabili non sono semplici token, ma sequenze di token simbolici e indici numerici; il nome della variabile <code>x2r</code>non è quindi un token alfanumerico, ma una sequenza dei tre token <code>x</code>(simbolico), <code>2</code>(numerico) e <code>r</code>(simbolico). I caratteri <a href="/wiki/Record_(informatica)" title="Record (informatica)">record</a> e <a href="/wiki/Array" title="Array">array</a> possono essere simulati attraverso raccolte di variabili che condividono un prefisso di nome comune, un idioma supportato dal sistema di dichiarazione del carattere che fornisce a tutte le variabili i cui nomi che differiscono solo negli indici numerici lo stesso carattere (come previsto per gli array) mantenendo le variabili intere name differiscono in alcuni token simbolici separati (come previsto per i record). </p><p>Una caratteristica molto distintiva di Metafont è l'uso di equazioni per definire le variabili. Una variabile numerica (o componente di una coppia o variabile di trasformazione) può essere nei tre stati <i>noto</i> (insieme), <i>sconosciuto indipendente</i> (non impostato) e <i>sconosciuto dipendente</i> (non impostato, ma dato da un'espressione lineare di uno o più indipendenti). Quando Metafont esegue un'istruzione di equazione, trasforma uno degli indipendenti coinvolti in un dipendente e lo elimina dalle espressioni per tutti gli altri dipendenti; quando non rimangono indipendenti nell'espressione per una variabile dipendente, quella variabile diventa nota. Risoluzione di sistemi di equazioni <i>lineari</i> quindi è una caratteristica incorporata del linguaggio Metafont, e il metodo consigliato per assegnare la maggior parte delle variabili (specialmente quelle i cui valori hanno un significato geometrico) è di indicare le equazioni che determinano i loro valori. I sistemi di equazioni spesso mescolano equazioni numeriche (scalari) con equazioni a coppie (vettoriali). </p><p>Un'eccezione a quanto sopra è la classe delle variabili di <i>quantità interne</i>. Questi hanno nomi costituiti da un solo segno simbolico, sono sempre numerici e sono sempre noti. Hanno una rappresentazione interna più diretta rispetto alle variabili ordinarie, il che rende conveniente per le operazioni primitive in Metafont (o le sue estensioni) usarle implicitamente. </p> <div class="mw-heading mw-heading3"><h3 id="Sintassi">Sintassi</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=METAFONT&veaction=edit&section=5" title="Modifica la sezione Sintassi" class="mw-editsection-visualeditor"><span>modifica</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=METAFONT&action=edit&section=5" title="Edit section's source code: Sintassi"><span>modifica wikitesto</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Metafont ha token numerici e costanti di stringa con sintassi mainstream; le stringhe sono delimitate da <code>"</code>(virgolette), le costanti numeriche possono avere decimali ma non una parte esponente. Tutti gli altri token sono classificati come <i>simbolici</i> e possono essere ridefiniti arbitrariamente; non vi è alcuna restrizione che i token con determinati significati debbano avere nomi composti da determinati caratteri. In fase di esecuzione, possono esserci in aggiunta token <i>capsula</i>, che sono effettivamente token a valore costante di tipo arbitrario; nel codice sorgente questi appaiono come token simbolici. </p><p>Tranne quando i caratteri sono coinvolti in costanti numeriche o stringa, l'estensione del token contenente un particolare carattere dipende dalla classe a cui appartiene il carattere; a differenza di TeX, Metafont ha classi di caratteri fisse. I caratteri<code>,</code>, <code>;</code>, <code>(</code>, e <code>)</code>sono "solitari" e formano solo token a carattere singolo. Per le classi di caratteri <code><=>:|</code>, <code>‘’</code>(apici), <code>+-</code>, <code>/*\</code>, <code>!?</code>, <code>#&@$</code>, <code>^~</code>, <code>[</code>, <code>]</code>, <code>{}</code>, e<code>.</code>, così come la classe di sottolineatura insieme a maiuscole e minuscole A-Z, il token consiste della più lunga sequenza consecutiva di caratteri dal medesimo classe. I caratteri con spazi bianchi non contribuiscono con i token.<code>%</code> avvia un commento che dura fino alla fine della riga. </p><p>Un'applicazione notevole di queste regole è che <code>#</code>appare frequentemente come parte dei nomi delle variabili nel codice Metafont, ad esempio <code>em#</code>e <code>pt#</code>. </p><p>I delimitatori (come le parentesi) non hanno significati incorporati, invece c'è un comando che trasforma due token simbolici in una coppia di delimitatori corrispondenti, ma normalmente i programmi Metafont usano solo le parentesi ordinarie. Oltre a sovrascrivere le priorità nelle espressioni, sono necessari anche delimitatori per certi tipi di argomenti macro. </p> <div class="mw-heading mw-heading3"><h3 id="Grafica">Grafica</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=METAFONT&veaction=edit&section=6" title="Modifica la sezione Grafica" class="mw-editsection-visualeditor"><span>modifica</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=METAFONT&action=edit&section=6" title="Edit section's source code: Grafica"><span>modifica wikitesto</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Le curve in Metafont sono definite come spline cubiche piuttosto che quadratiche, per una maggiore versatilità a scapito di un'aritmetica più complessa<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>. </p><p>A differenza dei formati di font outline più comuni (come TrueType o PostScript Type 1), un font Metafont è composto principalmente da tratti con "penne" di larghezza finita, insieme a aree riempite. Pertanto, invece di descrivere direttamente il contorno del glifo, un file Metafont descrive i percorsi della penna. Alcuni caratteri Metafont più semplici, come i caratteri matematici calligrafici della famiglia Computer Modern, utilizzano un singolo tratto di penna con una penna relativamente grande per definire ogni "tratto" visivo dei glifi. Caratteri più complessi come il tondo della famiglia Computer Modern utilizzano una piccola penna per tracciare il contorno dei "tratti" visivi, che vengono poi riempiti; il risultato è molto simile a un carattere di contorno, ma con angoli leggermente ammorbiditi definiti dalla forma della penna. </p><p>Poiché le forme dei caratteri sono definite da equazioni piuttosto che da numeri codificati direttamente, è possibile trattare parametri come le proporzioni, l'inclinazione del carattere, la larghezza del tratto, la dimensione del serif e così via come parametri di input in ciascuna definizione di glifo (che quindi non definiscono un singolo carattere, ma un meta-font). Pertanto, modificando il valore di uno di questi parametri in una posizione nel file Metafont, è possibile produrre una modifica coerente in tutto il carattere. Computer Modern Roman illustra molti usi di questa funzione; una tipica installazione di TeX include un numero di versioni del font in dimensioni da 5 pt a 17 pt, con le larghezze del tratto uguali in tutte le dimensioni (invece di aumentare quando il carattere viene ridimensionato) e le proporzioni che si allargano nelle dimensioni più piccole per una maggiore leggibilità. Inoltre, la macchina da scrivere Computer Modern e i caratteri <a href="/wiki/Caratteri_tipografici_senza_grazie" title="Caratteri tipografici senza grazie">sans-serif</a> sono definiti utilizzando essenzialmente lo stesso file Metafont del carattere romano, ma con parametri globali diversi. </p> <div class="mw-heading mw-heading2"><h2 id="Uso">Uso</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=METAFONT&veaction=edit&section=7" title="Modifica la sezione Uso" class="mw-editsection-visualeditor"><span>modifica</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=METAFONT&action=edit&section=7" title="Edit section's source code: Uso"><span>modifica wikitesto</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Sebbene noti designer di caratteri, come Hermann Zapf, abbiano collaborato con Knuth per creare nuovi caratteri utilizzando Metafont, il sistema non è stato ampiamente adottato dai progettisti di caratteri professionisti. Knuth attribuisce questo al fatto che "chiedere a un artista di diventare abbastanza matematico per capire come scrivere un font con 60 parametri è troppo"<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup>. Jonathan Hoefler ha commentato che il sistema Metafont alla fine è diventato "<i>una tecnologia dietro nessuno dei tuoi caratteri preferiti... L'idea di Knuth che le lettere inizino con forme scheletriche è sbagliata</i>"<sup id="cite_ref-skeletal_forms_5-0" class="reference"><a href="#cite_note-skeletal_forms-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup>. </p><p>Il sistema Metafont consente di elaborare i caratteri in modi insoliti; nel 1982 Knuth ha mostrato come potrebbe essere usato per trasformare i caratteri, con un carattere serif che passa lentamente in un design sans-serif nel corso di un testo<sup id="cite_ref-The_Concept_of_a_Meta-Font_6-0" class="reference"><a href="#cite_note-The_Concept_of_a_Meta-Font-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup>. </p> <div class="mw-heading mw-heading2"><h2 id="Storia">Storia</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=METAFONT&veaction=edit&section=8" title="Modifica la sezione Storia" class="mw-editsection-visualeditor"><span>modifica</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=METAFONT&action=edit&section=8" title="Edit section's source code: Storia"><span>modifica wikitesto</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Donald Knuth ha iniziato a lavorare sul software per la creazione di caratteri nel 1977 e ha prodotto la prima versione di Metafont nel 1979. A causa di carenze nel linguaggio Metafont originale, Knuth ha sviluppato un sistema Metafont completamente nuovo nel 1984, ed è questo sistema rivisto che viene utilizzato oggi; Metafont ha un sistema di versioning simile a quello di TeX, dove il numero si avvicina asintoticamente a <i>e</i> ad ogni revisione<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup>. </p> <div class="mw-heading mw-heading2"><h2 id="Esempio">Esempio</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=METAFONT&veaction=edit&section=9" title="Modifica la sezione Esempio" class="mw-editsection-visualeditor"><span>modifica</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=METAFONT&action=edit&section=9" title="Edit section's source code: Esempio"><span>modifica wikitesto</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Il seguente esempio crea una forma simile a un fagiolo chiuso per il carattere "B" di un font: </p> <div class="mw-highlight mw-highlight-lang-matlab mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="c">% nome file: beta.mf</span> <span class="linenos" data-line="2"></span><span class="c">% mode_setup;</span> <span class="linenos" data-line="3"></span><span class="c">% Definire una forma a fagiolo per il carattere B</span> <span class="linenos" data-line="4"></span><span class="n">beginchar</span><span class="w"> </span><span class="p">(</span><span class="w"> </span><span class="s">"B"</span><span class="p">,</span><span class="w"> </span><span class="mi">11</span><span class="w"> </span><span class="n">pt</span><span class="w"> </span>#<span class="p">,</span><span class="w"> </span><span class="mi">11</span><span class="w"> </span><span class="n">pt</span><span class="w"> </span>#<span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="w"> </span><span class="p">);</span> <span class="linenos" data-line="5"></span><span class="w"> </span><span class="c">% Imposta le coordinate come un sistema di equazioni</span> <span class="linenos" data-line="6"></span><span class="w"> </span><span class="n">y1</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="n">y2</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="n">y3</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="mi">0</span><span class="w"> </span><span class="p">;</span> <span class="linenos" data-line="7"></span><span class="w"> </span><span class="n">y4</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="n">y5</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="n">y6</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="n">h</span><span class="w"> </span><span class="p">;</span> <span class="linenos" data-line="8"></span><span class="w"> </span><span class="n">x1</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="n">x4</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="mi">0</span><span class="w"> </span><span class="p">;</span> <span class="linenos" data-line="9"></span><span class="w"> </span><span class="n">x2</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="n">x5</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="n">w</span><span class="w"> </span><span class="p">;</span> <span class="linenos" data-line="10"></span><span class="w"> </span><span class="n">x3</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="n">x6</span><span class="w"> </span><span class="p">=</span><span class="w"> </span><span class="mi">2</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">w</span><span class="w"> </span><span class="p">;</span> <span class="linenos" data-line="11"></span><span class="w"> </span> <span class="linenos" data-line="12"></span><span class="w"> </span><span class="c">% Definisci penna</span> <span class="linenos" data-line="13"></span><span class="w"> </span><span class="n">pickup</span><span class="w"> </span><span class="n">pencircle</span><span class="w"> </span><span class="n">xscaled</span><span class="w"> </span><span class="mi">0</span><span class="p">.</span>2<span class="n">w</span><span class="w"> </span><span class="n">yscaled</span><span class="w"> </span><span class="mi">0</span><span class="p">.</span>04<span class="n">w</span><span class="w"> </span><span class="n">rotated</span><span class="w"> </span><span class="mi">45</span><span class="p">;</span> <span class="linenos" data-line="14"></span><span class="w"> </span> <span class="linenos" data-line="15"></span><span class="w"> </span><span class="c">% Disegna la curva dei caratteri</span> <span class="linenos" data-line="16"></span><span class="w"> </span><span class="c">% z1 è uguale a (x1, y1)</span> <span class="linenos" data-line="17"></span><span class="w"> </span><span class="n">draw</span><span class="w"> </span><span class="n">z1</span><span class="p">..</span><span class="n">z3</span><span class="p">..</span><span class="n">z6</span><span class="p">{</span><span class="n">z2</span><span class="o">-</span><span class="n">z6</span><span class="p">}..</span><span class="n">z5</span><span class="p">..{</span><span class="n">z4</span><span class="o">-</span><span class="n">z2</span><span class="p">}</span><span class="n">z4</span><span class="p">..</span><span class="n">cycle</span><span class="p">;</span><span class="w"> </span><span class="n">endchar</span><span class="p">;</span> <span class="linenos" data-line="18"></span><span class="w"> </span> <span class="linenos" data-line="19"></span><span class="w"> </span><span class="k">end</span> </pre></div> <p>Questo produce il seguente glifo: </p> <figure class="mw-default-size mw-halign-none" typeof="mw:File/Thumb"><a href="/wiki/File:Metafont-example-output.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/f/f2/Metafont-example-output.svg/220px-Metafont-example-output.svg.png" decoding="async" width="220" height="96" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/f/f2/Metafont-example-output.svg/330px-Metafont-example-output.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/f/f2/Metafont-example-output.svg/440px-Metafont-example-output.svg.png 2x" data-file-width="568" data-file-height="247" /></a><figcaption></figcaption></figure> <p>L'esempio precedente verrà elaborato con una riga di comando come<sup id="cite_ref-grandsir_8-0" class="reference"><a href="#cite_note-grandsir-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup>: </p> <div class="mw-highlight mw-highlight-lang-bash mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span>mf<span class="w"> </span><span class="s1">'\ mode = ljfour; mode_setup; input beta.mf '</span><span class="w"> </span><span class="p">;</span> <span class="linenos" data-line="2"></span>gftopk<span class="w"> </span>beta.600gf<span class="w"> </span>beta.600pk </pre></div> <p>Quindi può essere utilizzato in un file LaTeX come (tutti i file dovrebbero risiedere nella stessa directory o il sistema TeX dovrebbe esserne informato usando metodi appropriati): </p> <div class="mw-highlight mw-highlight-lang-latex mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span></span><span class="linenos" data-line="1"></span><span class="k">\documentclass</span> <span class="nb">{</span> articolo <span class="nb">}</span> <span class="linenos" data-line="2"></span> <span class="linenos" data-line="3"></span><span class="k">\newfont</span> <span class="nb">{</span> <span class="k">\letterbeta</span> <span class="nb">}</span> <span class="nb">{</span> beta <span class="nb">}</span> <span class="linenos" data-line="4"></span><span class="k">\newcommand</span> <span class="nb">{</span> <span class="k">\otherbeta</span> <span class="nb">}</span> <span class="nb">{{</span> <span class="k">\letterbeta</span> B <span class="nb">}}</span> <span class="linenos" data-line="5"></span> <span class="linenos" data-line="6"></span><span class="k">\begin</span> <span class="nb">{</span> document <span class="nb">}</span> <span class="linenos" data-line="7"></span>Proviamo ad avere uno strano <span class="k">\otherbeta</span> <span class="k">\qui</span>. <span class="linenos" data-line="8"></span><span class="k">\end</span> <span class="nb">{</span> documento <span class="nb">}</span> </pre></div> <p>Il file PDF risultante dovrebbe essere simile a questo: <span typeof="mw:File"><a href="https://en.wikipedia.org/wiki/File:Tex_mf_beta.pdf"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/6/66/Tex_mf_beta.pdf/page1-187px-Tex_mf_beta.pdf.jpg" decoding="async" width="187" height="15" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/6/66/Tex_mf_beta.pdf/page1-281px-Tex_mf_beta.pdf.jpg 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/6/66/Tex_mf_beta.pdf/page1-374px-Tex_mf_beta.pdf.jpg 2x" data-file-width="372" data-file-height="29" /></a></span> </p> <div class="mw-heading mw-heading2"><h2 id="Produzione_di_font_PostScript_Type_1">Produzione di font PostScript Type 1</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=METAFONT&veaction=edit&section=10" title="Modifica la sezione Produzione di font PostScript Type 1" class="mw-editsection-visualeditor"><span>modifica</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=METAFONT&action=edit&section=10" title="Edit section's source code: Produzione di font PostScript Type 1"><span>modifica wikitesto</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Esistono diversi strumenti per convertire i programmi Metafont in font PostScript Type 1. La maggior parte fa uso della capacità di MetaPost di convertire un sottoinsieme del linguaggio di Metafont in profili EPS, che possono essere successivamente convertiti in font <a href="/wiki/PostScript" title="PostScript">PostScript</a> Type 1. La generazione di contorni vettoriali dei tratti di penna Metafont non è banale, poiché il modello Metafont di un glifo è un'immagine raster e i contorni esatti della maggior parte dei tratti non sono curve di Bézier. </p> <ul><li>Il team polacco JNS ha sviluppato METATYPE1<sup id="cite_ref-9" class="reference"><a href="#cite_note-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup> (basato su MetaPost) per la creazione di font PostScript Type 1. Il suo grande svantaggio è che non è possibile utilizzare penne, il che riduce notevolmente la potenza del linguaggio Metafont. Inizialmente, lo strumento è stato utilizzato dalla fonderia di caratteri tipografici polacca GUST per produrre una variante modernizzata ed estesa di Computer Modern, chiamata Latin Modern.</li> <li>mf2pt1<sup id="cite_ref-10" class="reference"><a href="#cite_note-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup>, anch'esso basato su <a href="/wiki/MetaPost" title="MetaPost">Metapost</a>, è stato sviluppato da Scott Pakin con alcuni contributi di Werner Lemberg. Ha anche diverse limitazioni dettagliate nel suo manuale, la più significativa è la restrizione secondo cui ogni glifo deve essere disegnato interamente da percorsi chiusi. Per superare i limiti di mf2pt1, l'output EPS di Metapost può essere post-elaborato con FontForge, che è in grado di interpretare complessi percorsi PostScript generati da Metapost dalle penne ellittiche di Metafont, e anche in grado di rimuovere le sovrapposizioni dei contorni. Poiché FontForge supporta lo scripting, anche questo passaggio di post-elaborazione può essere automatizzato. Questo approccio è stato utilizzato per produrre schemi di Type 1 per il carattere matematico MnSymbol sviluppato da Achim Blumensath; MnSymbol è stato progettato come "compagno" di Minion Pro.</li> <li>MetaFog<sup id="cite_ref-11" class="reference"><a href="#cite_note-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup> è un convertitore proprietario in grado di convertire analiticamente i tratti della penna, ma richiede una post-elaborazione manuale per eliminare i casi degeneri e non è disponibile pubblicamente. Può elaborare solo l'output di Metapost<sup id="cite_ref-12" class="reference"><a href="#cite_note-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup>.</li></ul> <p>L'approccio comune per generare caratteri di Type 1 con tratti di penna rimane quello di generare una bitmap ad alta risoluzione e quindi utilizzare un autotracer, implementato da pacchetti come mftrace<sup id="cite_ref-13" class="reference"><a href="#cite_note-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup> e TeXtrace<sup id="cite_ref-14" class="reference"><a href="#cite_note-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup>. </p> <div class="mw-heading mw-heading2"><h2 id="Note">Note</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=METAFONT&veaction=edit&section=11" title="Modifica la sezione Note" class="mw-editsection-visualeditor"><span>modifica</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=METAFONT&action=edit&section=11" title="Edit section's source code: Note"><span>modifica wikitesto</span></a><span class="mw-editsection-bracket">]</span></span></div> <div class="mw-references-wrap mw-references-columns"><ol class="references"> <li id="cite_note-1"><a href="#cite_ref-1"><b>^</b></a> <span class="reference-text"><cite class="citation pubblicazione" style="font-style:normal"> Tomas Rokicki, <a rel="nofollow" class="external text" href="https://www.tug.org/TUGboat/tb06-3/tb13pk.pdf"><span style="font-style:italic;">Packed (PK) Font File Format</span></a> (<span style="font-weight: bolder; font-size:80%"><abbr title="documento in formato PDF">PDF</abbr></span>), in <span style="font-style:italic;">TUGboat</span>, vol. 6, n. 3, 1985, pp. 115–120. <small>URL consultato il 9 agosto 2019</small>.</cite></span> </li> <li id="cite_note-METAFONTbook-2"><a href="#cite_ref-METAFONTbook_2-0"><b>^</b></a> <span class="reference-text"><cite class="citation libro" style="font-style:normal"> Donald Knuth, <a rel="nofollow" class="external text" href="https://archive.org/details/metafontbook00knut"><span style="font-style:italic;">The METAFONTbook</span></a>, Addison Wesley, 1986, <a href="/wiki/ISBN" title="ISBN">ISBN</a> <a href="/wiki/Speciale:RicercaISBN/0-201-13445-4" title="Speciale:RicercaISBN/0-201-13445-4">0-201-13445-4</a>.</cite></span> </li> <li id="cite_note-3"><a href="#cite_ref-3"><b>^</b></a> <span class="reference-text"><cite class="citation web" style="font-style:normal"> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20090122043044/http://www.advogato.org/article/28.html"><span style="font-style:italic;">Interview: Donald E. Knuth</span></a>, su <span style="font-style:italic;">advogato.org</span>, 25 gennaio 2000. <small>URL consultato il 13 gennaio 2016</small> <small>(archiviato dall'<abbr title="http://www.advogato.org/article/28.html">url originale</abbr> il 22 gennaio 2009)</small>.<br /><div class="cite-q">«...the mathematics is really simple for a quadratic. The corresponding thing for a cubic is six times as complicated...»</div></cite></span> </li> <li id="cite_note-4"><a href="#cite_ref-4"><b>^</b></a> <span class="reference-text">CSTUG, Charles University, Prague, March 1996, Questions and Answers with Prof. Donald E. Knuth, reproduced in TUGboat <b>17 (4)</b> (1996), 355–67. Citation is from page 361. Available online at <a rel="nofollow" class="external autonumber" href="http://www.tug.org/TUGboat/Articles/tb17-4/tb53knuc.pdf">[1]</a></span> </li> <li id="cite_note-skeletal_forms-5"><a href="#cite_ref-skeletal_forms_5-0"><b>^</b></a> <span class="reference-text"><cite class="citation web" style="font-style:normal"> Jonathan Hoefler, <a rel="nofollow" class="external text" href="https://twitter.com/HoeflerCo/status/655557339987226624"><span style="font-style:italic;">Knuth's idea that letters start with skeletal forms is flawed. But his work is important and had lasting impact.</span></a>, su <span style="font-style:italic;">twitter.com</span>, Twitter. <small>URL consultato il 18 agosto 2018</small>.</cite></span> </li> <li id="cite_note-The_Concept_of_a_Meta-Font-6"><a href="#cite_ref-The_Concept_of_a_Meta-Font_6-0"><b>^</b></a> <span class="reference-text"><cite class="citation pubblicazione" style="font-style:normal"> Donald Knuth, <a rel="nofollow" class="external text" href="https://s3-us-west-2.amazonaws.com/visiblelanguage/pdf/16.1/the-concept-of-a-meta-font.pdf"><span style="font-style:italic;">The Concept of a Meta-Font</span></a> (<span style="font-weight: bolder; font-size:80%"><abbr title="documento in formato PDF">PDF</abbr></span>), in <span style="font-style:italic;">Visible Language</span>, vol. 16, n. 1, 1982, pp. 3–27.</cite></span> </li> <li id="cite_note-7"><a href="#cite_ref-7"><b>^</b></a> <span class="reference-text"><cite class="citation web" style="font-style:normal"> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20110606120146/http://www-cs-faculty.stanford.edu/~uno/abcde.html#bugs"><span style="font-style:italic;">Knuth: Computers and Typesetting</span></a>, su <span style="font-style:italic;">www-cs-faculty.stanford.edu</span>. <small>URL consultato il 21 marzo 2021</small> <small>(archiviato dall'<abbr title="http://www-cs-faculty.stanford.edu/~uno/abcde.html#bugs">url originale</abbr> il 6 giugno 2011)</small>.</cite></span> </li> <li id="cite_note-grandsir-8"><a href="#cite_ref-grandsir_8-0"><b>^</b></a> <span class="reference-text"><cite class="citation web" style="font-style:normal"> Christophe Grandsir, <a rel="nofollow" class="external text" href="http://metafont.tutorial.free.fr/"><span style="font-style:italic;">METAFONT Tutorial</span></a>, su <span style="font-style:italic;">metafont.tutorial.free.fr</span>.</cite></span> </li> <li id="cite_note-9"><a href="#cite_ref-9"><b>^</b></a> <span class="reference-text"><cite class="citation web" style="font-style:normal"> <a rel="nofollow" class="external text" href="http://www.ctan.org/tex-archive/fonts/utilities/metatype1/"><span style="font-style:italic;">CTAN: tex-archive/fonts/utilities/metatype1</span></a>, su <span style="font-style:italic;">ctan.org</span>.</cite></span> </li> <li id="cite_note-10"><a href="#cite_ref-10"><b>^</b></a> <span class="reference-text"><cite class="citation web" style="font-style:normal"> <a rel="nofollow" class="external text" href="http://www.ctan.org/tex-archive/support/mf2pt1/"><span style="font-style:italic;">CTAN: tex-archive/support/mf2pt1</span></a>, su <span style="font-style:italic;">ctan.org</span>.</cite></span> </li> <li id="cite_note-11"><a href="#cite_ref-11"><b>^</b></a> <span class="reference-text"><cite class="citation web" style="font-style:normal"> <a rel="nofollow" class="external text" href="http://www.tug.org/TUGboat/Articles/tb16-3/tb48kinc.pdf"><span style="font-style:italic;">R. J. Kinch, "MetaFog: converting Metafont shapes to contours", <i>TUGboat</i> <b>16(3)</b>, 233–43 (1995)</span></a> (<span style="font-weight: bolder; font-size:80%"><abbr title="documento in formato PDF">PDF</abbr></span>), su <span style="font-style:italic;">tug.org</span>.</cite></span> </li> <li id="cite_note-12"><a href="#cite_ref-12"><b>^</b></a> <span class="reference-text">K. Píška, 2004</span> </li> <li id="cite_note-13"><a href="#cite_ref-13"><b>^</b></a> <span class="reference-text"><a rel="nofollow" class="external text" href="http://lilypond.org/mftrace/">mftrace</a> – a small Python program that lets you trace a TeX bitmap font into a PFA or PFB font (A PostScript Type1 Scalable Font) or TTF (TrueType) font. It is licensed under the GNU GPL. Created by Han-Wen Nienhuys. Versions prior to 1.0.5 were called 'pktrace'.</span> </li> <li id="cite_note-14"><a href="#cite_ref-14"><b>^</b></a> <span class="reference-text"><a rel="nofollow" class="external text" href="http://pts.szit.bme.hu/textrace/">TeXtrace</a> – a collection of scripts for UNIX that convert any TeX font into a Type1 .pfb outline font immediately suitable for use with dvips, pdftex, acroread (and any many other programs). Created by Peter Szabo.</span> </li> </ol></div> <div class="mw-heading mw-heading2"><h2 id="Altri_progetti">Altri progetti</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=METAFONT&veaction=edit&section=12" title="Modifica la sezione Altri progetti" class="mw-editsection-visualeditor"><span>modifica</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=METAFONT&action=edit&section=12" title="Edit section's source code: Altri progetti"><span>modifica wikitesto</span></a><span class="mw-editsection-bracket">]</span></span></div> <div id="interProject" class="toccolours" style="display: none; clear: both; margin-top: 2em"><p id="sisterProjects" style="background-color: #efefef; color: black; font-weight: bold; margin: 0"><span>Altri progetti</span></p><ul title="Collegamenti verso gli altri progetti Wikimedia"> <li class="" title=""><span class="plainlinks" title="commons:Category:METAFONT"><a class="external text" href="https://commons.wikimedia.org/wiki/Category:METAFONT?uselang=it">Wikimedia Commons</a></span></li></ul></div> <ul><li><span typeof="mw:File"><a href="https://commons.wikimedia.org/wiki/?uselang=it" title="Collabora a Wikimedia Commons"><img alt="Collabora a Wikimedia Commons" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/4a/Commons-logo.svg/18px-Commons-logo.svg.png" decoding="async" width="18" height="24" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/4/4a/Commons-logo.svg/27px-Commons-logo.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/4/4a/Commons-logo.svg/36px-Commons-logo.svg.png 2x" data-file-width="1024" data-file-height="1376" /></a></span> <span class="plainlinks"><a class="external text" href="https://commons.wikimedia.org/wiki/?uselang=it">Wikimedia Commons</a></span> contiene immagini o altri file su <b><span class="plainlinks"><a class="external text" href="https://commons.wikimedia.org/wiki/Category:METAFONT?uselang=it">METAFONT</a></span></b></li></ul> <div class="mw-heading mw-heading2"><h2 id="Collegamenti_esterni">Collegamenti esterni</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=METAFONT&veaction=edit&section=13" title="Modifica la sezione Collegamenti esterni" class="mw-editsection-visualeditor"><span>modifica</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=METAFONT&action=edit&section=13" title="Edit section's source code: Collegamenti esterni"><span>modifica wikitesto</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><cite id="CITEREFFOLDOC" class="citation testo" style="font-style:normal">(<span style="font-weight:bolder; font-size:80%"><abbr title="inglese">EN</abbr></span>) Denis Howe, <span style="font-style:italic;"><a href="https://foldoc.org/METAFONT" class="extiw" title="foldoc:METAFONT">METAFONT</a></span>, in <span style="font-style:italic;"><a href="/wiki/Free_On-line_Dictionary_of_Computing" title="Free On-line Dictionary of Computing">Free On-line Dictionary of Computing</a></span>.</cite> Disponibile con licenza <a href="/wiki/GNU_Free_Documentation_License" title="GNU Free Documentation License">GFDL</a></li></ul> <div class="noprint" style="width:100%; padding: 3px 0; display: flex; flex-wrap: wrap; row-gap: 4px; column-gap: 8px; box-sizing: border-box;"><div style="flex-grow: 1"><style data-mw-deduplicate="TemplateStyles:r140555418">.mw-parser-output .itwiki-template-occhiello{width:100%;line-height:25px;border:1px solid #CCF;background-color:#F0EEFF;box-sizing:border-box}.mw-parser-output .itwiki-template-occhiello-progetto{background-color:#FAFAFA}@media screen{html.skin-theme-clientpref-night .mw-parser-output .itwiki-template-occhiello{background-color:#202122;border-color:#54595D}html.skin-theme-clientpref-night .mw-parser-output .itwiki-template-occhiello-progetto{background-color:#282929}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .itwiki-template-occhiello{background-color:#202122;border-color:#54595D}html.skin-theme-clientpref-os .mw-parser-output .itwiki-template-occhiello-progetto{background-color:#282929}}</style><div class="itwiki-template-occhiello"><span class="noviewer" typeof="mw:File"><a href="/wiki/File:Nuvola_apps_emacs.svg" class="mw-file-description" title="Software libero"><img alt=" " src="//upload.wikimedia.org/wikipedia/commons/thumb/1/12/Nuvola_apps_emacs.svg/25px-Nuvola_apps_emacs.svg.png" decoding="async" width="25" height="25" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/1/12/Nuvola_apps_emacs.svg/38px-Nuvola_apps_emacs.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/1/12/Nuvola_apps_emacs.svg/50px-Nuvola_apps_emacs.svg.png 2x" data-file-width="243" data-file-height="239" /></a></span> <b><a href="/wiki/Portale:Software_libero" title="Portale:Software libero">Portale Software libero</a></b>: accedi alle voci di Wikipedia che trattano di software libero</div></div></div> <!-- NewPP limit report Parsed by mw‐api‐int.codfw.main‐648bd44df8‐5wqmn Cached time: 20241117150422 Cache expiry: 2592000 Reduced expiry: false Complications: [show‐toc] CPU time usage: 0.188 seconds Real time usage: 0.254 seconds Preprocessor visited node count: 2215/1000000 Post‐expand include size: 11993/2097152 bytes Template argument size: 219/2097152 bytes Highest expansion depth: 12/100 Expensive parser function count: 4/500 Unstrip recursion depth: 0/20 Unstrip post‐expand size: 17070/5000000 bytes Lua time usage: 0.095/10.000 seconds Lua memory usage: 2384396/52428800 bytes Number of Wikibase entities loaded: 1/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 186.008 1 -total 21.19% 39.415 2 Template:Cita_pubblicazione 18.83% 35.021 1 Template:Portale 16.80% 31.252 1 Template:Interprogetto 14.42% 26.831 7 Template:Cita_web 12.51% 23.263 1 Template:FOLDOC 11.58% 21.540 1 Template:Cita_testo 9.52% 17.705 1 Template:Icona_argomento 4.13% 7.676 2 Template:Pipetrick 2.29% 4.262 2 Template:TeX --> <!-- Saved in parser cache with key itwiki:pcache:idhash:438517-0!canonical and timestamp 20241117150422 and revision id 139200830. Rendering was triggered because: api-parse --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?type=1x1&useformat=desktop" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Estratto da "<a dir="ltr" href="https://it.wikipedia.org/w/index.php?title=METAFONT&oldid=139200830">https://it.wikipedia.org/w/index.php?title=METAFONT&oldid=139200830</a>"</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Categoria:Categorie" title="Categoria:Categorie">Categoria</a>: <ul><li><a href="/wiki/Categoria:TeX" title="Categoria:TeX">TeX</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> Questa pagina è stata modificata per l'ultima volta l'8 mag 2024 alle 20:20.</li> <li id="footer-info-copyright">Il testo è disponibile secondo la <a rel="nofollow" class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.it">licenza Creative Commons Attribuzione-Condividi allo stesso modo</a>; possono applicarsi condizioni ulteriori. Vedi le <a class="external text" href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use/it">condizioni d'uso</a> per i dettagli.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy/it">Informativa sulla privacy</a></li> <li id="footer-places-about"><a href="/wiki/Wikipedia:Sala_stampa/Wikipedia">Informazioni su Wikipedia</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikipedia:Avvertenze_generali">Avvertenze</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Codice di condotta</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Sviluppatori</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/it.wikipedia.org">Statistiche</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Dichiarazione sui cookie</a></li> <li id="footer-places-mobileview"><a href="//it.m.wikipedia.org/w/index.php?title=METAFONT&mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Versione mobile</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/w/resources/assets/poweredby_mediawiki.svg" alt="Powered by MediaWiki" width="88" height="31" loading="lazy"></a></li> </ul> </footer> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul></ul> </div><script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-5c59558b9d-qbz9l","wgBackendResponseTime":173,"wgPageParseReport":{"limitreport":{"cputime":"0.188","walltime":"0.254","ppvisitednodes":{"value":2215,"limit":1000000},"postexpandincludesize":{"value":11993,"limit":2097152},"templateargumentsize":{"value":219,"limit":2097152},"expansiondepth":{"value":12,"limit":100},"expensivefunctioncount":{"value":4,"limit":500},"unstrip-depth":{"value":0,"limit":20},"unstrip-size":{"value":17070,"limit":5000000},"entityaccesscount":{"value":1,"limit":400},"timingprofile":["100.00% 186.008 1 -total"," 21.19% 39.415 2 Template:Cita_pubblicazione"," 18.83% 35.021 1 Template:Portale"," 16.80% 31.252 1 Template:Interprogetto"," 14.42% 26.831 7 Template:Cita_web"," 12.51% 23.263 1 Template:FOLDOC"," 11.58% 21.540 1 Template:Cita_testo"," 9.52% 17.705 1 Template:Icona_argomento"," 4.13% 7.676 2 Template:Pipetrick"," 2.29% 4.262 2 Template:TeX"]},"scribunto":{"limitreport-timeusage":{"value":"0.095","limit":"10.000"},"limitreport-memusage":{"value":2384396,"limit":52428800}},"cachereport":{"origin":"mw-api-int.codfw.main-648bd44df8-5wqmn","timestamp":"20241117150422","ttl":2592000,"transientcontent":false}}});});</script> <script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"METAFONT","url":"https:\/\/it.wikipedia.org\/wiki\/METAFONT","sameAs":"http:\/\/www.wikidata.org\/entity\/Q1457000","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q1457000","author":{"@type":"Organization","name":"Contributori ai progetti Wikimedia"},"publisher":{"@type":"Organization","name":"Wikimedia Foundation, Inc.","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2006-05-16T12:50:11Z","dateModified":"2024-05-08T19:20:36Z","headline":"linguaggio di programmazione"}</script> </body> </html>