
    i*                    X   S r SSKJr  SSKJrJr  SSKJr  SSKJ	r	J
r
  SSKJr  SSKJr  SSKJrJrJrJr  SS	KJrJrJrJr  SS
KJr  \(       a  SSKJrJr  SSKJr   " S S\5      r " S S\5      r  " S S\5      r! " S S\5      r" " S S\5      r# " S S\5      r$ " S S\5      r%g)z8Custom element classes related to run properties (font).    )annotations)TYPE_CHECKINGCallable)MSO_THEME_COLOR)WD_COLOR_INDEXWD_UNDERLINE)nsdecls)	parse_xml)ST_HexColorST_HpsMeasure	ST_StringST_VerticalAlignRun)BaseOxmlElementOptionalAttributeRequiredAttribute	ZeroOrOne)RGBColor)CT_OnOff	CT_String)Lengthc                  R    \ rS rSr% Sr\" S\5      rS\S'   \	" S\
5      rS\S'   S	rg
)CT_Color    zL`w:color` element, specifying the color of a font and perhaps other objects.w:valzRGBColor | strvalzw:themeColorzMSO_THEME_COLOR | None
themeColor N)__name__
__module____qualname____firstlineno____doc__r   r   r   __annotations__r   r   r   __static_attributes__r       S/var/www/html/banglarbhumi/venv/lib/python3.13/site-packages/docx/oxml/text/font.pyr   r       s(    V+G[ACA):>?)[J&[r%   r   c                  R    \ rS rSr% Sr\" S\5      rS\S'   \" S\5      r	S\S'   Sr
g	)
CT_Fonts'   zO`<w:rFonts>` element.

Specifies typeface name for the various language types.
zw:ascii
str | Noneasciizw:hAnsihAnsir   N)r   r   r    r!   r"   r   r   r+   r#   r,   r$   r   r%   r&   r(   r(   '   s+    
 *)Y?E:?))Y?E:?r%   r(   c                  6    \ rS rSr% Sr\" S\5      rS\S'   Sr	g)CT_Highlight1   zE`w:highlight` element, specifying font highlighting/background color.r   r   r   r   N)
r   r   r    r!   r"   r   r   r   r#   r$   r   r%   r&   r.   r.   1   s    O+G^DCDr%   r.   c                  6    \ rS rSr% Sr\" S\5      rS\S'   Sr	g)CT_HpsMeasure7   zJUsed for `<w:sz>` element and others, specifying font size in half-points.r   r   r   r   N)
r   r   r    r!   r"   r   r   r   r#   r$   r   r%   r&   r1   r1   7   s    T#G];C;r%   r1   c                     \ rS rSr% SrS\S'   S\S'   S\S'   S	\S
'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   Sr\" S\SS S9rS\S'   \" S \S!S S9r	S"\S#'   \" S$\S%S S9r
S&\S''   \" S(\S)S S9r\" S*\S+S S9r\" S,\S-S S9r\" S.\S/S S9r\" S0\S1S S9r\" S2\S3S S9r\" S4\S5S S9r\" S6\S7S S9r\" S8\S9S S9r\" S:\S;S S9r\" S<\S=S S9r\" S>\S?S S9r\" S@\SAS S9r\" SB\SCS S9r\" SD\SES S9r\" SF\SGS S9rSH\SI'   \" SJ\SKS S9rSL\SM'   \" SN\SOS S9rSP\SQ'   \" SR\SSS S9rST\SU'   \" SV\SWS S9rSX\SY'   \" SZ\S[S S9r\" S\\S]S S9r \" S^\S_S S9r!\" S`\SaS S9r"CSb r#\$SvSc j5       r%\%RL                  SwSd j5       r%\$SxSe j5       r'\'RL                  SySf j5       r'\$SxSg j5       r(\(RL                  SzSh j5       r(\$SxSi j5       r)\)RL                  S{Sj j5       r)\$S|Sk j5       r*\*RL                  S}Sl j5       r*\$S|Sm j5       r+\+RL                  S~Sn j5       r+\$SSo j5       r,\,RL                  SSp j5       r,\$SSq j5       r-\-RL                  SSr j5       r-SSs jr.SSt jr/Sur0g)CT_RPr=   z7`<w:rPr>` element, containing the properties for a run.zCallable[[], CT_Color]get_or_add_colorzCallable[[], CT_Highlight]get_or_add_highlightzCallable[[], CT_Fonts]get_or_add_rFontszCallable[[], CT_HpsMeasure]get_or_add_szz!Callable[[], CT_VerticalAlignRun]get_or_add_vertAlignzCallable[..., CT_String]_add_rStylezCallable[[], CT_Underline]_add_uzCallable[[], None]_remove_color_remove_highlight_remove_rFonts_remove_rStyle
_remove_sz	_remove_u_remove_vertAlign)'w:rStylew:rFontsw:bw:bCsw:iw:iCsw:capsw:smallCapsw:strike	w:dstrike	w:outlinew:shadoww:emboss	w:imprint	w:noProofw:snapToGridw:vanishw:webHiddenw:colorz	w:spacingzw:wzw:kernz
w:positionw:szzw:szCsw:highlightw:uzw:effectzw:bdrzw:shdz	w:fitTextw:vertAlignw:rtlw:cszw:emzw:langzw:eastAsianLayoutw:specVanishw:oMathrD      N)
successorszCT_String | NonerStylerE      zCT_Fonts | NonerFontsrF      zCT_OnOff | NonebrG      rH      rI      rJ      rK      rL   	   rM   
   rN      rO      rP      rQ      rR      rS      rT      rU      rV      zCT_Color | NonecolorrW      zCT_HpsMeasure | NoneszrX      zCT_Highlight | None	highlightrY      zCT_Underline | NoneurZ   r   zCT_VerticalAlignRun | None	vertAlignr[   !   r\   "   r]   &   r^   r)   c                0    [        S[        S5      -  5      $ )zGOverride metaclass method to set `w:color/@val` to RGB black on create.z<w:color %s w:val="000000"/>w)r
   r	   )selfs    r&   
