Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
3
2øªja{ ã @ sŽ d dl mZmZ ddlmZ d dlZd dlZd dlZd dlZeje ƒZ
G dd„ deƒZG dd„ de
ƒZG d d
„ d
eƒZeejdd ƒƒdksŽt‚ejdƒjdks¦td
ƒ‚G dd„ deƒZG dd„ deƒZG dd„ deƒZdd„ Zdd„ Zdd„ Zdd„ ZG dd„ deƒZG dd„ deƒZG d d!„ d!eƒZeed"œZd#d$„ ZdIdJdKdLdMdNdOdPdQdRdSdTdUdVdWdXgZ dCdD„ Z!e!ƒ Z"G dEdF„ dFeƒZ#G dGdH„ dHeƒZ$dS )Yé )ÚTagÚ bytesjoiné )ÚDefaultTableNc @ s e Zd Zdd„ Zdd„ ZdS )ÚOverflowErrorRecordc C s6 |d | _ |d | _|d | _|d | _|d | _d S )Nr r é é é )Ú tableTypeÚLookupListIndexÚ
SubTableIndexÚitemNameÚ itemIndex)ÚselfZ
overflowTuple© r úB/tmp/pip-build-_d5lkt3n/fonttools/fontTools/ttLib/tables/otBase.pyÚ__init__ s
zOverflowErrorRecord.__init__c
C s$ t | jd| jd| jd| jd| jf ƒS )NzLookupIndex:zSubTableIndex:z ItemName:z
ItemIndex:)Ústrr
r r r
r )r r r r Ú__repr__ s zOverflowErrorRecord.__repr__N)Ú__name__Ú
__module__Ú__qualname__r r r r r r r
s r c @ s e Zd Zdd„ Zdd„ ZdS )ÚOTLOffsetOverflowErrorc C s
|| _ d S )N)Úvalue)r ÚoverflowErrorRecordr r r r s zOTLOffsetOverflowError.__init__c C s
t | jƒS )N)Úreprr )r r r r Ú__str__ s zOTLOffsetOverflowError.__str__N)r r r r r r r r r r s r c @ s0 e Zd ZdZdd„ Zdd„ Zdd„ Zdd „ Zd
S )ÚBaseTTXConverterzÉGeneric base class for TTX table converters. It functions as an
adapter between the TTX (ttLib actually) table model and the model
we use for OpenType tables, which is necessarily subtly different.
c C s@ ddl m} t|| jd�}t|| jƒ}|ƒ | _| jj||ƒ d S )Nr )ÚotTables)ÚtableTag)Ú r Ú
OTTableReaderr ÚgetattrÚtableÚ decompile)r ÚdataÚfontr ÚreaderÚ
tableClassr r r r$ $ s
zBaseTTXConverter.decompilec C sÒ d}xÈy"t | jd�}| jj||ƒ |jƒ S tk
rÈ } z„||jkrF‚ |j}tjd|ƒ |}d}|j dkr‚ddl
m} |||ƒ}nddl
m} |||ƒ}|s¸ddl
m} |||ƒ}|s¸‚ W Y dd}~X qX qW dS )a{ Create a top-level OTTableWriter for the GPOS/GSUB table.
Call the compile method for the the table
for each 'converter' record in the table converter list
call converter's write method for each item in the value.
- For simple items, the write method adds a string to the
writer's self.items list.
- For Struct/Table/Subtable items, it add first adds new writer to the
to the writer's self.items, then calls the item's compile method.
This creates a tree of writers, rooted at the GUSB/GPOS writer, with
each writer representing a table, and the writer.items list containing
the child data strings and writers.
call the getAllData method
call _doneWriting, which removes duplicates
call _gatherTables. This traverses the tables, adding unique occurences to a flat list of tables
Traverse the flat list of tables, calling getDataLength on each to update their position
Traverse the flat list of tables again, calling getData each get the data in the table, now that
pos's and offset are known.
If a lookup subtable overflows an offset, we have to start all over.
N)r z+Attempting to fix OTLOffsetOverflowError %sr r )ÚfixLookupOverFlows)ÚfixSubTableOverFlows)
Ú
OTTableWriterr r# ÚcompileÚ
getAllDatar r ÚlogÚinfor
r r) r* ) r r&