{"id":700,"date":"2014-07-17T15:36:49","date_gmt":"2014-07-17T13:36:49","guid":{"rendered":"http:\/\/paulchr.ablass.me\/blog\/?p=700"},"modified":"2014-07-17T15:36:50","modified_gmt":"2014-07-17T13:36:50","slug":"schrift-metadaten-mit-ttxfonttools-bearbeiten","status":"publish","type":"post","link":"https:\/\/paulchr.ablass.me\/blog\/2014\/07\/17\/schrift-metadaten-mit-ttxfonttools-bearbeiten\/","title":{"rendered":"Schrift-Metadaten mit TTX\/FontTools bearbeiten"},"content":{"rendered":"<p><a href=\"http:\/\/paulchr.ablass.me\/blog\/2014\/07\/17\/schrift-metadaten-mit-ttxfonttools-bearbeiten\/ttx\/\" rel=\"attachment wp-att-701\"><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/paulchr.ablass.me\/blog\/wp-content\/uploads\/2014\/07\/ttx.png?resize=1024%2C581\" alt=\"TTX\/FontTools in Aktion\" width=\"1024\" height=\"581\" class=\"aligncenter size-full wp-image-701\" srcset=\"https:\/\/i0.wp.com\/paulchr.ablass.me\/blog\/wp-content\/uploads\/2014\/07\/ttx.png?w=1024&amp;ssl=1 1024w, https:\/\/i0.wp.com\/paulchr.ablass.me\/blog\/wp-content\/uploads\/2014\/07\/ttx.png?resize=300%2C170&amp;ssl=1 300w, https:\/\/i0.wp.com\/paulchr.ablass.me\/blog\/wp-content\/uploads\/2014\/07\/ttx.png?resize=624%2C354&amp;ssl=1 624w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" data-recalc-dims=\"1\" \/><\/a><br \/>\nNach der <a href=\"http:\/\/paulchr.ablass.me\/blog\/2014\/07\/16\/ttxfonttools-auf-dem-mac-installieren\/\" title=\"TTX\/FontTools auf dem Mac installieren\">Installation von TTX\/FontTools<\/a> folgt nun ein Beitrag zur Nutzung.<\/p>\n<h3>Erzeugen der XML-.ttx-Datei<\/h3>\n<p>TTX\/FontTools ist ein Kommandozeilentool, daher wird es ausschlie\u00dflich mit dem Terminal bedient und hat kein GUI. Das macht aber \u00fcberhaupt nichts, denn die Nutzung ist denkbar simpel: Mit<\/p>\n<pre><code>$ ttx \/User\/paul.ablass\/Desktop\/SWBTH___.TTF<\/code><\/pre>\n<p>wird der Befehl gegeben, die TrueType-Schrift <code>SWBTH___.TTF<\/code> in das XML-basierte Format <code>.ttx<\/code> umzuwandeln. Als Ergebnis erh\u00e4lt man eine Datei <code>SWBTH___.ttx<\/code> im Quellordner.<\/p>\n<h3>Anpassungen in der .ttx-Datei<\/h3>\n<p>Nun k\u00f6nnen die gew\u00fcnschten Anpassungen in der <code>.ttx<\/code>-Datei vollzogen werden. Dazu reicht ein normaler Text-Editor oder eine IDE zum \u00d6ffnen und Bearbeiten der Datei aus.<br \/>\nIn meinem Fall musste ich dem Heavy-Schriftschnitt der Swiss721BT beibringen, dass er nicht <em>regular<\/em> ist (auf Grund eines Konfliktes bei der Installation vieler Schriftschnitte der Swiss721BT, die sich alle als regular-Schnitt ausgaben). Dazu gen\u00fcgte es, alle Vorkommen von regular durch heavy zu ersetzen.<\/p>\n<h3>Export als Schrift<\/h3>\n<p>Nachdem alle gew\u00fcnschten \u00c4nderungen erledigt sind, kann TTX\/FontTools die <code>.ttx<\/code>-Datei wieder zur\u00fcck ins TrueType-Format umwandeln und so eine neue Version der Ausgangsschrift erzeugen.<\/p>\n<pre><code>$ ttx \/User\/paul.ablass\/Desktop\/Swiss721BT.ttx<\/code><\/pre>\n<p>Heraus kommt die neue Datei Swiss721BT.ttf, die alle gemachten \u00c4nderungen beinhaltet und ganz normal weiterverwendet werden kann.<\/p>\n<h3>Links<\/h3>\n<p><a href=\"http:\/\/www.fontgeek.net\/blog\/?p=343\">Using TTX to rename fonts<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nach der Installation von TTX\/FontTools folgt nun ein Beitrag zur Nutzung. Erzeugen der XML-.ttx-Datei TTX\/FontTools ist ein Kommandozeilentool, daher wird es ausschlie\u00dflich mit dem Terminal bedient und hat kein GUI. Das macht aber \u00fcberhaupt nichts, denn die Nutzung ist denkbar simpel: Mit $ ttx \/User\/paul.ablass\/Desktop\/SWBTH___.TTF wird der Befehl gegeben, die TrueType-Schrift SWBTH___.TTF in das XML-basierte [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_newsletter_tier_id":0,"jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[75],"tags":[181,179,182,180,178],"jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p2Vohc-bi","jetpack-related-posts":[{"id":696,"url":"https:\/\/paulchr.ablass.me\/blog\/2014\/07\/16\/ttxfonttools-auf-dem-mac-installieren\/","url_meta":{"origin":700,"position":0},"title":"TTX\/FontTools auf dem Mac installieren","author":"Paul-Christian Abla\u00df","date":"16. Juli 2014","format":false,"excerpt":"Was ist TTX\/FontTools? TTX\/FontTools ist ein kostenloses Kommandozeilenprogramm, dass Schriften im TrueType- und OpenType-Format in XML-Dateien umwandelt und dadurch das einfache Bearbeiten von Schriftmetadaten erm\u00f6glicht. Beispielsweise kann so unter anderem der Schriftname ver\u00e4ndert werden- ein Feature, dass ich heute ben\u00f6tigt habe. Wie installiere ich es? Von der Projektseite muss das\u2026","rel":"","context":"In &quot;Tools&quot;","block_context":{"text":"Tools","link":"https:\/\/paulchr.ablass.me\/blog\/themen\/tools\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":139,"url":"https:\/\/paulchr.ablass.me\/blog\/2013\/02\/25\/font-face-svg-schriften-und-fragmentbezeichner\/","url_meta":{"origin":700,"position":1},"title":"@font-face, SVG-Schriften und Fragmentbezeichner","author":"Paul-Christian Abla\u00df","date":"25. Februar 2013","format":false,"excerpt":"Um SVG-Schriften mittels der @font-face-Syntax einzubetten, wird bekanntlich folgendes Css ben\u00f6tigt: @font-face { font-family: \"Open Sans Regular\"; src: url(\"..\/fonts\/open-sans-regular\/OpenSans-Regular-webfont.svg#OpenSansRegular\") format(\"svg\"); } Spannend ist der Fragmentbezeichner hinter dem Dateinamen, von mir fett hervorgehoben. Normalerweise sollte dieser n\u00e4mlich in der Schriftdatei noch einmal auftauchen, n\u00e4mlich als Attributwert f\u00fcr id innerhalb dieses XML-Snippets:\u2026","rel":"","context":"In &quot;Css&quot;","block_context":{"text":"Css","link":"https:\/\/paulchr.ablass.me\/blog\/themen\/css\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":207,"url":"https:\/\/paulchr.ablass.me\/blog\/2013\/04\/06\/gzip-komprimierung-in-der-htaccess-datei-aktivieren\/","url_meta":{"origin":700,"position":2},"title":"gzip-Komprimierung in der .htaccess-Datei aktivieren","author":"Paul-Christian Abla\u00df","date":"6. April 2013","format":false,"excerpt":"# BEGIN GZIP <ifmodule mod_deflate.c> AddOutputFilterByType DEFLATE text\/text text\/html text\/plain text\/xml text\/css application\/x-javascript application\/javascript <\/ifmodule> # END GZIP","rel":"","context":"In &quot;Webserver&quot;","block_context":{"text":"Webserver","link":"https:\/\/paulchr.ablass.me\/blog\/themen\/webserver\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":568,"url":"https:\/\/paulchr.ablass.me\/blog\/2014\/03\/11\/domainuebergreifene-zugriffe-auf-webfonts-cors\/","url_meta":{"origin":700,"position":3},"title":"Domain\u00fcbergreifene Zugriffe auf Webfonts (CORS)","author":"Paul-Christian Abla\u00df","date":"11. M\u00e4rz 2014","format":false,"excerpt":"Gelegentlich werden Webfonts von einer anderen Domain\/ einem anderen Server eingebunden (Cross Origin Request). Im Zuge dessen kann es vorkommen, dass der Zugriff auf diese Dateien auf Grund der Einhaltung der Same-Origin-Policy abgelehnt wird und die Schriften nicht geladen werden. Gl\u00fccklicherweise gibt es mit Cross Origin Ressource Sharing (CORS) aber\u2026","rel":"","context":"In &quot;Webserver&quot;","block_context":{"text":"Webserver","link":"https:\/\/paulchr.ablass.me\/blog\/themen\/webserver\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":592,"url":"https:\/\/paulchr.ablass.me\/blog\/2014\/03\/21\/svn-remove-rueckgaengig-machen\/","url_meta":{"origin":700,"position":4},"title":"svn remove r\u00fcckg\u00e4ngig machen","author":"Paul-Christian Abla\u00df","date":"21. M\u00e4rz 2014","format":false,"excerpt":"Dateien, die mittels svn remove gel\u00f6scht wurden, k\u00f6nnen schnell und einfach mit dem folgenden Befehl wiederhergestellt werden: $ svn export [Link\/zur\/Datei\/im\/Projektarchiv]@[Versionsnummer] Die Revisionsnummer bezieht sich dabei auf die letzte Revision, in der die Datei noch existierte. Wenn also mit Revision 43 die Datei index.html gel\u00f6scht wurde, w\u00e4hlt man folglich Revision\u2026","rel":"","context":"In &quot;Versionsverwaltung&quot;","block_context":{"text":"Versionsverwaltung","link":"https:\/\/paulchr.ablass.me\/blog\/themen\/versionsverwaltung\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":523,"url":"https:\/\/paulchr.ablass.me\/blog\/2014\/01\/29\/mit-svn-export-veraenderte-dateien-wiederherstellen\/","url_meta":{"origin":700,"position":5},"title":"Mit svn export ver\u00e4nderte Dateien wiederherstellen","author":"Paul-Christian Abla\u00df","date":"29. Januar 2014","format":false,"excerpt":"Mit svn export kann durch Angabe des -r-Parameters ein \u00e4lterer Stand einer Datei wiederhergestellt werden: Beispiel: $ svn export [Pfad\/zur\/Datei\/im\/Repo] -r[Revisionsnummer] [Pfad\/zum\/neuen\/Dateispeicherort] Lies: Exportiere Datei X aus Revision Y zu Speicherort Z. Ein echtes Beispiel: $ svn export sass\/style.scss -r42 ~\/Desktop\/style.scss Die Datei style.scss wird mit dem Stand aus Revision\u2026","rel":"","context":"In &quot;Versionsverwaltung&quot;","block_context":{"text":"Versionsverwaltung","link":"https:\/\/paulchr.ablass.me\/blog\/themen\/versionsverwaltung\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/paulchr.ablass.me\/blog\/wp-json\/wp\/v2\/posts\/700"}],"collection":[{"href":"https:\/\/paulchr.ablass.me\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/paulchr.ablass.me\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/paulchr.ablass.me\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/paulchr.ablass.me\/blog\/wp-json\/wp\/v2\/comments?post=700"}],"version-history":[{"count":9,"href":"https:\/\/paulchr.ablass.me\/blog\/wp-json\/wp\/v2\/posts\/700\/revisions"}],"predecessor-version":[{"id":713,"href":"https:\/\/paulchr.ablass.me\/blog\/wp-json\/wp\/v2\/posts\/700\/revisions\/713"}],"wp:attachment":[{"href":"https:\/\/paulchr.ablass.me\/blog\/wp-json\/wp\/v2\/media?parent=700"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/paulchr.ablass.me\/blog\/wp-json\/wp\/v2\/categories?post=700"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/paulchr.ablass.me\/blog\/wp-json\/wp\/v2\/tags?post=700"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}