← Back
Editing: paragraph.cpython-311.pyc
� ~G�bx� � �. � d Z dZdZddlmZ ddlmZ ddlmZ ddl m Z mZ ddlm Z mZmZmZ dd lmZ dd lmZ ddlmZmZmZmZ ddlmZ dd lmZmZ ddl m!Z! ddl"m#Z# ddl$m%Z% ddl&m'Z'm(Z(m)Z)m*Z* ddl+m,Z,m-Z-m.Z. ddl/m0Z0 ddl1Z1ddl2m3Z3 ddl4Z4n # dZ4Y nxY wd�5 d� � Z6 e1j7 d e1j8 e6� � z � � j9 Z: e1j7 d e1j8 e6� � z � � j; Z<d�d�Z=d�d�Z9d� Z>d� Z?d� Z@ G d� d e%� � ZA G d!� d"e%� � ZBd#� ZCd�d%�ZDd&� ZEd'� ZFd�d(�ZGd�d)�ZHd�d*�ZId�d+�ZJd�d,�ZKd-� ZLd.� ZMd/� ZNd0ZOd1ZPd2� ZQd�d4�ZRd�d5�ZSd�d6�ZTd�d7�ZUd�d8�ZVd�d9�ZWd:� ZX G d;� d<eY� � ZZ G d=� d>eY� � Z[ G d?� d@eY� � Z\ G dA� dBe\� � Z] G dC� dDe]� � Z^ G dE� dFe\eZ� � Z_ G dG� dHe_� � Z` G dI� dJea� � Zbd�dK�Zc G dL� dMeY� � Zd G dN� dOede^� � Ze G dP� dQede_� � ZfdR� ZgdZhdSZidTZjdUZkdV� ZldW� Zmd�dX�ZndY� ZodZ� Zp e1j7 d[e1jq � � Zrd\� Zsd]� Ztd^Zud_Zvd`Zw e1j7 da� � Zx e1j7 db� � Zy e1j7 d�5 dceuddf� � � � Zz e1j7 d�5 dceweuddf� � � � Z{ e1j7 d�5 deewdff� � � � Z|dg� Z}dh� Z~di� Zdj� Z�e*fdk�Z� G dl� dmea� � Z� G dn� doe�� � Z� G dp� dqe�� � Z� G dr� dse�� � Z� G dt� duea� � Z� G dv� dwea� � Z� G dx� dye�e�� � Z� G dz� d{e�e�� � Z�e*fd|�Z�d�d~�Z�d� Z�d�� Z�d�� Z�d�� Z�d�� Z�d�� Z�d�� Z�d�� Z�d�� Z� e1j7 d�� � Z�d�� Z�d�� Z�d�� Z�d�� Z� G d�� d�ea� � Z�d�� Z�d�d��Z�d�� Z� G d�� d�e� � Z�e�d�k �r>d�� Z�d�� Z�d�� Z�d�d��Z�dd�l m�Z�m!Z! dd�l�m�Z� ddl�Z�e�j� dSd� Z�e�g k rd�gZ�e�fd��Z� e�� � Z�e�d� Z� e!d�e���� � Z�d�e�_� e�dS� � r�d�Z� e�e�e�� � Z� e�e�� � d�\ Z�Z�e��� e�e�� � \ Z�Z� e�e�� � e��9 e�e�� � Z�e�D ]%Z�e��� e�e�� � e�e�� � d�Z��& e�dT� � rA e�d�e�d� � � Z� e�e�� � e��� d�d�� � \ Z�Z� e�e�� � e�dU� � rCd�Z� e�e�e�d� � � Z� e�e�� � e��� d�d�� � \ Z�Z� e�e�� � e�d�� � r�d�Z�d�Z�d�Z� e�e�e�� � Z� e�e�� � e��� e�e�� � \ Z�Z� e�d�e�e�� � e�e�� � e��9 e�e�� � Z� e�e�d � � e�d �� e�e�� � \ Z�Z� e�d�e�e�� � e�e�d � � e�d�� � r\d� e�d�� � �d� e�d�� � �d��Z� e�e�e�d� � � Z� e�e�� � e��� d�d�� � \ Z�Z� e�e�� � e�d�� � rHd�D ]EZ� e�e�e�d� d��� � Z� e�e�� � e��� d�d�� � \ Z�Z� e�e�� � �F e�d�� � rCd�Z� e�e�e�d� � � Z� e�e�� � e��� d�d�� � \ Z�Z� e�e�� � e�d�� � r�d�Z� e�e�e�d� � � Z� e�e�� � e��� d�d�� � \ Z�Z� e�e�� � e��9 d�e�d�z � � Z� e� e�e�� � � � e�e�d � � e�e�d � � e�dS �� d�d�� � e�e�dS � � e�e�dS � � e�d�� � rUd�Z� e�e� e!d�e�d� e�æ � � � Z� e�e�� � e��� d�e�z d�z d�� � \ Z�Z� e�e�� � e�dŦ � rUd�Z� e�e� e!d�e�d� e�æ � � � Z� e�e�� � e��� d�e�z d�z d�� � \ Z�Z� e�e�� � e�dǦ � rNd�Z� e�e� e!d�d�dŬ˦ � �̦ � Z� e�e�� � e��� d�dΦ � \ Z�Z� e�e�� � dS dS dS )�)� Paragraph�cleanBlockQuotedText� ParaLines�FragLinez3.5.20z%The standard paragraph implementation� )� whitespace)�truth)�category)�stringWidth�getAscentDescent)� ParaParser�_PCT�_num�_re_us_value)�Flowable)�Color)�TA_LEFT�TA_RIGHT� TA_CENTER� TA_JUSTIFY)� normalizeTRBL)� wordSplit�ALL_CANNOT_START)�ParagraphStyle)�deepcopy)�ABag)� decimalSymbol�_FUZZ�paraFontSizeHeightOffset�hyphenationMinWordLength)� _className�isBytes�isStr)�sameFragN)� MethodType� )� � ��� ����� � u u u u u u u u u u u u u u u u u u z[%s]+z[%s]+$c �" � t | � � r| � � � } | ret j | � � }|r>t |� d� � � � ||� d� � z S t | d�� � S |r|S | S )z/convert a strike/underline distance to a number� � F)� allowRelative)r"