_new_colorCT_RPr._new_color   s    7'#,FGGr%   c                :    U R                   nUc  gUR                  $ )zlValue of `./w:highlight/@val`.

Specifies font's highlight color, or `None` if the text is not highlighted.
N)rz   r   )r   rz   s     r&   highlight_valCT_RPr.highlight_val   s      NN	}}r%   c                X    Uc  U R                  5         g U R                  5       nXl        g N)r>   r7   r   )r   valuerz   s      r&   r   r      s)    =""$--/	r%   c                :    U R                   nUc  gUR                  $ )zThe value of `w:rFonts/@w:ascii` or |None| if not present.

Represents the assigned typeface name. The rFonts element also specifies other
special-case typeface names; this method handles the case where just the common
name is required.
N)rc   r+   r   rc   s     r&   rFonts_asciiCT_RPr.rFonts_ascii   s     >||r%   c                X    Uc  U R                  5         g U R                  5       nXl        g r   )r?   r8   r+   r   r   rc   s      r&   r   r      s)    =!'')r%   c                :    U R                   nUc  gUR                  $ )z:The value of `w:rFonts/@w:hAnsi` or |None| if not present.N)rc   r,   r   s     r&   rFonts_hAnsiCT_RPr.rFonts_hAnsi   s     >||r%   c                R    Uc  U R                   c  g U R                  5       nXl        g r   )rc   r8   r,   r   s      r&   r   r      s&    =T[[0'')r%   c                :    U R                   nUc  gUR                  $ )zBString in `./w:rStyle/@val`, or None if `w:rStyle` is not present.N)ra   r   )r   ra   s     r&   styleCT_RPr.style   s     >zzr%   c                    Uc  U R                  5         gU R                  c  U R                  US9  gXR                  l        g)zSet `./w:rStyle/@val` to `style`, adding the `w:rStyle` element if necessary.

