
    nj                         S SK r S SKJr  S SKJr  S SKJr  S SKJrJ	r	  S SK
JrJr  SS jr\ R                  4S jr  SS	\\   S
\\   S\\   4S jjr\S:X  a#  \ R&                  " \" \ R                  5      5        gg)    N)Optional)gdal)PathLikeOrStr)ColorTableLikeget_color_table)GetOutputDriverForopen_dsc                     U (       a  [         R                  O[         R                  n[        SUS9  [        SUS9  U (       a  S$ S$ )Nz1Usage: gdalattachpct.py [--help] [--help-general])filez4                        <pctfile> <infile> <outfile>   r   )sysstderrstdoutprint)isErrorfs     U/var/www/html/pdf-tiff/venv/lib/python3.13/site-packages/osgeo_utils/gdalattachpct.pyUsager   +   s6    

3::A	
=AF	
@qI1Q    c                 |   S nS nS nS n[         R                  " U 5      n U c  gSnU[        U 5      :  aa  X   nUS:X  a	  [        SS9$ US:X  d  US:X  a
  US-   nX   nO"Uc  X   nOUc  X   nOUc  X   nO
[        5       $ US-   nU[        U 5      :  a  Ma  [        U 5      S:  a
  [        5       $ [	        UUUUS	9u  pxU$ )
Nr      z--helpF)r   z-ofz-f   )src_filenamepct_filenamedst_filenamedriver_name)r   GeneralCmdLineProcessorlenr   doit)	argvr   r   r   r   iarg_dserrs	            r   mainr%   2   s    LLLK''-D| 	
A
c$i-g(?''E\SD[AA'K!7L!7L!7L 7NE- c$i-0 4y1}w!!!	HC Jr   r   r   r   c                 $   [        U5      nUb  Uc  [        SU5        g[        U 5      n[        R                  " S5      R                  SU5      nUR                  S5      R                  U5        UR                  S5      R                  [        R                  5        U(       d  [        U5      n[        R                  " U5      nUc  [        SU-  5        gUR                  5       S:X  a  UnOUR                  U=(       d    SU5      nS nS nUS4$ )	NzNo color table on file )Nr   MEMmemr   z"%s" driver not registered. r   )r   r   r	   r   GetDriverByName
CreateCopyGetRasterBandSetRasterColorTableSetRasterColorInterpretationGCI_PaletteIndexr   upper)	r   r   r   r   ctsrc_dsmem_ds
dst_driverout_dss	            r   r   r   b   s     
	&BBJ'6 \"F!!%(33E6BF //3
889N9NO (6%%k2J+k9:e#&&|'9r6BFF19r   __main__)T)NN)r   typingr   osgeor   osgeo_utils.auxiliary.baser   !osgeo_utils.auxiliary.color_tabler   r   osgeo_utils.auxiliary.utilr   r	   r   r    r%   strr   __name__exit r   r   <module>r@      s   D    4 M B hh -f -1!%	3>*3 =)3 #	3l zHHT#((^ r   