diff --git a/tests/tx_data/expected_output/alt-missing-glif.pfb b/tests/tx_data/expected_output/alt-missing-glif.pfb new file mode 100644 index 000000000..3263a7bba --- /dev/null +++ b/tests/tx_data/expected_output/alt-missing-glif.pfb @@ -0,0 +1,295 @@ +%!FontType1-1.1: Exercise1-Regular 1.0 +%ADOt1write: (1.0.35) +%%Copyright: Copyright 2023 Adobe System Incorporated. All rights reserved. +%%BeginResource: font Exercise1-Regular +12 dict dup begin +/FontType 1 def +/FontName /Exercise1-Regular def +/FontInfo 9 dict dup begin +/version (1.0) def +/Notice ( ) def +/Copyright ( ) def +/FamilyName (Exercise 1) def +/Weight (Regular) def +/UnderlineThickness 51 def +end def +/PaintType 0 def +/FontMatrix [0.001 0 0 0.001 0 0] def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +def +/FontBBox {-40 -224 762 724} def +end +currentfile eexec BAB431EA06BB0A1031E1AA11919E714AC69FC4EA3B6672 +ABF3FDE103443FF5321890FEA3C9361761AC3B607C4C960F4D385045AB5EBCA8 +90FBA7C10718659A90ABF027E30B88E7D14F8D16AC4F74C85733B7705F6CF5C8 +EBAB2E0E40F736110B62422F3D642359FA764B81D9A72049DBFF40187C41455E +5378378702658031C363F2CD4F37345F8FA78044A0491D8AE5B00254A201ADC9 +30CA211B7CAA4782B90547B9664E61F24869CF78DB4E8687FFFE91F16C9E5FF1 +186F31A78B27F54E1C146EDF26271FB25D6AD6FEF7C6577CD58340BEADDE6FFC +AA900264B944E40145476E80CCD21E6143836F5909D71062CC93959AE79B8E83 +83907879DE05209C61D11D1D1785E02D8C1058AABFCAC8168F88781BDA5D53EE +1A9E47538BDECC5F9E9C0BE3EB4984F2443410366CB19996BEE111F75A01176B +D88C2D837FE4CEF9D975979689B0A2EF2C49DCD58D5976FB515B35271F1CC790 +C21EB2C14367F8EB1A6B04391D6FA68100DE355E822D6B23C49797AB1AFA5C11 +087BE3575970B0936307A5BEB9F9E0996EBA2BC5CB207987CCBA04EED028A558 +F7675006910FD4C6B7483022BC4354B3481D2A0C5DB9746E5B016E4737F8BE12 +E9D5C80A8692DE1032D013BEA1DD49D4D2EAF8C37B1E8F51D4C6FF0E2F881276 +B8A5BE4B05A3A8A1568F069AE38DDC00B1B8EAC0D6DCBBBCF0272277DDA841B5 +43B2E46FDBB0DEA43726686773871BAA09238555C20A57A02085B5D0B31E1A1D +008CF3FB1B59C845C9C254E1FDE6997A559107683413FA8F91D3B585754A8BA4 +7B02F668897315AF214CDAD5E0202733012D76FD83F1ED2516B6045F03A761D8 +EE8669984676CA519EC66ACE781B0A2400C62901112B5379E479EF1616B1462E +04F659FE7AAFE4AD91AEFE55C1066CFCBDE1A7ECDBEC8F5F0ED25FBB96FA134A +EF156878335451984C83E012C17299B2B64A63C2553F8D12679E20CE60ADFA53 +95EDD6DC9FD6FE52AEBA66664E5EC7C0B24A637C15C6C4B173A023560550E805 +DE4C9E0A28EB36D751983E52DAB14D19DB52D458E97DBB77CF0F1CF1B9A90C97 +281DED2555D7538635B9FC132E7F13D60FD5A8463D0532E59B0AC44C860DC33C +0098608E44831E773FC0EAB303D83FC191211AAB1ACB252FFF216392F4B6BE25 +E3DF5605DEF54018D54081EDEC435192C4CA7548964AD5B8E0C2E8607AA271A0 +C38F877DDE7AEB1D08BFC70FBBF575E7E88E09D4E1EB8F900C2D233772BD12D4 +9FCDC12836CD7092FEDE63B3FE7F64618831256B54FFFA4D3E04DF9CFA9C9AA1 +523112125ED2D7DD10C1148318CB2F6BF45414FE246F48A1F9408970F6C71082 +C6E9394A4952BB1CC9FA5674E5AE9DE9BAAD9E3A515FC983DD0F8CF06FA98B78 +8CB2489D55B2E07389ADC24FBFF6C1A895B3979878ECA652DD7A6DA55C2408D3 +D7A4B5AD0C3B700161332777101C9954C53AE0508D11A1EA10B262624CEFB70A +F9992422824E9D2314429F16BF817E566C3A83858A5012B22D4D0F39955C2D62 +2A7B3ABE59421E55983C271664E264A371D4A1C4B369DB93E4B38E59AB812C12 +604E47A589F95AD2AF62ED79600B1FB9744BF48EC7A4EF842C54A5D631B07878 +9ADDFC9227945DD94DD205ABE789E9171FBDE43B8F2CD1234245F0AC09C4D02F +A0536A985BE1A1CF14FEEF07CD53236B001AAB8AB12813FFD585B6775EBEAF3F +195C99C856D4DECD1A91470E0841642829D1CCDD441F816E846784E0A31DFF18 +82705A39582716309790B30D7FE3549E171198DDC8F53C119895D2B335F48F77 +745F828E0C1F338B71D341DBF1E04B5753D317EEED5CAC2B120E3FDE703BACC8 +2133F38D3E1D6CEEB5EC717AFCFE3EB0942F1CDEEDA2A95A48B5623E6F727E16 +B9ABA0E20D35056AB614FCAE8774CCDA7BFC9933A490EFA6C37E4A5C0BA485AF +E300D2BCA848E2D84932C21A217F8E768CB46405B227E4AD0BC3BA2BDB9093F6 +785EAE5A7C26C695281317D3BC620982A77EB275DECF73DC2E4EE5AFA0285EA1 +C758C8CE23A1875AC7278404D61A150F23413FA9453E5BACEB2E5FD14AD6521C +5FD101D3704BA79B91AF78315FC0B060AAEF6A87AC6AA424073767195A3D7829 +5C16BBFCD67C99DF9A5FDDF181077271161E2457E4C9FC03F8D5E53A9D76E961 +569893020693934239957736445B9F2F2112D3E411C6ABC8A4DE3F8CEB544D24 +C7D464C19A1BAF4E84E52CFE9DDCCD4920F5970010533BC616DE726612B273E1 +D0C5C1AE2C3F02359679831472DBF71530F7173F9C6C0FD7E2B321265B073B76 +0F878D7E5AA0F714BB1AE7B32D0C066EBEEAB692C7D19B5363DCE804B3B51AE6 +030A6BAC8C72BD85D6460020459AA83C641DF87703CD402413B1DAD26EB1B930 +88E0052DF2C6CFEC8255DD42FA90198F98664A204CB78D876135D9C81B0F5D4C +2932997CC3AEA1B7D5BD04781467E1A04FB8F2BB275935928DC305D4E110EF42 +F82EA848A4FA3F064EB47A9BA78A939DA93F1B2C888EDFEF1759754008AC4B93 +8B62BF43E90005864FDEDB7CD75E9B9317F33A29954647831515432B4E9DF333 +6E02C25E1427F7A03AD55C17780D281912C5B218C61DAC3721748FB4927EC083 +0830DB2947EEFF2B8A31CBE718C48140262D74C5CEB4003533CDDBE137C7B0BB +462FAF4EEEDE5FF4AB5C713FA842A7789EF7BC36DD40027173A2FFC1872F31A6 +33F25D2597417CA9B6B3E5123E51EB234FAA86C9747B98054C2512D2C0E09B15 +ECD9F9433BE98C53F12D216F100557F110733630450013BED1C661A967B94FBE +910EB2C873194D429BE295491BF79B3E79711B21BE62E28D47BF17B96459CA83 +60500C7EFA2D7C2A6AC7DCC85DFA38E007301352F2018CC004830C16D120E612 +BD4D91BB4D7FCA65CB9C96D94B535434C667767A40790BA5BCC69087BC2867BC +DEB0DA04620545F55C1A1CF1CE3E684C9A4EB8E05E438BDAF39A6EF0395665AF +C20901E307513E0BE6F4FAC41A50017E06CF138AEA615A5A1FACCA83C7B0AC3E +29DE5541843126DDC0D323B329B1E2FB51C34E9151EDD343AD1973B002B8EBC6 +0A6805108BB135B7E3A6AA4824F874AC6A34A4C056A137FE0208A8C860064EBF +212BC5DCD9DD24FC35D7F21C2923365770EDE46C7C4C3BC53A150CB4A1E3989B +6AB6638AD15F526B27A921B25976FA119887812983BEA5E5F9AC3C82BEAF5626 +F3488FBBC245BF780A85652D4EC910F78B7C8422A75FDB62BFC264B821E470B3 +D295948F6D36446A3B2E411A338C916F57C9E8DE8905C62CE864B07B48477F6B +0EBFC32E7966CB00184BE9B74A06B4030657E19CC427F4B6FB2B5F8BA04AABBC +2EFEA8CFE3444B9AB7EFCEADB88E0AAF963DF8A9A6502643716DFB73169D1F1E +464CD11F31EA015B61251B1DCDFEB485EAC137EFB9030FA6C07558697D9FB430 +43253DE4852C7DDDD24787C2E866035BE3C3D748AB5CF5BE5667E0FE96BED0D8 +95E7CCDF178B66E394E204A5F2805EDC0170CD3AD16AAB6EDB8C422C00A5C602 +5986612A97A5B98CDE0D74EE0A3059715F536B1DDC07153CCE5D5693D61EB7E3 +FDBF9B39B37E083C47F2CD61DC821A1C3755DA0F147FE31FF0A35916268FC5EF +797F6DA16F3DFA6ED8D93BBE4ACB2D6260C98FBCF237D652E183DDFF3D90496A +000D4059D901F31C6CE3FE029D4B49238AC7B3FA500A88E1876B8F468F84D143 +28A5183CE7194C713AE6FD5166555F8348840B642515C3D6EEE294A39A38FB7B +08FF22D0EDD2CF007BACBE85A32BF66B079E516EEF44DB5FE9DF2EF4F2349EB2 +44CDDB2E0C634439C9164E9D06C5447ABBD73721674442640174FF0498933DAE +BD8CE9E609F4655D27AB375F6ADA610E1D9403D0F1AA2B003C1DC191C23148FF +74545D22C8005229C707DD8977C296ECE4544F88CD38217E83D820E310698A88 +4DEA40777BEB4DE4034185CEF101B6771BAC98B3BD57B660E358603362B64CFA +B92286609D8D577EA88F09E7BDDCEE866B60AF8DD59D8851A9B1ECDBC6583960 +A001D35BCCD9AC194707430F93D0D79512768FC84BE3964EE61DBA337B5DFE48 +23FB3CFA29FFBD0261B8AD1B2F7806BFC674FDED4798E0D0048D502BB9DAB882 +1ACCC2D17620E4F868D3F95FA4B1B585A704AC59A82690407DF3D0DF2B6555C5 +31B56FCE876CCD09F1E822BCFAEEE3C193BF078BF027AF005884AEBE9613FEC2 +867F81E5BC7DD263DD2D6EB95B83703A5F507142D420F07287B0EEBEEFD7A63E +1136797888F7610726DF88A420FED1A215F6CA3842AA9933259DD9F3D41A52C7 +7B6EF6389B1FB643E57AF2C99666ED9A3A488FF7299E8817FB89566A2ECCA039 +DC93D1D759E623294A2039F5ECC7B4511CBF282531738AD4455F01FA3595CC39 +E191D7031418151084A895E46915B3D32A3F427E14DBD59748F0B59337809CC7 +8E329B5E14E2DA8136EE74854437ED0A0E6C75223037A24A99FB3DB916F5B9A0 +F88B820A52446D8A14F5617A9DC50610BF4CCDE0F621367C72B87E93D306849D +CEABCAC039B65CE7050BE5F430B3FC7F214217060A53899AFE9524DEA3D61BDC +0240C93458AF3FE4312C971A05C10AD5E26FA92A0D9CFBE677349436F76736F6 +68B89285C1A4DB1E8E100BCD2BE2826309FBAF718B7C73AFBEA2149FBF72A07A +258311654651CD69F604BC8F1EED083ECF6229C4C6C5EB49173C27FEB3729D80 +FBB90EB579748210E144783ACFAA0F1F48A36A3ADFF1D9043CCD6F7C01E8A721 +CF8D36D834AEC1EC45D8778070B887964DC5025A1FE86E8F1ADFE84850B57286 +F29DD1577B140B7BF3BFC4FF784D26E9D0B4C01C8FD47110C8953DF60A79C3F5 +92F82B888FDB030843E9BA6E69773F135D02CF6567DEB7807C153D9669BB66FC +E0AEC5009C29A2A77AB50CFC2C022406E5BF64684F699E969EE9691D4FDA613E +BB3593B125ADF496700F3865B9685A2A5D6E8159593362D5D07EDD9233906D48 +817635A7E938E12F9115ADD20AA41FCBB2B0310544D71A5CCA8EF118A260EC53 +8AECC32A1524F7D87DDC30EC2B71A466253488573FD70B16D9C25FD071BC35C1 +4251035D2936E6538AA9709D598E52C85B656AB54F48EAD94835829797CDCA37 +85BECD6BB7D8B69EE13DC7761E19DFAC0475B8545076C7930E1CB128D422DF99 +C90BA715C44D74EFEB4B33CC0DA1E1AEDFC4040BE41AF28BD7FE2BA4057BD9CD +F909C4BEB49767F16A0CF7046D4F813F7543BB6C1F14CA8843873935EDCB3200 +9E9D6EC668A1CC4F7E7AC49F6AFD1AF188F7B57502758B59D99E63CA018B576F +0CA837E331F90157F91E1692762B8A1A0608DDB1999984B341DE9C0CC57F203E +FA85113DD3EE958D7119A2F73F4178B41FB787AA6D1835870D27725360E2BC1D +F56D33064B21725A46A7F04C5CAEC35961054141C662333E4AA0DD48B0BAFB8F +D1169F7C773E61D871907B8384C5B426A22C953E6BC2C21D8B5C184EFC6F7E57 +1DB3E415CF1969283206DC81765FD04F271736196F9342C80E102607B1F9811E +4FF78FAA238FC69D412DD1D0343F3A59A4B866AFE0C221A7BCF298CE2357B87B +F46B48E8681F5E479B904F67AF3CC598A5EEF7B96463F056F8A46B5427A2B3AC +A9E43852D81CCEEB728955047DC1C7416CA806D6882BEC98D44AACE89F8B252F +4D40599591A9B72EE796A1CA1A29C75BE4834FC61B7D86C7EB25B00D58AA7F8A +497D9C12D575FB3817FBBBF1AF59634902FAAEADEC27AEE81AED1A72B5AE324B +9E7AFEA8BD3D13F865FBC4F015A69D468534C1D58DA65C5A7892AB881DE10060 +9060BF60695F61CD09D4A94275E6B2C4F597251411268237A876B83BABBEF51A +B7D10E67A07A3AF0613839F96A5BCC18D043C4A364EAE7EA1EC75AC04F5EE4FF +955315F5005CEE8CCF13026AB7400533AEF69ABA34D5C0E53A9AA1472469CDD1 +947BC6DF51C0F803CF2CE8B80BB149C02680C9C8E177328F53CB599CBA25CCCC +6FD19AADCE26553480C59C01C0D45D0C4D066C55E616259C6E287FE8F795973A +096D40B16DCC9AED7B2ED90BE65E84F4048B327F91C199575D2DF06AB76D25C0 +2D3C24361D65478CF5E33A7A1BA85CB173B448745F589B5992D3D6F9947FA106 +86FDC37DCE3ACE226E2E5C645C0914D99584BD81684A3390698BE5A33470707B +1DB7396823BDBE13798066291D6D1342EAEC5E9BF53A8D25C4637A4A56879D7B +7259260968251200EC8B168FB9B8A40053BFF584ACE9350BEC18D585FEB84FA3 +0D07CEF109FC408458EEB3B2222290EE4BE3C3BAE0B107DF4AA009A3E6AFC797 +B0EF20C001EDC3FD0D34A89A0DC1C57D67F6C2669A646E7135E329448936AC6D +A31CC82C5899B417F0FE33978D96681A92C1A9D51323E8CB7D982531A6101B79 +5716A9EF0B4DB578B9D1BDA2533BB07707636EA5F457E01450C3A8B895AFF4EB +F0D1B3F351A829B06B3273A615F468AC87975FD9913E3FA6BC0653163A25406E +75CFA41682C7F9BC4C8BF3DD7FF94CE0F85E8512452223480E900F14ABA70F0A +33BC306CB00A12586DAB0F3A2509897EDC95DB50DC6E429CCCE2D5AA67FD5B88 +56FC7CA8441735FFE87A348EBCE74621D079B846C4A0A4DCEDCE2C0F03558F7C +1BDA9CD903D3E0806B4146765855FB2559BF8B134376935C4384D308154CB5CE +693B6E80F155D3F63EAA897889029BF4C62A503DEBBC8742487C587DD1DA6A4B +A7420193F6C60FBD8E0AC231C8DB7047792A679E016C48C0159DF98FFDEBBB48 +A230A557547B4C37FC1A8D87FBB995E2864BC9B18E09D721CEB40462C4ABEF37 +22C03255F66025875135A32D3CECC8D42A408EC45B14F23015E0601F3A8FF48B +98A12C4A147A0DF61D02F034324BEF6D0EDD2BE6B99BB74351832E3300CF61D2 +F3D773F18997AEC233DA349F5DDA45922098CD658210DBB153FCAEB485B35845 +C1962C45FF6528E005E5D818547A1C93ABB326EC5479E350393E8B65A39AFFEF +526D6767CD58D1545A251D3D9357F7EF05F63A9A249D121C76F0FC2428AAD222 +0AC3EB3AFC8B4FF56297E0AB343457A863C54432AAA291285AC523DD794E8B20 +411D7346E91DC14FC1C0FFEADCAF7F4CEBF659BC17624780E76FF00691840F3B +97AB99CE4AE994674DB690E4E7888F12BE96AA6D11B08BFD2F3150047F48C9A8 +E000B00D56EE8D850C76E27A93B79795547CAA690E21EC10A3F9F1498498E49A +856DCEBADAA483ED1FBE10AD349AF5CC29378E6C99630EB4CE2284DB2F25424F +F727A39A1D89D526C9D2FEBC3F019C8E6CD83CDCEA92C2C35226B32EC59BAC26 +AD30CD7C2AA2A1DBAE9CBCDF24C206F77DCEF69FEA9149D8DCE97E56FFB031A2 +F0EA846E215E0778D9E73468823331B030444FA3F947357F0C02B1AA88B72616 +94A3AA6CEA128B4FBC51C50E661715BE6AA730781F469B6C66F27F007ACF0E82 +4CE61AF979C200181357A8A57090B37837A099A752D4A53F2FBB841B1C1AA658 +D9EA4137DBC75BFD68F9D18FCD2E9B69554A2472894D82749BC21FDBD6CA4E4D +84F402940DF56DA221C649F6858FE69609268BA5422140DABC2AC4CF0A82241E +3CAFAC169708E74A25FEE25887695CB4B800D91E351F05620E1709DB2DE3072F +0E97BBF4EBB9FF1BF0E014ADF23E7152BE5821C01437BC0E621041A57435EA94 +81BBEE1A42722CF7E0D0478E8549A2675DFCE58F6B1EF7632BFE091DA8F716B1 +7489BEE2E326C2E12529B3689FD69B0AAC71539BB55AFF899A544E145CE3520B +A6A750E969413674CCE35E88EF38EE52FCEA97FC4298B3E588C8C9BA822F8A01 +FB68793D304C9522153B4E6DADD4B3307BEBA70CB740AA01CC0E7E8CE24FC6FF +1506458D78F4D1E9A8464DB4A7549C35A644B92BEBBC87D038C01F83B4BFADCC +C09678BFD4F6BCB5ABCB871C0D4B8E043C68F0E66163DD2614CA1858528C829B +18C31F18438BBE94BF38F762632794AE4909815468D6C905596E8248041E8320 +D18D7990B24D07564C0F375B33E253C57284C956D6B5B6D12874DEA14B414262 +3E6376E5EA4C2526BAAF78A422860344DBBDDB999F54A22C9E2A0C2896F34FCB +FCA795A1FF130D270D7D61B5DE7F9A7A022F1FDD5217746CD2C1FC67F32D6828 +83B1144D22386CCB78082BAC50D119C8356D6656F0FDA4A5C1A57762571EC97C +F90B93BF85CD7A73568D14ABFA5CE69F370CD852FB593558A37607B23CA6C246 +8F75E0A07B822BE851A1850CFF6A76F866D18197CF898E1A9BFF301B2727B7E8 +F0E2A709D421E039B417CC357F5C92D853C84CF9A3C17526A0C04D669A3D638F +AF30A344402916344E053013ABC99B36E3FA074F75A9864F8D194E756DA6F087 +946CB15DB7C4DF94D138925939DB7A1362AEA5395068EC1FED5D115B018B6428 +6ACB0D489D078B20E4BEFF2564DAA9FEAB9DE60C8E331CF755F94AF4C7C0E501 +10EE3DA914B9774930D474F0FA046C6C068B78D5F8924EF4792BCDC248CBCEA0 +0487CA27CDF14954B061C81E4F9DE79860BB7704444159878159A42ABBC0EE1E +00591657BBD5CB935A7F3289AEF3EA28F2B5AC3C7F5FF3DB0B251006ECA18077 +95CA950B60CB08EAF17FAFC73859A332E7D3113D4993672DDDA68AC4307A4AC2 +ECA8EB528CBD366793F5941E6446C5C2BD473AB988C70F42F7ED2A479B4D7FCA +8A95A35A8DC5A48DEB765495BFD7D6C4FF4191A48580CA492C9879C2A411FA80 +09A46BDC4AE0ED8205F5FF8499DD9E06B553AAD57A5E715CDFFE274119181EBE +2E0276954621755C7EDCEBB4082995857D1C16DD4C959D125F59EFD3E314E0D4 +B3ECE45A3F9CDB909E3D521E55A16602662E6C5E166B853CBA07D8172B601E5B +DFC8433C9E4B53DEBF5EE86EAF9560D92253B846A7E9D8E54D2248C7722D222D +E9FD65270259B97768DFA10D433D290E93081744F8B9CF8F391D0F53E41F5244 +4D1382C867E2306888E6651FEEA87A7258D1E1212CBA8B3FCCBA0D37600B43AA +39E4B44E2BE8351202F587DC27ABA755943F64A95EF4854E697AE0FBC3B434CF +324A9164AABF308166F7746D7AFD4D57CEBC4CEB6FA72C03C01942299B1875A1 +B987EDEFD1647695EA71307C3C0AB5440AF56BE32BB6E73CC5B0A9F30198C91C +A66B34C7F2FF81FB612D7000FEB586B405D1E8D9903CFD8B122D865582FB6CF7 +B7684065A1ACCDE3C3EFBD54018CF377940599DF3CDDD5EBEEE7ED76C3D33D86 +56663CAE3FD0958E4E5B498D5FB478EF09664C511A74F95C025723A62C685E10 +CAF5AEEB115A7B1FFFBBE08575CD48F0588FC384DECC1A909C18626C34ACF750 +27A21E7DCE66BE307F2F7BD34556022AE6A8D513105E44D1E7215B5AF08B5954 +D610D524F2CC9D3F641C5E74DEA097FAD8FFD226AD1508280AC82726C3C2FEF5 +D175C7212207C1736B0133661FF373A96E77E8B2A22C398CDDA2D52555A7B7DA +EF0842E31F0DFF54EDE7A14C2C3AAA4B4134A708A6A8E46D6C79FEBB5A106E85 +D148270A55065F4ECA0C4745E964E6CE4C4AE9880B13ECDAD1F2BD3EAB17E601 +DB9AF2E21C6980F80EB20E57B5736E67052D5662A31B75DD9F7716BC5CEAA5C2 +24FF9B6074463D069C17C2105CB748D3E70AA1E2C1DA01DA80F1EFAE278DABF8 +8CF692A1FC37731EA1FA3EB10D918923D746B751DAAC71B665C637C315B0DE15 +0817BD0EAA4EC832F5C2379D4A23080271ED0613001C67EA1A7F58E6A3FD919A +3D489D0E043E80F9CDB80DD0CF32C6A32D985EA6DE19AEAF876E5B84708E433B +1FCA4FAA8DE4B8CAA8F570B833BBE753400C6CDDEF4E06B464B79C7A43917AD7 +0FF897BE417198107E9E4546FDE5716CD51A358318AF19FC360850AF9DF1B7F5 +71F3C13819DE60728A3AE2C36310B5603EE3CA956B26A002D5A6E5FC8BFE7FAB +6FD9BED62B1D982B140BB1D366E1B3EF3E110EC17F4DEC5CDF3C932ACD571AF9 +4F55C9C7349CA59100A77126247DF851AEAF48A920B0D688A3CA595C4458A5B2 +171DA85EC53CCA4796C43BE2B04727CA9D0F372E8D9E2C9FC9A347DE79217F0C +3F7A7C37C6F85F062600F0602B0E31CC19EA34CB5B4A9BF4651CBE39508E3EA4 +1D2F01FC2C90F73EB97CE86516CAAC9C9D82E179F40854838B0095C2DC078811 +3332712CAB06B9E250F12B4455D78784CC339F73A5E9BCDFF37FE0D70856CBB7 +4C70DDF49F0B1A0E21F44E98A9F66F05A8764FCE881B31EB96DE73D38DE762AB +DEFD8336C41194104942BD3AF148A40620AFEB0DC945CE31F501947ED9A09DB7 +4EE8B123886F1123EB4219DB313F8A707F762ABE99A5F5E5561CD3B52822BBDD +28B1E6EB2EDE89A2EF2444DC871CCCAFD0D7AA74B161F9740FCC747CB28982F7 +AE1AFF0DFAED8090DF63CC6E9BC8451D17D2D33486B9A6CD8073237635315B9D +66F1084B3993F95B6E5776118AED947C98903402FFCB07E3D34AD7C31D69A009 +8FB115DECBCC16AF3CC8FE53BEFA655D54608E1220C853ABFE33CA1407FABD45 +25AD80F8DBB40F594A10B905DA01CCC8A5EF6924977C68FEE8837B2E1D1ED9F1 +E49F73D02ACCFDE5B59417C232929BC8332443261A311D1B258C498C8029AB83 +DB011036823D375C658667539CB9B11123B1B88AEE1255B0DA1EDFEE915E0390 +A0D437C163389089AAE489EE16B3E0133BE49F62344FCD6E4CF7A084C21DBD7D +B5531901E247BE76789F7EED364DAB2361E577D9BBF8ECBE04F5B9571E2E1097 +DE8E76CC4551CE5E18246C4F597CDE46E3BFE2D50D56904745D8DF6A8E52357A +D6415FF1C13A7146C298CE01B8C45EF4BB1B418D218B7E24D6941125B3DA2964 +468A90A5F4B43B619A1DFA417DA7C49EDEE03BBA2C10C372165D22C53E454F99 +AF5F4A99A5D2AD636C73B2A1FD5808CFCEE3D8A79CA26B227F0E70400958AD2B +0D3A371EACE0F8EC5BDA8D5E5BC1D40AD05DAFE60C5E4F06D5DC6790DCF53958 +2959D8F458EA40E727D3389E5FD1AF696432823E0AE4BB593E9388B67EB55EFF +76112C875A1C84E6F1606B7F8BD16EBE9D65E9FEEB8D77ADB1D2788E8C45CF7B +C1C56AACDE708EA7612695AFECECA3F76CDA1AC7839ABCAFE4B0C607D1BE9B62 +E2A1A8C7A91ADFB7DD160E479707ACB064362582D0AB4683B6C85D556438C206 +15FA88D398C4CC50CF35F4574512B54174EC4A2BE042562B3B9B08E50CFCDC4B +B3F1EB7212D96DF988C550088985B00022B52C708900C7B5242026C74CE1600D +41222024B641FA74E2B69F55393AB46185AF52484166224B97334421CB520F2C +3629FB92043D4F2F40C9EC825162E36C7D628D32F920A8905AD9C88E47F7EF18 +FDEED9AF7956D77452D9CBCAD6823AA544922FBB419113EE5F3D411102E7667B +E64730B781925D855F66F465789BE1A10F90D1C8B2B6C5A7CDD866CE8D79BFC3 +37CC82F64787A4E49F8F36BC44D00BD383EE8C551D39591E696CDC36FAECA8C1 +A8D0E2A5E095C5F18246DB8B4C19A4CA923BF496BE7ACA18076C8E3C1BCD335A +D8B083ABC98BC53FA82E04D4B59B617C8A8E5D72CE63A0FEDED86974FD91495F +C9EB6DB84191A7624172F9A6F5727BEAE174EBF017B4487FAEFFCA29DB490AF1 +74A74CD2353E0C9AEA26D360DA7921901C804BA5621559BA1D39B8BE29E2AE17 +0AD6F4301C56116E5E8EB60D40B8D695B37B24E6C63637CC2DC092F2641D779C +926EE0E86A41DE2D70E306EA63627B122ED75607C23BA52F73C219FB7590CC29 +7E22D8C250D47413C02DE5A8C1DEAD381C9233AA15E8A3AA34F92D65458A3A77 +30083B44A9C632072292F5AD9F9886A68DF815B87F2EDD4976C0C84ABAE2C2A1 +1CFA863320E2C3F8866F94D9CD7E713FF418021DA068A68EB87885CBFDEA32AE +A81380D1DC020DBBAB029A0363912E85B84778C74FDC558B +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndResource +%%EOF diff --git a/tests/tx_data/input/alt-missing-glif.ufo/data/com.adobe.type.processedHashMap b/tests/tx_data/input/alt-missing-glif.ufo/data/com.adobe.type.processedHashMap new file mode 100644 index 000000000..7d415a1d5 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/data/com.adobe.type.processedHashMap @@ -0,0 +1,67 @@ +{ +'.notdef': ['283ca2a4dcb237acdee4cb2bb677cbc5a9c9cc2fbaaede3cf9c07cc9dfbab8ad054b2308d5fcb76e7a42189d347a9fdff18e3d90ac096ed25e2a01975e3cd11d', ['checkOutlines', 'autohint']], +'A': ['w544l4520l5410l319656l225656l30l880l151200l390200l203367227440248512c268588l272588293512314440c338367l369267l172267', ['checkOutlines', 'autohint']], +'B': ['bd4977f3195ae5d9ee51128baf4232b4cbce2663b0de63a8cf877e31de29998421209050b1a3608b12c296e09ace8d5b7116d5ba4774b14880a4471dd1a4db07', ['checkOutlines', 'autohint']], +'C': ['c6d34c50586b4c9def26d533a6683065251060c70cac59e410bdbad68c4fa14b819ebb4e5b304a9b2c50d944f85ef9e0a5faa8475c1404ba626cbec4ae6fafbe', ['checkOutlines', 'autohint']], +'D': ['w615l900l25804560564122c564331564539456656c254656l90656l17368l173588l248588401588478496c47833147816540168c24868', ['checkOutlines', 'autohint']], +'E': ['w527l900l4780l47871l17371l173309l422309l422380l173380l173586l468586l468656l90656', ['checkOutlines', 'autohint']], +'F': ['w494l900l1730l173294l423294l423364l173364l173586l468586l468656l90656', ['checkOutlines', 'autohint']], +'G': ['2269e36343ed191177dbabff76144dacbac9aebe0a6f66ecfda5a040afe3112ee329d2887a5e0e0281abe1bc579f4734a6ba38e6b8a11e33eefc202564ca1c7f', ['checkOutlines', 'autohint']], +'H': ['w652l900l1730l173309l478309l4780l5620l562656l478656l478381l173381l173656l90656', ['checkOutlines', 'autohint']], +'I': ['w263l900l1730l173656l90656', ['checkOutlines', 'autohint']], +'J': ['w480l31936924129-12c212-12340-1239380c393193l393656l309656l30920130910127461c204611576112083c91135', ['checkOutlines', 'autohint']], +'K': ['w579l900l1730l173208l286341l4820l5750l338406l543656l449656l176327l173327l173656l90656', ['checkOutlines', 'autohint']], +'L': ['w486l900l4600l46071l17371l173656l90656', ['checkOutlines', 'autohint']], +'M': ['3536c1a1bf159a6cc1cd19dbf7f77490b7087f83070bf12462b94617a087f0b85c94b88a08da77a6f2d7048355d76e3ceee72023ce1e348119eec935000270fe', ['checkOutlines', 'autohint']], +'N': ['0876aba1f5d3297dab45b12d67a399dfcad8df5bfa302e64dda7213a0d2e4d9114ceb5eba0c1813a0e72e01f830cd40b9e5ff05e0da452a976195b7017bf3cfc', ['checkOutlines', 'autohint']], +'O': ['979b46dca37c933907e4ee50a973c34c43d643256eba747c98ed0444373dad83225762727112912ee1f2e514723f6a3290d12d86a08b028d9f1d8b512d0fb4c8', ['checkOutlines', 'autohint']], +'P': ['99a6ffe6e4c99a7dae0a8f628e07708a7461acffdccfa5a36b24dc5347196d854f31a0e3edeaa08422daa9b2cfd6dde0a2f3ec38cc4416142ea7d79727dd438b', ['checkOutlines', 'autohint']], +'Q': ['fa67843b2de05ad2f81d4f410a0f7070902baecfd74ca4fe1d6d611addc78b2f261d0b13d7fd41e6c5f1f0dac76b80be1e5b63a2cfe88d56fd79890f8b9bf57d', ['checkOutlines', 'autohint']], +'R': ['2e2ddfebdefdbbe975ec231cb5c08baa9e0b7df47c8a2bb8742f8ce6b1183b167768bfe02522ee55da965ccdba175d75f71974c10cbb09e4be73417a12607d28', ['checkOutlines', 'autohint']], +'S': ['2536f290acb178f160a8fe63035d7dd62277be439fdf2033a7857a5747ae26d5cb9cca1d6eeac2aa1ba4e20fa6aca8871a9f22e080c80ec30d7142953fc61cf7', ['checkOutlines', 'autohint']], +'T': ['w536l2260l3100l310586l508586l508656l28656l28586l226586', ['checkOutlines', 'autohint']], +'U': ['w645l872718760189-12c323-12457-1255860c558271l558656l478656l47826947811141061c3236123761170111c170269l170656l87656', ['checkOutlines', 'autohint']], +'V': ['w515l2100l3070l515656l430656l325302302224286162c26285l25885233162218224c194302l89656l0656', ['checkOutlines', 'autohint']], +'W': ['29c5f20a29e7cc4cdf208439e44a6d7e2f935f6bc370b1c3c725a73f33afb7c06461904917ee051c5aff041b4fd614fbda28d83ff780e634e4a8e0668af95d92', ['checkOutlines', 'autohint']], +'X': ['ca091a711edf624812896f61a17203052f89539bed5eaf9b6823faef971c8d462492193c095a1c7d2e245583ff8593a54ce2e26ef89249b5168805994df234f8', ['checkOutlines', 'autohint']], +'Y': ['w476l1960l2800l280254l477656l390656l306471286423263377c240328l236328214377194423c173471l88656l-1656l196254', ['checkOutlines', 'autohint']], +'Z': ['w539l450l4970l49771l14871l494607l494656l76656l76586l390586l4550', ['checkOutlines', 'autohint']], +'a': ['de48cb1274dfe031af1f28bcccedf34f014209062b8f936b1e535dd834529c5c643d14d29e248ff751577b23228f85c21be6b084d394cc94007d5caffebb14cb', ['checkOutlines', 'autohint']], +'b': ['b92ccc277b1b8ff2f4786afbb30d49146118955c62540a4ee374410c792a7a09b643fbf7a1015d70aee0a6c13d2e1f9ac8579644470b8204077fa9e88d90bf17', ['checkOutlines', 'autohint']], +'c': ['3e4fe6d317a3bf7dcab2360a956cee88dbbc68e9f5e902aa6404f0ed2419a14038e45abb0b9ff9cee5ece3e2a0d22378f9cec6172221bb7c879c03eb2da82bef', ['checkOutlines', 'autohint']], +'d': ['53d6426ae30aa2c6cf8e378d68b16793b3e09389bcdc1b05623dab9bf2317091c5cf94f0ee4cdd2d60f0aded2940984eb8d7eefce38cabbfbd4e31fa4a7ac178', ['checkOutlines', 'autohint']], +'e': ['6aa98885a0e0f8d0f16200bd3466e4347169335ae28f52f23f3312b64c6a076353445948e2753eb9a222b4a12fe1ab193508b86856d6b822a47e8401c07f9564', ['checkOutlines', 'autohint']], +'eight': ['ef0660592f45c493b53cd0ce2f15398d8f62c8e0031c7fc496699d69b00c00e46a409a9cd8adea77904f6be95d921ce5270a62056668c780b537ad6a4caf8344', ['checkOutlines', 'autohint']], +'f': ['82c6633fdaf062e1968b783f8a75e660fd973d741f88fd2f07e4bb5c8f70a4e7224d7559584ce47916598c92b39cb36ff07133e35f20d275fdf55a8dfd662bd2', ['checkOutlines', 'autohint']], +'five': ['f77f171985b4384a3d800540446f1981f117e98f5ead4fba888e096f0796769197ac00300311429d1be21f98be39b50391e8cdb59cd2b1d7d8ca7bc462aea572', ['checkOutlines', 'autohint']], +'four': ['7230c1dedca0df99c20f65c131180d5b64ac1b5334974db98fe8b4b253ff651e65e3b3bcf79f57c09c25547c34523479943930429bc6ab313178b1d39afc823e', ['checkOutlines', 'autohint']], +'g': ['1b4b8136ce1d18bb3a722fe32e3a56f4e9aefce33d5f59e344941604f306cfb9dda1cb45dafd1e46f8c5ef44c7d191eded78b21f3c795088bab1a1622fe0abc7', ['checkOutlines', 'autohint']], +'h': ['07eb4e21c0e691cd448cdd6b84bea1413073adb795366128cde9ec67bd294fceb9bd06554dfd49d32fca9ac7842b69160c8f12f90d8fe79ce26e1740456b9432', ['checkOutlines', 'autohint']], +'hashMapVersion': (1, 0), +'i': ['w246c124586156586181608c181639181671156692c1246929269267671c676396760892586l820l1640l164486l82486', ['checkOutlines', 'autohint']], +'j': ['a398897c5d7d04001a2badd48c884438a0538fed270b8f39d0a052c0445b14e631ff80bf8863a21471bdba4baed35e1e6419028b07aec6e51b10dc2c76a075a4', ['checkOutlines', 'autohint']], +'k': ['w495l820l1630l163128l254234l3960l4860l301291l464486l373486l166230l163230l163712l82712', ['checkOutlines', 'autohint']], +'l': ['w255l82988227107-12c169-12191-12205-9c216-4l205581965619256c187561755616466c16492l164712l82712', ['checkOutlines', 'autohint']], +'m': ['3b9e4f00ba853ad386333eb5397d3500c2249a1aee7560539f19ae61388dc968b4b8fbf041ac6df813d780fac7475492e479876b7b6b65c305a4d1f1e769f78b', ['checkOutlines', 'autohint']], +'n': ['4dacebc2e4a36de6894e4266ab6f54942efba0079d5308f92c1e0b8b9aaefe3759645b28c80aff54e2042af9684e83326a5c8801b4f46439ca1ae1b6f1609afe', ['checkOutlines', 'autohint']], +'nine': ['624954a2e8e85eabe694968c1fe2f6e6b2552c76fd18a5047a705ea1242e714d9902fbc5e43e4137df586d1bd2e2c18e90081ad8e8e33a45987fb89e8eb00538', ['checkOutlines', 'autohint']], +'o': ['2037c95e920bcdfd3f908084912058c14a44570b6c2c7a25ec29e43edc1ef2ed70cb35521349392e9eed4234d2049f8151f2daa880d68acfb81bb8ae72507a0e', ['checkOutlines', 'autohint']], +'one': ['w497l790l4390l43968l30768l307638l244638209617167601c109591l109538l225538l22568l7968', ['checkOutlines', 'autohint']], +'p': ['6d450729f1a6079bb8d9954843e00919ca3d72c7f8782aaf0ed42f43a9701d93109d3a9338789321961977e93f641f127bfb9141ef3efdf59f1f6d84ccfe300a', ['checkOutlines', 'autohint']], +'q': ['d1a20d9995f400e77024d8da1f777ccfc29d009a03e611d4629982d2782edc0c74fac0cc08cfb05a6a473abdb2963e3a2b50e6d30428f48cd3834b5003881639', ['checkOutlines', 'autohint']], +'r': ['w347l820l1640l164312197394246424c287424307424318421c334416l350488334495319498c298498243498193459c160398l157398l150486l82486', ['checkOutlines', 'autohint']], +'s': ['7fd2b86537597dcc96d8ace3e8130b479e6aa111fe881941fc608d8a33d6ba55054227577bc12c03eac1616e29d3b106219bc5c10d0208b2414a901392aca743', ['checkOutlines', 'autohint']], +'seven': ['w497c1770l2620273249304394c455587l455638l44638l44567l362567236392188240', ['checkOutlines', 'autohint']], +'six': ['fd7a526bd2bf1c598e866b370dd7922a889f04934dadd38642fd43769fcd873f5f8eee10e8762538401ba53ea4a64b314ae3be5e6478acff2d7f621bb3abce7c', ['checkOutlines', 'autohint']], +'space': ['w202', ['checkOutlines', 'autohint']], +'t': ['724ba96fc10dd34314ce80f33ee7f51f2cc5252585423f67c37b9737018e0db656596c66474da9f956188ee6a9fd41bb10512f18eb7995ef7cd2fd5296e6bb39', ['checkOutlines', 'autohint']], +'three': ['4886be41730003bb47d4f647a8518b764191efa3aa83d8c1e446747e7555c20855396dcf9fd2f40b71f7306c69dffbe346cc524384e6cad216cb5566ce2a1df3', ['checkOutlines', 'autohint']], +'two': ['24d026b252c7d6d2a030d2eaa6c19ad8a506205e6c16e8ec89a9967bd35b58d9f8c2be1b78051ab418a93e3ec97b389eb9d038fd723d1e0c983c58d6fd0ca939', ['checkOutlines', 'autohint']], +'u': ['w544l751787554121-12c224-12291-1233923c38476l38776l3940l4620l462486l380486l3801413348429959c249591855915898c158189l158486l75486', ['checkOutlines', 'autohint']], +'v': ['w467l1870l2830l455486l374486l282210268162252113c23867l23467219113203162c189210l97486l12486', ['checkOutlines', 'autohint']], +'w': ['2ea4b8a7d7ff3087d4b143fb61ccd52c7bbefea83f2621ea83acd290d608f5420f5901acf12c09a90c698706b59069e9a9cd491b25e1bb843870e856b5f96517', ['checkOutlines', 'autohint']], +'x': ['c60e1f49a95ba6875b061ad4c854be857877f9b16c1d60ca4ac6242f348cf7f442c9d38142b5acffaf12f7bdce56e5683edf22841a773b2d1e380160313d2687', ['checkOutlines', 'autohint']], +'y': ['d14e2d31ca4e240c0b5c0130ab5367c49328b53fbb3dbe6843e4850856ec272cba1630455ed6acfb3f4185d8e3b4707964fae99e2d3bf183f41c17ea7db51987', ['checkOutlines', 'autohint']], +'z': ['w425l310l3990l39967l13567l391442l391486l59486l59419l287419l3144', ['checkOutlines', 'autohint']], +'zero': ['d8c77fb9b3c0f9a266a500cc9a55d0b870a270cc6affab1f87696fc531c727c150c60060200509eb3bb0279a21a90b4245e39bb9992f482674cec535549888b2', ['checkOutlines', 'autohint']], +} diff --git a/tests/tx_data/input/alt-missing-glif.ufo/fontinfo.plist b/tests/tx_data/input/alt-missing-glif.ufo/fontinfo.plist new file mode 100644 index 000000000..9f1baa884 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/fontinfo.plist @@ -0,0 +1,84 @@ + + + + + ascender + 750 + capHeight + 750 + copyright + + descender + -250 + familyName + Exercise 1 + guidelines + + + italicAngle + 0 + postscriptBlueFuzz + 0 + postscriptBlueScale + 0.0625 + postscriptBlueShift + 7 + postscriptBlueValues + + -12 + 0 + 486 + 498 + 518 + 530 + 574 + 586 + 638 + 650 + 656 + 668 + 712 + 724 + + postscriptFamilyBlues + + + postscriptFamilyOtherBlues + + + postscriptFontName + Exercise1-Regular + postscriptOtherBlues + + -217 + -205 + + postscriptStemSnapH + + 68 + + postscriptStemSnapV + + 82 + 86 + + postscriptUnderlinePosition + -100 + postscriptUnderlineThickness + 51 + postscriptWeightName + Regular + styleName + Regular + trademark + + unitsPerEm + 1000 + versionMajor + 1 + versionMinor + 0 + xHeight + 500 + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/A_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/A_.glif new file mode 100644 index 000000000..55323869c --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/A_.glif @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 200 67 + hstem 588 68 + vstem 3 538 + + + + id + w544l4520l5410l319656l225656l30l880l151200l390200l203367227440248512c268588l272588293512314440c338367l369267l172267 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/B_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/B_.glif new file mode 100644 index 000000000..ebe2b080b --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/B_.glif @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 0 66 + hstem 314 62 + hstem 590 66 + vstem 90 83 + vstem 466 82 + + + + pointTag + hintSet0005 + stems + + hstem 0 66 + hstem 314 62 + hstem 590 66 + vstem 90 83 + vstem 428 82 + + + + pointTag + hintSet0016 + stems + + hstem 0 66 + hstem 314 62 + hstem 590 66 + vstem 90 83 + vstem 466 82 + + + + id + bd4977f3195ae5d9ee51128baf4232b4cbce2663b0de63a8cf877e31de29998421209050b1a3608b12c296e09ace8d5b7116d5ba4774b14880a4471dd1a4db07 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/C_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/C_.glif new file mode 100644 index 000000000..a59acfc04 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/C_.glif @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 73 + hstem 595 73 + vstem 52 86 + + + + id + c6d34c50586b4c9def26d533a6683065251060c70cac59e410bdbad68c4fa14b819ebb4e5b304a9b2c50d944f85ef9e0a5faa8475c1404ba626cbec4ae6fafbe + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/D_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/D_.glif new file mode 100644 index 000000000..3a24b4bc7 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/D_.glif @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 0 68 + hstem 588 68 + vstem 90 83 + vstem 478 86 + + + + id + w615l900l25804560564122c564331564539456656c254656l90656l17368l173588l248588401588478496c47833147816540168c24868 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/E_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/E_.glif new file mode 100644 index 000000000..37937ec3a --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/E_.glif @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 0 71 + hstem 309 71 + hstem 586 70 + vstem 90 83 + + + + id + w527l900l4780l47871l17371l173309l422309l422380l173380l173586l468586l468656l90656 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/F_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/F_.glif new file mode 100644 index 000000000..2a022f8a0 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/F_.glif @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 294 70 + hstem 586 70 + vstem 90 83 + + + + id + w494l900l1730l173294l423294l423364l173364l173586l468586l468656l90656 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/G_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/G_.glif new file mode 100644 index 000000000..b39508074 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/G_.glif @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 73 + hstem 271 69 + hstem 595 73 + vstem 52 86 + vstem 474 76 + + + + id + 2269e36343ed191177dbabff76144dacbac9aebe0a6f66ecfda5a040afe3112ee329d2887a5e0e0281abe1bc579f4734a6ba38e6b8a11e33eefc202564ca1c7f + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/H_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/H_.glif new file mode 100644 index 000000000..b0663b0c0 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/H_.glif @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 309 72 + hstem 656 -20 + vstem 90 83 + vstem 478 84 + + + + id + w652l900l1730l173309l478309l4780l5620l562656l478656l478381l173381l173656l90656 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/I_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/I_.glif new file mode 100644 index 000000000..23884ca31 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/I_.glif @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 656 -20 + vstem 90 83 + + + + id + w263l900l1730l173656l90656 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/J_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/J_.glif new file mode 100644 index 000000000..c74548382 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/J_.glif @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 73 + hstem 656 -20 + vstem 309 84 + + + + id + w480l31936924129-12c212-12340-1239380c393193l393656l309656l30920130910127461c204611576112083c91135 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/K_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/K_.glif new file mode 100644 index 000000000..1653de4b5 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/K_.glif @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 656 -20 + vstem 90 83 + + + + id + w579l900l1730l173208l286341l4820l5750l338406l543656l449656l176327l173327l173656l90656 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/L_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/L_.glif new file mode 100644 index 000000000..acbb2e00d --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/L_.glif @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 0 71 + hstem 656 -20 + vstem 90 83 + + + + id + w486l900l4600l46071l17371l173656l90656 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/M_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/M_.glif new file mode 100644 index 000000000..1f351a4e2 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/M_.glif @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 66 104 + hstem 555 101 + vstem 90 77 + vstem 558 79 + + + + id + 3536c1a1bf159a6cc1cd19dbf7f77490b7087f83070bf12462b94617a087f0b85c94b88a08da77a6f2d7048355d76e3ceee72023ce1e348119eec935000270fe + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/N_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/N_.glif new file mode 100644 index 000000000..5d6416177 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/N_.glif @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 656 -20 + vstem 90 79 + vstem 478 79 + + + + pointTag + hintSet0003 + stems + + hstem 21 -21 + hstem 548 108 + vstem 90 79 + vstem 478 79 + + + + pointTag + hintSet0011 + stems + + hstem 0 108 + hstem 656 -20 + vstem 90 79 + vstem 478 79 + + + + id + 0876aba1f5d3297dab45b12d67a399dfcad8df5bfa302e64dda7213a0d2e4d9114ceb5eba0c1813a0e72e01f830cd40b9e5ff05e0da452a976195b7017bf3cfc + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/O_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/O_.glif new file mode 100644 index 000000000..2d131c016 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/O_.glif @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 73 + hstem 595 73 + vstem 52 86 + vstem 526 87 + + + + id + 979b46dca37c933907e4ee50a973c34c43d643256eba747c98ed0444373dad83225762727112912ee1f2e514723f6a3290d12d86a08b028d9f1d8b512d0fb4c8 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/P_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/P_.glif new file mode 100644 index 000000000..c290bfd78 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/P_.glif @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 260 68 + hstem 589 67 + vstem 90 83 + vstem 450 83 + + + + id + 99a6ffe6e4c99a7dae0a8f628e07708a7461acffdccfa5a36b24dc5347196d854f31a0e3edeaa08422daa9b2cfd6dde0a2f3ec38cc4416142ea7d79727dd438b + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/Q_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/Q_.glif new file mode 100644 index 000000000..c571f6cb5 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/Q_.glif @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -164 70 + hstem -8 65 + hstem 595 73 + vstem 52 86 + vstem 526 87 + + + + id + fa67843b2de05ad2f81d4f410a0f7070902baecfd74ca4fe1d6d611addc78b2f261d0b13d7fd41e6c5f1f0dac76b80be1e5b63a2cfe88d56fd79890f8b9bf57d + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/R_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/R_.glif new file mode 100644 index 000000000..3145071bd --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/R_.glif @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 277 68 + hstem 589 67 + vstem 90 83 + vstem 442 83 + + + + id + 2e2ddfebdefdbbe975ec231cb5c08baa9e0b7df47c8a2bb8742f8ce6b1183b167768bfe02522ee55da965ccdba175d75f71974c10cbb09e4be73417a12607d28 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/S_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/S_.glif new file mode 100644 index 000000000..b38d6ef89 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/S_.glif @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 73 + hstem 595 73 + vstem 74 84 + vstem 410 85 + + + + id + 2536f290acb178f160a8fe63035d7dd62277be439fdf2033a7857a5747ae26d5cb9cca1d6eeac2aa1ba4e20fa6aca8871a9f22e080c80ec30d7142953fc61cf7 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/T_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/T_.glif new file mode 100644 index 000000000..ae4d6db60 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/T_.glif @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 586 70 + vstem 226 84 + + + + id + w536l2260l3100l310586l508586l508656l28656l28586l226586 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/U_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/U_.glif new file mode 100644 index 000000000..1f2e0b21a --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/U_.glif @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 73 + hstem 656 -20 + vstem 87 83 + vstem 478 80 + + + + id + w645l872718760189-12c323-12457-1255860c558271l558656l478656l47826947811141061c3236123761170111c170269l170656l87656 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/V_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/V_.glif new file mode 100644 index 000000000..a2f474f26 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/V_.glif @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 0 85 + hstem 656 -20 + vstem 0 515 + + + + id + w515l2100l3070l515656l430656l325302302224286162c26285l25885233162218224c194302l89656l0656 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/W_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/W_.glif new file mode 100644 index 000000000..bdb0e27b5 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/W_.glif @@ -0,0 +1,75 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 0 87 + hstem 656 -20 + vstem 23 739 + + + + pointTag + hintSet0003 + stems + + hstem 0 87 + hstem 544 112 + vstem 23 739 + + + + id + 29c5f20a29e7cc4cdf208439e44a6d7e2f935f6bc370b1c3c725a73f33afb7c06461904917ee051c5aff041b4fd614fbda28d83ff780e634e4a8e0668af95d92 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/X_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/X_.glif new file mode 100644 index 000000000..9312dd1b5 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/X_.glif @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 656 -20 + vstem 15 483 + + + + id + ca091a711edf624812896f61a17203052f89539bed5eaf9b6823faef971c8d462492193c095a1c7d2e245583ff8593a54ce2e26ef89249b5168805994df234f8 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/Y_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/Y_.glif new file mode 100644 index 000000000..a7ed567e6 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/Y_.glif @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 656 -20 + vstem 196 84 + + + + id + w476l1960l2800l280254l477656l390656l306471286423263377c240328l236328214377194423c173471l88656l-1656l196254 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/Z_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/Z_.glif new file mode 100644 index 000000000..337fc1b0a --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/Z_.glif @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 0 71 + hstem 586 70 + vstem 45 452 + + + + id + w539l450l4970l49771l14871l494607l494656l76656l76586l390586l4550 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/_notdef.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/_notdef.glif new file mode 100644 index 000000000..c3df63af9 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/_notdef.glif @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 0 58 + hstem 600 60 + vstem 89 65 + vstem 498 67 + + + + id + 283ca2a4dcb237acdee4cb2bb677cbc5a9c9cc2fbaaede3cf9c07cc9dfbab8ad054b2308d5fcb76e7a42189d347a9fdff18e3d90ac096ed25e2a01975e3cd11d + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/a.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/a.glif new file mode 100644 index 000000000..51df070e3 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/a.glif @@ -0,0 +1,114 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 66 + hstem 430 68 + vstem 58 81 + vstem 357 82 + + + + pointTag + hintSet0002 + stems + + hstem -12 66 + hstem 430 68 + vstem 58 81 + vstem 367.5 71.5 + + + + pointTag + hintSet0004 + stems + + hstem 21 -21 + hstem 430 68 + vstem 58 81 + vstem 367.5 71.5 + + + + pointTag + hintSet0005 + stems + + hstem 21 -21 + hstem 430 68 + vstem 58 81 + vstem 357 82 + + + + pointTag + hintSet0012 + stems + + hstem -12 66 + hstem 430 68 + vstem 58 81 + vstem 357 82 + + + + id + de48cb1274dfe031af1f28bcccedf34f014209062b8f936b1e535dd834529c5c643d14d29e248ff751577b23228f85c21be6b084d394cc94007d5caffebb14cb + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/b.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/b.glif new file mode 100644 index 000000000..eb843163a --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/b.glif @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 429 69 + hstem 712 -20 + vstem 82 82 + vstem 422 85 + + + + pointTag + hintSet0001 + stems + + hstem 21 -21 + hstem 429 69 + hstem 712 -20 + vstem 82 69.5 + vstem 422 85 + + + + pointTag + hintSet0002 + stems + + hstem -12 69 + hstem 429 69 + hstem 712 -20 + vstem 82 69.5 + vstem 422 85 + + + + pointTag + hintSet0007 + stems + + hstem -12 69 + hstem 429 69 + hstem 712 -20 + vstem 82 82 + vstem 422 85 + + + + id + b92ccc277b1b8ff2f4786afbb30d49146118955c62540a4ee374410c792a7a09b643fbf7a1015d70aee0a6c13d2e1f9ac8579644470b8204077fa9e88d90bf17 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/c.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/c.glif new file mode 100644 index 000000000..4563d70da --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/c.glif @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 68 + hstem 430 68 + vstem 46 85 + + + + id + 3e4fe6d317a3bf7dcab2360a956cee88dbbc68e9f5e902aa6404f0ed2419a14038e45abb0b9ff9cee5ece3e2a0d22378f9cec6172221bb7c879c03eb2da82bef + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/contents.plist b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/contents.plist new file mode 100644 index 000000000..767e78f05 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/contents.plist @@ -0,0 +1,132 @@ + + + + + .notdef + _notdef.glif + A + A_.glif + B + B_.glif + C + C_.glif + D + D_.glif + E + E_.glif + F + F_.glif + G + G_.glif + H + H_.glif + I + I_.glif + J + J_.glif + K + K_.glif + L + L_.glif + M + M_.glif + N + N_.glif + O + O_.glif + P + P_.glif + Q + Q_.glif + R + R_.glif + S + S_.glif + T + T_.glif + U + U_.glif + V + V_.glif + W + W_.glif + X + X_.glif + Y + Y_.glif + Z + Z_.glif + a + a.glif + b + b.glif + c + c.glif + d + d.glif + e + e.glif + eight + eight.glif + f + f.glif + five + five.glif + four + four.glif + g + g.glif + h + h.glif + i + i.glif + j + j.glif + k + k.glif + l + l.glif + m + m.glif + n + n.glif + nine + nine.glif + o + o.glif + one + one.glif + p + p.glif + q + q.glif + r + r.glif + s + s.glif + seven + seven.glif + six + six.glif + t + t.glif + three + three.glif + two + two.glif + u + u.glif + v + v.glif + w + w.glif + x + x.glif + y + y.glif + z + z.glif + zero + zero.glif + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/d.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/d.glif new file mode 100644 index 000000000..7d8e51a6f --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/d.glif @@ -0,0 +1,115 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 69 + hstem 429 69 + hstem 712 -20 + vstem 47 85 + vstem 390 83 + + + + pointTag + hintSet0002 + stems + + hstem -12 69 + hstem 429 69 + hstem 712 -20 + vstem 47 85 + vstem 401.5 71.5 + + + + pointTag + hintSet0004 + stems + + hstem 21 -21 + hstem 429 69 + hstem 712 -20 + vstem 47 85 + vstem 401.5 71.5 + + + + pointTag + hintSet0005 + stems + + hstem 21 -21 + hstem 429 69 + hstem 712 -20 + vstem 47 85 + vstem 390 83 + + + + pointTag + hintSet0011 + stems + + hstem -12 69 + hstem 429 69 + hstem 712 -20 + vstem 47 85 + vstem 390 83 + + + + id + 53d6426ae30aa2c6cf8e378d68b16793b3e09389bcdc1b05623dab9bf2317091c5cf94f0ee4cdd2d60f0aded2940984eb8d7eefce38cabbfbd4e31fa4a7ac178 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/e.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/e.glif new file mode 100644 index 000000000..55502e47a --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/e.glif @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 66 + hstem 225 54 + hstem 433 65 + vstem 46 80 + vstem 386 72 + + + + pointTag + hintSet0005 + stems + + hstem -12 66 + hstem 225 54 + hstem 433 65 + vstem 46 81 + vstem 386 72 + + + + pointTag + hintSet0009 + stems + + hstem -12 66 + hstem 225 54 + hstem 433 65 + vstem 46 80 + vstem 386 72 + + + + id + 6aa98885a0e0f8d0f16200bd3466e4347169335ae28f52f23f3312b64c6a076353445948e2753eb9a222b4a12fe1ab193508b86856d6b822a47e8401c07f9564 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/eight.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/eight.glif new file mode 100644 index 000000000..76a0287a9 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/eight.glif @@ -0,0 +1,130 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 61 + hstem 589 61 + vstem 41 74 + vstem 377 79 + + + + pointTag + hintSet0005 + stems + + hstem -12 61 + hstem 589 61 + vstem 72 76 + vstem 362 71 + + + + pointTag + hintSet0010 + stems + + hstem -12 61 + hstem 589 61 + vstem 41 74 + vstem 377 79 + + + + pointTag + hintSet0015 + stems + + hstem -12 61 + hstem 589 61 + vstem 72 76 + vstem 362 71 + + + + pointTag + hintSet0020 + stems + + hstem -12 61 + hstem 589 61 + vstem 41 74 + vstem 377 79 + + + + id + ef0660592f45c493b53cd0ce2f15398d8f62c8e0031c7fc496699d69b00c00e46a409a9cd8adea77904f6be95d921ce5270a62056668c780b537ad6a4caf8344 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/f.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/f.glif new file mode 100644 index 000000000..9572f2c71 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/f.glif @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 419 67 + hstem 657 67 + vstem 96 82 + + + + pointTag + hintSet0010 + stems + + hstem 21 -21 + hstem 419 67 + hstem 657 67 + vstem 96 185 + + + + pointTag + hintSet0012 + stems + + hstem 21 -21 + hstem 419 67 + hstem 657 67 + vstem 96 82 + + + + id + 82c6633fdaf062e1968b783f8a75e660fd973d741f88fd2f07e4bb5c8f70a4e7224d7559584ce47916598c92b39cb36ff07133e35f20d275fdf55a8dfd662bd2 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/five.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/five.glif new file mode 100644 index 000000000..e8b3dc45d --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/five.glif @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 68 + hstem 342 62 + hstem 567 71 + vstem 366 83 + + + + id + f77f171985b4384a3d800540446f1981f117e98f5ead4fba888e096f0796769197ac00300311429d1be21f98be39b50391e8cdb59cd2b1d7d8ca7bc462aea572 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/four.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/four.glif new file mode 100644 index 000000000..7dccc95f6 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/four.glif @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 176 66 + hstem 550 88 + vstem 304 78 + + + + id + 7230c1dedca0df99c20f65c131180d5b64ac1b5334974db98fe8b4b253ff651e65e3b3bcf79f57c09c25547c34523479943930429bc6ab313178b1d39afc823e + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/g.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/g.glif new file mode 100644 index 000000000..499e31b23 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/g.glif @@ -0,0 +1,218 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -224 57 + hstem 21 -21 + hstem 154 55 + hstem 423 63 + vstem 45 72 + vstem 349 75 + + + + pointTag + hintSet0002 + stems + + hstem -224 57 + hstem -8 68 + hstem 154 55 + hstem 423 63 + vstem 63 80 + vstem 412 80 + + + + pointTag + hintSet0006 + stems + + hstem -224 57 + hstem 21 -21 + hstem 154 55 + hstem 423 63 + vstem 45 72 + vstem 349 75 + + + + pointTag + hintSet0009 + stems + + hstem -224 57 + hstem -8 68 + hstem 154 55 + hstem 423 63 + vstem 73 69 + vstem 412 80 + + + + pointTag + hintSet0015 + stems + + hstem -224 57 + hstem -8 68 + hstem 154 55 + hstem 423 63 + vstem 63 80 + vstem 349 75 + + + + pointTag + hintSet0020 + stems + + hstem -224 57 + hstem -8 68 + hstem 154 55 + hstem 438 60 + vstem 63 80 + vstem 349 75 + + + + pointTag + hintSet0024 + stems + + hstem -224 57 + hstem -8 68 + hstem 154 55 + hstem 423 63 + vstem 73 69 + vstem 349 75 + + + + pointTag + hintSet0027 + stems + + hstem -224 57 + hstem 21 -21 + hstem 154 55 + hstem 423 63 + vstem 45 72 + vstem 349 75 + + + + pointTag + hintSet0028 + stems + + hstem -224 57 + hstem -8 68 + hstem 154 55 + hstem 438 60 + vstem 63 80 + vstem 349 75 + + + + id + 1b4b8136ce1d18bb3a722fe32e3a56f4e9aefce33d5f59e344941604f306cfb9dda1cb45dafd1e46f8c5ef44c7d191eded78b21f3c795088bab1a1622fe0abc7 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/h.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/h.glif new file mode 100644 index 000000000..ece392ea8 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/h.glif @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 427 71 + hstem 712 -20 + vstem 82 82 + vstem 389 82 + + + + id + 07eb4e21c0e691cd448cdd6b84bea1413073adb795366128cde9ec67bd294fceb9bd06554dfd49d32fca9ac7842b69160c8f12f90d8fe79ce26e1740456b9432 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/i.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/i.glif new file mode 100644 index 000000000..fd0e4491f --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/i.glif @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 486 -20 + hstem 586 106 + vstem 67 114 + + + + pointTag + hintSet0005 + stems + + hstem 21 -21 + hstem 486 -20 + hstem 586 106 + vstem 82 82 + + + + id + w246c124586156586181608c181639181671156692c1246929269267671c676396760892586l820l1640l164486l82486 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/j.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/j.glif new file mode 100644 index 000000000..40ec0d7c4 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/j.glif @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -217 67 + hstem 486 -20 + hstem 586 106 + vstem 83 82 + + + + pointTag + hintSet0008 + stems + + hstem -217 67 + hstem 486 -20 + hstem 586 106 + vstem 68 113 + + + + id + a398897c5d7d04001a2badd48c884438a0538fed270b8f39d0a052c0445b14e631ff80bf8863a21471bdba4baed35e1e6419028b07aec6e51b10dc2c76a075a4 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/k.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/k.glif new file mode 100644 index 000000000..73e90acab --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/k.glif @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 486 -20 + hstem 712 -20 + vstem 82 81 + + + + id + w495l820l1630l163128l254234l3960l4860l301291l464486l373486l166230l163230l163712l82712 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/l.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/l.glif new file mode 100644 index 000000000..2ad03e083 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/l.glif @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 17 -21 + hstem 712 -20 + vstem 82 82 + + + + pointTag + hintSet0001 + stems + + hstem -12 68 + hstem 712 -20 + vstem 82 82 + + + + id + w255l82988227107-12c169-12191-12205-9c216-4l205581965619256c187561755616466c16492l164712l82712 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/layerinfo.plist b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/layerinfo.plist new file mode 100644 index 000000000..aa5f6f5fe --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/layerinfo.plist @@ -0,0 +1,12 @@ + + + + + lib + + org.unifiedfontobject.normalizer.imageReferences + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/m.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/m.glif new file mode 100644 index 000000000..831f4270a --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/m.glif @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 427 71 + vstem 82 82 + vstem 377 82 + vstem 671 82 + + + + pointTag + hintSet0016 + stems + + hstem 21 -21 + hstem 427 71 + vstem 82 71.5 + vstem 377 82 + vstem 671 82 + + + + pointTag + hintSet0018 + stems + + hstem 21 -21 + hstem 486 -20 + vstem 82 71.5 + vstem 377 82 + vstem 671 82 + + + + pointTag + hintSet0019 + stems + + hstem 21 -21 + hstem 486 -20 + vstem 82 82 + vstem 377 82 + vstem 671 82 + + + + id + 3b9e4f00ba853ad386333eb5397d3500c2249a1aee7560539f19ae61388dc968b4b8fbf041ac6df813d780fac7475492e479876b7b6b65c305a4d1f1e769f78b + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/n.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/n.glif new file mode 100644 index 000000000..a881a08a3 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/n.glif @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 427 71 + vstem 82 82 + vstem 389 82 + + + + pointTag + hintSet0009 + stems + + hstem 21 -21 + hstem 427 71 + vstem 82 71.5 + vstem 389 82 + + + + pointTag + hintSet0011 + stems + + hstem 21 -21 + hstem 486 -20 + vstem 82 71.5 + vstem 389 82 + + + + pointTag + hintSet0012 + stems + + hstem 21 -21 + hstem 486 -20 + vstem 82 82 + vstem 389 82 + + + + id + 4dacebc2e4a36de6894e4266ab6f54942efba0079d5308f92c1e0b8b9aaefe3759645b28c80aff54e2042af9684e83326a5c8801b4f46439ca1ae1b6f1609afe + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/nine.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/nine.glif new file mode 100644 index 000000000..be568d85b --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/nine.glif @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 68 + hstem 248 62 + hstem 585 65 + vstem 40 77 + vstem 371 77 + + + + id + 624954a2e8e85eabe694968c1fe2f6e6b2552c76fd18a5047a705ea1242e714d9902fbc5e43e4137df586d1bd2e2c18e90081ad8e8e33a45987fb89e8eb00538 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/o.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/o.glif new file mode 100644 index 000000000..4964a1409 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/o.glif @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 68 + hstem 430 68 + vstem 46 85 + vstem 411 85 + + + + id + 2037c95e920bcdfd3f908084912058c14a44570b6c2c7a25ec29e43edc1ef2ed70cb35521349392e9eed4234d2049f8151f2daa880d68acfb81bb8ae72507a0e + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/one.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/one.glif new file mode 100644 index 000000000..1c23c49fc --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/one.glif @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 0 68 + hstem 538 100 + vstem 225 82 + + + + pointTag + hintSet0006 + stems + + hstem 0 68 + hstem 538 100 + vstem 109 198 + + + + pointTag + hintSet0008 + stems + + hstem 0 68 + hstem 538 100 + vstem 225 82 + + + + id + w497l790l4390l43968l30768l307638l244638209617167601c109591l109538l225538l22568l7968 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/p.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/p.glif new file mode 100644 index 000000000..aebed9008 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/p.glif @@ -0,0 +1,127 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -184 -21 + hstem -12 69 + hstem 429 69 + vstem 82 82 + vstem 422 85 + + + + pointTag + hintSet0004 + stems + + hstem -184 -21 + hstem -12 69 + hstem 429 69 + vstem 82 71.5 + vstem 422 85 + + + + pointTag + hintSet0006 + stems + + hstem -184 -21 + hstem -12 69 + hstem 486 -20 + vstem 82 71.5 + vstem 422 85 + + + + pointTag + hintSet0007 + stems + + hstem -184 -21 + hstem -12 69 + hstem 486 -20 + vstem 82 82 + vstem 422 85 + + + + pointTag + hintSet0012 + stems + + hstem -184 -21 + hstem -12 69 + hstem 429 69 + vstem 82 82 + vstem 422 85 + + + + pointTag + hintSet0016 + stems + + hstem -184 -21 + hstem -12 69 + hstem 486 -20 + vstem 82 82 + vstem 422 85 + + + + id + 6d450729f1a6079bb8d9954843e00919ca3d72c7f8782aaf0ed42f43a9701d93109d3a9338789321961977e93f641f127bfb9141ef3efdf59f1f6d84ccfe300a + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/q.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/q.glif new file mode 100644 index 000000000..a64cb64af --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/q.glif @@ -0,0 +1,115 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -184 -21 + hstem -12 69 + hstem 429 69 + vstem 47 85 + vstem 390 83 + + + + pointTag + hintSet0006 + stems + + hstem -184 -21 + hstem -12 69 + hstem 486 -20 + vstem 47 85 + vstem 390 83 + + + + pointTag + hintSet0007 + stems + + hstem -184 -21 + hstem -12 69 + hstem 486 -20 + vstem 47 85 + vstem 403 70 + + + + pointTag + hintSet0008 + stems + + hstem -184 -21 + hstem -12 69 + hstem 429 69 + vstem 47 85 + vstem 403 70 + + + + pointTag + hintSet0011 + stems + + hstem -184 -21 + hstem -12 69 + hstem 429 69 + vstem 47 85 + vstem 390 83 + + + + id + d1a20d9995f400e77024d8da1f777ccfc29d009a03e611d4629982d2782edc0c74fac0cc08cfb05a6a473abdb2963e3a2b50e6d30428f48cd3834b5003881639 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/r.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/r.glif new file mode 100644 index 000000000..0ad68606a --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/r.glif @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 424 74 + vstem 82 82 + + + + pointTag + hintSet0005 + stems + + hstem 21 -21 + hstem 488 -20 + vstem 82 82 + + + + pointTag + hintSet0006 + stems + + hstem 21 -21 + hstem 424 74 + vstem 82 71.5 + + + + pointTag + hintSet0009 + stems + + hstem 21 -21 + hstem 486 -20 + vstem 82 71.5 + + + + pointTag + hintSet0010 + stems + + hstem 21 -21 + hstem 486 -20 + vstem 82 82 + + + + id + w347l820l1640l164312197394246424c287424307424318421c334416l350488334495319498c298498243498193459c160398l157398l150486l82486 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/s.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/s.glif new file mode 100644 index 000000000..6ac03de00 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/s.glif @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 64 + hstem 434 64 + vstem 52 79 + vstem 308 79 + + + + id + 7fd2b86537597dcc96d8ace3e8130b479e6aa111fe881941fc608d8a33d6ba55054227577bc12c03eac1616e29d3b106219bc5c10d0208b2414a901392aca743 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/seven.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/seven.glif new file mode 100644 index 000000000..f50297c02 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/seven.glif @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 567 71 + vstem 177 85 + + + + id + w497c1770l2620273249304394c455587l455638l44638l44567l362567236392188240 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/six.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/six.glif new file mode 100644 index 000000000..b2ca4498e --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/six.glif @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 65 + hstem 328 62 + hstem 581 69 + vstem 48 78 + vstem 379 78 + + + + pointTag + hintSet0001 + stems + + hstem -12 65 + hstem 328 62 + hstem 581 69 + vstem 48 80 + vstem 379 78 + + + + pointTag + hintSet0004 + stems + + hstem -12 65 + hstem 328 62 + hstem 581 69 + vstem 48 78 + vstem 379 78 + + + + pointTag + hintSet0005 + stems + + hstem -12 65 + hstem 328 62 + hstem 582 -20 + vstem 48 78 + vstem 379 78 + + + + pointTag + hintSet0006 + stems + + hstem -12 65 + hstem 328 62 + hstem 581 69 + vstem 48 78 + vstem 379 78 + + + + id + fd7a526bd2bf1c598e866b370dd7922a889f04934dadd38642fd43769fcd873f5f8eee10e8762538401ba53ea4a64b314ae3be5e6478acff2d7f621bb3abce7c + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/t.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/t.glif new file mode 100644 index 000000000..298bb3dea --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/t.glif @@ -0,0 +1,75 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 67 + hstem 419 67 + vstem 96 83 + + + + pointTag + hintSet0011 + stems + + hstem -12 67 + hstem 419 67 + vstem 105 74 + + + + pointTag + hintSet0013 + stems + + hstem -12 67 + hstem 419 67 + vstem 96 83 + + + + id + 724ba96fc10dd34314ce80f33ee7f51f2cc5252585423f67c37b9737018e0db656596c66474da9f956188ee6a9fd41bb10512f18eb7995ef7cd2fd5296e6bb39 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/three.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/three.glif new file mode 100644 index 000000000..925e8af1f --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/three.glif @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 68 + hstem 300 63 + hstem 583 67 + vstem 159 149 + vstem 363 83 + + + + pointTag + hintSet0005 + stems + + hstem -12 68 + hstem 300 63 + hstem 583 67 + vstem 159 149 + vstem 340 84 + + + + pointTag + hintSet0013 + stems + + hstem -12 68 + hstem 300 63 + hstem 583 67 + vstem 159 149 + vstem 363 83 + + + + id + 4886be41730003bb47d4f647a8518b764191efa3aa83d8c1e446747e7555c20855396dcf9fd2f40b71f7306c69dffbe346cc524384e6cad216cb5566ce2a1df3 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/two.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/two.glif new file mode 100644 index 000000000..f0f250d21 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/two.glif @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 0 71 + hstem 583 67 + vstem 340 80 + + + + id + 24d026b252c7d6d2a030d2eaa6c19ad8a506205e6c16e8ec89a9967bd35b58d9f8c2be1b78051ab418a93e3ec97b389eb9d038fd723d1e0c983c58d6fd0ca939 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/u.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/u.glif new file mode 100644 index 000000000..9331e38e6 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/u.glif @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 71 + hstem 486 -20 + vstem 75 83 + vstem 380 82 + + + + pointTag + hintSet0002 + stems + + hstem -12 71 + hstem 486 -20 + vstem 75 83 + vstem 390.5 71.5 + + + + pointTag + hintSet0004 + stems + + hstem 21 -21 + hstem 486 -20 + vstem 75 83 + vstem 390.5 71.5 + + + + pointTag + hintSet0005 + stems + + hstem 21 -21 + hstem 486 -20 + vstem 75 83 + vstem 380 82 + + + + pointTag + hintSet0008 + stems + + hstem -12 71 + hstem 486 -20 + vstem 75 83 + vstem 380 82 + + + + id + w544l751787554121-12c224-12291-1233923c38476l38776l3940l4620l462486l380486l3801413348429959c249591855915898c158189l158486l75486 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/v.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/v.glif new file mode 100644 index 000000000..2e290ca60 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/v.glif @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 0 67 + hstem 486 -20 + vstem 12 443 + + + + id + w467l1870l2830l455486l374486l282210268162252113c23867l23467219113203162c189210l97486l12486 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/w.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/w.glif new file mode 100644 index 000000000..0a2099d33 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/w.glif @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 0 70 + hstem 401 85 + vstem 24 670 + + + + id + 2ea4b8a7d7ff3087d4b143fb61ccd52c7bbefea83f2621ea83acd290d608f5420f5901acf12c09a90c698706b59069e9a9cd491b25e1bb843870e856b5f96517 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/x.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/x.glif new file mode 100644 index 000000000..7360aaad0 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/x.glif @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 21 -21 + hstem 486 -20 + vstem 14 418 + + + + id + c60e1f49a95ba6875b061ad4c854be857877f9b16c1d60ca4ac6242f348cf7f442c9d38142b5acffaf12f7bdce56e5683edf22841a773b2d1e380160313d2687 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/y.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/y.glif new file mode 100644 index 000000000..f790db553 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/y.glif @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -209 68 + hstem 486 -20 + vstem 12 443 + + + + id + d14e2d31ca4e240c0b5c0130ab5367c49328b53fbb3dbe6843e4850856ec272cba1630455ed6acfb3f4185d8e3b4707964fae99e2d3bf183f41c17ea7db51987 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/z.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/z.glif new file mode 100644 index 000000000..190d76642 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/z.glif @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem 0 67 + hstem 419 67 + vstem 31 368 + + + + id + w425l310l3990l39967l13567l391442l391486l59486l59419l287419l3144 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/zero.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/zero.glif new file mode 100644 index 000000000..f56a61bf6 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs.com.adobe.type.processedglyphs/zero.glif @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + com.adobe.type.autohint.v2 + + hintSetList + + + pointTag + hintSet0000 + stems + + hstem -12 66 + hstem 584 66 + vstem 44 80 + vstem 373 80 + + + + id + d8c77fb9b3c0f9a266a500cc9a55d0b870a270cc6affab1f87696fc531c727c150c60060200509eb3bb0279a21a90b4245e39bb9992f482674cec535549888b2 + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/A_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/A_.glif new file mode 100644 index 000000000..56dbc8216 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/A_.glif @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/C_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/C_.glif new file mode 100644 index 000000000..a051143e7 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/C_.glif @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/D_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/D_.glif new file mode 100644 index 000000000..764059851 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/D_.glif @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/E_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/E_.glif new file mode 100644 index 000000000..b06bd2f68 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/E_.glif @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/F_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/F_.glif new file mode 100644 index 000000000..8e0247813 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/F_.glif @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/G_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/G_.glif new file mode 100644 index 000000000..157853617 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/G_.glif @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/H_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/H_.glif new file mode 100644 index 000000000..c045fdd5a --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/H_.glif @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/I_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/I_.glif new file mode 100644 index 000000000..6c293ec1f --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/I_.glif @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/J_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/J_.glif new file mode 100644 index 000000000..c3efea7a6 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/J_.glif @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/K_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/K_.glif new file mode 100644 index 000000000..b94b0c205 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/K_.glif @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/L_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/L_.glif new file mode 100644 index 000000000..246aec150 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/L_.glif @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/M_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/M_.glif new file mode 100644 index 000000000..202af9514 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/M_.glif @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/N_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/N_.glif new file mode 100644 index 000000000..48c6f6298 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/N_.glif @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/O_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/O_.glif new file mode 100644 index 000000000..f66477568 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/O_.glif @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/P_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/P_.glif new file mode 100644 index 000000000..c6dce3416 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/P_.glif @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/Q_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/Q_.glif new file mode 100644 index 000000000..90c1d4438 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/Q_.glif @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/R_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/R_.glif new file mode 100644 index 000000000..3b0d12ba7 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/R_.glif @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/S_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/S_.glif new file mode 100644 index 000000000..aba82a3d8 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/S_.glif @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/T_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/T_.glif new file mode 100644 index 000000000..6dc3a6efa --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/T_.glif @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/U_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/U_.glif new file mode 100644 index 000000000..4fc9735ee --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/U_.glif @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/V_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/V_.glif new file mode 100644 index 000000000..ae86fdba6 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/V_.glif @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/W_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/W_.glif new file mode 100644 index 000000000..7f5d981f8 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/W_.glif @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/X_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/X_.glif new file mode 100644 index 000000000..73572813e --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/X_.glif @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/Y_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/Y_.glif new file mode 100644 index 000000000..d38492faa --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/Y_.glif @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/Z_.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/Z_.glif new file mode 100644 index 000000000..6163ef88e --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/Z_.glif @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/_notdef.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/_notdef.glif new file mode 100644 index 000000000..0732d24b2 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/_notdef.glif @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/a.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/a.glif new file mode 100644 index 000000000..20d872e2f --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/a.glif @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/b.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/b.glif new file mode 100644 index 000000000..197fc0c2c --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/b.glif @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/c.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/c.glif new file mode 100644 index 000000000..e91743302 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/c.glif @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/contents.plist b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/contents.plist new file mode 100644 index 000000000..864544c60 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/contents.plist @@ -0,0 +1,132 @@ + + + + + .notdef + _notdef.glif + A + A_.glif + C + C_.glif + D + D_.glif + E + E_.glif + F + F_.glif + G + G_.glif + H + H_.glif + I + I_.glif + J + J_.glif + K + K_.glif + L + L_.glif + M + M_.glif + N + N_.glif + O + O_.glif + P + P_.glif + Q + Q_.glif + R + R_.glif + S + S_.glif + T + T_.glif + U + U_.glif + V + V_.glif + W + W_.glif + X + X_.glif + Y + Y_.glif + Z + Z_.glif + a + a.glif + b + b.glif + c + c.glif + d + d.glif + e + e.glif + eight + eight.glif + f + f.glif + five + five.glif + four + four.glif + g + g.glif + h + h.glif + i + i.glif + j + j.glif + k + k.glif + l + l.glif + m + m.glif + n + n.glif + nine + nine.glif + o + o.glif + one + one.glif + p + p.glif + q + q.glif + r + r.glif + s + s.glif + seven + seven.glif + six + six.glif + space + space.glif + t + t.glif + three + three.glif + two + two.glif + u + u.glif + v + v.glif + w + w.glif + x + x.glif + y + y.glif + z + z.glif + zero + zero.glif + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/d.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/d.glif new file mode 100644 index 000000000..94f8e71f8 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/d.glif @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/e.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/e.glif new file mode 100644 index 000000000..db2cbf13f --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/e.glif @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/eight.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/eight.glif new file mode 100644 index 000000000..a8e044728 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/eight.glif @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/f.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/f.glif new file mode 100644 index 000000000..7eaba0d14 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/f.glif @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/five.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/five.glif new file mode 100644 index 000000000..a9fc7d224 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/five.glif @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/four.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/four.glif new file mode 100644 index 000000000..469fc2eec --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/four.glif @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/g.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/g.glif new file mode 100644 index 000000000..c2f630c4a --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/g.glif @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/h.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/h.glif new file mode 100644 index 000000000..af38a9e62 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/h.glif @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/i.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/i.glif new file mode 100644 index 000000000..26694f39d --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/i.glif @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/j.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/j.glif new file mode 100644 index 000000000..049d87f9a --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/j.glif @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/k.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/k.glif new file mode 100644 index 000000000..96d5e8863 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/k.glif @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/l.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/l.glif new file mode 100644 index 000000000..4f867ae83 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/l.glif @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/layerinfo.plist b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/layerinfo.plist new file mode 100644 index 000000000..7cc969341 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/layerinfo.plist @@ -0,0 +1,14 @@ + + + + + color + 1,0.75,0,0.7 + lib + + org.unifiedfontobject.normalizer.imageReferences + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/m.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/m.glif new file mode 100644 index 000000000..183824c5a --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/m.glif @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/n.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/n.glif new file mode 100644 index 000000000..f8c1bcfab --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/n.glif @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/nine.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/nine.glif new file mode 100644 index 000000000..611ff422a --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/nine.glif @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/o.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/o.glif new file mode 100644 index 000000000..04eb4b2c8 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/o.glif @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/one.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/one.glif new file mode 100644 index 000000000..57fa5f5dd --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/one.glif @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/p.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/p.glif new file mode 100644 index 000000000..52939c6a6 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/p.glif @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/q.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/q.glif new file mode 100644 index 000000000..405bf97e2 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/q.glif @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/r.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/r.glif new file mode 100644 index 000000000..576ed615d --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/r.glif @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/s.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/s.glif new file mode 100644 index 000000000..d2d236bf7 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/s.glif @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/seven.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/seven.glif new file mode 100644 index 000000000..74534293f --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/seven.glif @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/six.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/six.glif new file mode 100644 index 000000000..fb35437dc --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/six.glif @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/space.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/space.glif new file mode 100644 index 000000000..5b98e781a --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/space.glif @@ -0,0 +1,5 @@ + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/t.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/t.glif new file mode 100644 index 000000000..ca8cca274 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/t.glif @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/three.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/three.glif new file mode 100644 index 000000000..8bf93f9e3 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/three.glif @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/two.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/two.glif new file mode 100644 index 000000000..239397fd2 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/two.glif @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/u.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/u.glif new file mode 100644 index 000000000..b2c6ee1f4 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/u.glif @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/v.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/v.glif new file mode 100644 index 000000000..f65f651f1 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/v.glif @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/w.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/w.glif new file mode 100644 index 000000000..4b46b8922 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/w.glif @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/x.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/x.glif new file mode 100644 index 000000000..6df2fab13 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/x.glif @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/y.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/y.glif new file mode 100644 index 000000000..02cc6d634 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/y.glif @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/z.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/z.glif new file mode 100644 index 000000000..4632d3a1d --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/z.glif @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/glyphs/zero.glif b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/zero.glif new file mode 100644 index 000000000..a75a769b7 --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/glyphs/zero.glif @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/layercontents.plist b/tests/tx_data/input/alt-missing-glif.ufo/layercontents.plist new file mode 100644 index 000000000..12949b6fb --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/layercontents.plist @@ -0,0 +1,14 @@ + + + + + + foreground + glyphs + + + com.adobe.type.processedglyphs + glyphs.com.adobe.type.processedglyphs + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/lib.plist b/tests/tx_data/input/alt-missing-glif.ufo/lib.plist new file mode 100644 index 000000000..2349d17ad --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/lib.plist @@ -0,0 +1,91 @@ + + + + + com.typemytype.robofont.compileSettings.autohint + + com.typemytype.robofont.compileSettings.checkOutlines + + com.typemytype.robofont.compileSettings.createDummyDSIG + + com.typemytype.robofont.compileSettings.decompose + + com.typemytype.robofont.compileSettings.generateFormat + 0 + com.typemytype.robofont.compileSettings.releaseMode + + com.typemytype.robofont.italicSlantOffset + 0 + com.typemytype.robofont.segmentType + curve + com.typemytype.robofont.shouldAddPointsInSplineConversion + 1 + public.glyphOrder + + .notdef + space + A + B + C + D + E + F + G + H + I + J + K + L + M + N + O + P + Q + R + S + T + U + V + W + X + Y + Z + a + b + c + d + e + f + g + h + i + j + k + l + m + n + o + p + q + r + s + t + u + v + w + x + y + z + zero + one + two + three + four + five + six + seven + eight + nine + + + diff --git a/tests/tx_data/input/alt-missing-glif.ufo/metainfo.plist b/tests/tx_data/input/alt-missing-glif.ufo/metainfo.plist new file mode 100644 index 000000000..555d9ce4c --- /dev/null +++ b/tests/tx_data/input/alt-missing-glif.ufo/metainfo.plist @@ -0,0 +1,10 @@ + + + + + creator + com.github.fonttools.ufoLib + formatVersion + 3 + + diff --git a/tests/tx_test.py b/tests/tx_test.py index ec02918fe..4cf027d8a 100644 --- a/tests/tx_test.py +++ b/tests/tx_test.py @@ -1648,3 +1648,23 @@ def test_bug1641_wrong_glyphorder(): expected_path = generate_ps_dump(expected_path) output_path = generate_ps_dump(output_path) assert differ([expected_path, output_path, '-s', PFA_SKIP[0]]) + + +def test_alt_missing_glyph(): + """ + Test case where alt layer has a glyph that default layer doesn't. + """ + msg = (b"tx: (ufr) Warning: glyph 'B' is in the processed layer" + b" but not in the default layer.") + input_path = get_input_path("alt-missing-glif.ufo") + expected_path = get_expected_path("alt-missing-glif.pfb") + output_path = get_temp_file_path() + arg = CMD + ['-s', '-e', '-a', '-o', 't1', '-f', + input_path, output_path] + stderr_path = runner(arg) + with open(stderr_path, 'rb') as f: + output = f.read() + assert msg in output + expected_path = generate_ps_dump(expected_path) + output_path = generate_ps_dump(output_path) + assert differ([expected_path, output_path])