If `style` is |None|, remove `w:rStyle` element if present.
N)r   )r@   ra   r;   r   )r   r   s     r&   r   r      s9     =![[ '#KKOr%   c                \    U R                   nUc  gUR                  [        R                  :H  $ )z|True| if `./w:vertAlign/@w:val` is "subscript".

|False| if `w:vertAlign/@w:val` contains any other value. |None| if
`w:vertAlign` is not present.
N)r}   r   r   	SUBSCRIPTr   r}   s     r&   	subscriptCT_RPr.subscript   s,     NN	}} 3 = ===r%   c                   Uc  U R                  5         g [        U5      SL a$  [        R                  U R	                  5       l        g U R                  b:  U R                  R
                  [        R                  :X  a  U R                  5         g g g NT)rC   boolr   r   r:   r   r}   r   r   s     r&   r   r      sm    =""$%[D .A.K.KD%%'+^^'DNN,>,>BUB_B_,_""$ -`'r%   c                \    U R                   nUc  gUR                  [        R                  :H  $ )z|True| if `w:vertAlign/@w:val` is 'superscript'.

|False| if `w:vertAlign/@w:val` contains any other value. |None| if
`w:vertAlign` is not present.
N)r}   r   r   SUPERSCRIPTr   s     r&   superscriptCT_RPr.superscript   s,     NN	}} 3 ? ???r%   c                   Uc  U R                  5         g [        U5      SL a$  [        R                  U R	                  5       l        g U R                  b:  U R                  R
                  [        R                  :X  a  U R                  5         g g g r   )rC   r   r   r   r:   r   r}   r   s     r&   r   r     sm    =""$%[D .A.M.MD%%'+^^'DNN,>,>BUBaBa,a""$ -b'r%   c                :    U R                   nUc  gUR                  $ )z4The value of `w:sz/@w:val` or |None| if not present.N)rx   r   )r   rx   s     r&   sz_valCT_RPr.sz_val  s     WW:vvr%   c                X    Uc  U R                  5         g U R                  5       nXl        g r   )rA   r9   r   )r   r   rx   s      r&   r   r     s'    =OO!r%   c                :    U R                   nUc  gUR                  $ )zValue of `w:u/@val`, or None if not present.

Values `WD_UNDERLINE.SINGLE` and `WD_UNDERLINE.NONE` are mapped to `True` and
`False` respectively.
N)r|   r   )r   r|   s     r&   u_valCT_RPr.u_val!  s     FF9uur%   c                T    U R                  5         Ub  XR                  5       l        g g r   )rB   r<   r   r   s     r&   r   r   -  s#     %KKM r%   c                8    [        X5      nUc  gUR                  $ )zIValue of boolean child with `name`, e.g. "w:b", "w:i", and "w:smallCaps".Ngetattrr   )r   nameelements      r&   _get_bool_valCT_RPr._get_bool_val3  s    $%?{{r%   c                h    Uc  [        U SU-  5      " 5         g [        U SU-  5      " 5       nX#l        g )Nz
_remove_%szget_or_add_%sr   )r   r   r   r   s       r&   _set_bool_valCT_RPr._set_bool_val:  s5    =D,-.0$$ 679r%   r   )returnWD_COLOR_INDEX | None)r   r   r   None)r   r*   )r   r*   r   r   )r   r*   )r   r*   r   r   )r   bool | None)r   r   r   r   )r   r   )r   Length | None)r   r   )r   WD_UNDERLINE | None)r   r   )r   strr   r   )r   r   r   r   )1r   r   r    r!   r"   r#   _tag_seqr   ra   rc   re   bCsiiCscaps	smallCapsstrikedstrikeoutlineshadowembossimprintnoProof
snapToGridvanish	webHiddenrv   rx   rz   r|   r}   rtlcs
specVanishoMathr   propertyr   setterr   r   r   r   r   r   r   r   r   r$   r   r%   r&   r4   r4   =   s   A,,44--..;;))&&%%))&&&&""!!))(HR  )MFM'
x|LFOL"5Xab\BAB
G
5C%HQRL1A
G
5CX(12,7D-HQRLAIzhqrl;F>G>Gzhrsm<Fzhrsm<F>G>G>hrsmDJzhrsm<F-HRSMBI&yXbc]KE?K(HRSMJBJ%.}RTRU%WI"W&u"#GAG,5mPXY[Y\P],^I)^
G
6C	6hrsm	4B>hrsmDJiHRSM:EH     
 
         \\
$ 
$ 	> 	> % % 	@ 	@ % %   ]]  	 	 \\& &
r%   r4   c                  6    \ rS rSr% Sr\" S\5      rS\S'   Sr	g)CT_UnderlineiB  z<`<w:u>` element, specifying the underlining style for a run.r   r   r   r   N)
r   r   r    r!   r"   r   r   r   r#   r$   r   r%   r&   r   r   B  s    F0,GC	Gr%   r   c                  6    \ rS rSr% Sr\" S\5      rS\S'   Sr	g)CT_VerticalAlignRuniH  z=`<w:vertAlign>` element, specifying subscript or superscript.r   r   r   r   N)
r   r   r    r!   r"   r   r   r   r#   r$   r   r%   r&   r   r   H  s    G *=>C>r%   r   N)&r"   
__future__r   typingr   r   docx.enum.dmlr   docx.enum.textr   r   docx.oxml.nsr	   docx.oxml.parserr
   docx.oxml.simpletypesr   r   r   r   docx.oxml.xmlchemyr   r   r   r   docx.sharedr   docx.oxml.sharedr   r   r   r   r(   r.   r1   r4   r   r   r   r%   r&   <module>r      s    ? " * ) 7   &   !4"\ \@ @E? E<O <B_ BJH? H?/ ?r%   