zoukankan      html  css  js  c++  java
  • NLPCC论文LaTeX封面生成代码

    先生成该表格:

    # In[1]
    import pandas as pd
    import os
    
    df = pd.read_excel('list.xlsx')
    
    ids = df['Pap ID'].to_list()
    lens = df['Page Length'].to_list()
    titles = df['Pap Title '].to_list()
    cor_authors = df['Corresponding Author'].to_list()
    authors = df['Authors'].to_list()
    emails = df['Corresponding Author Email'].to_list()
    affs = df['Affiliation'].to_list()
    affs
    
    # In[1]
    f = open('latex_mode.txt', 'w+', encoding='utf-8')
    Name = 'LNAI'
    page = 12430
    cor_mod = '{0}\thanks{{\mbox{{Corresponding author}}}}'
    latex_mod = """setcounter{{page}}{{{0}}}
    \title{{{1}}}
    \author{{{2}}}
    \tocauthor{{{3}}}
    {4}
    \institute{{{5}\\
    	\email{{{6}}}}}
    \maketitle
    \clearpage
    """
    latex_mod
    
    # In[3]
    import re 
    all_latexs = ""
    cur_length = 1
    for id, length, title, author, cor_author, aff, email in zip(ids, lens, titles, authors, cor_authors, affs, emails):
        id_name = '{0:05d}'.format(cur_length)
        cur_page = int(id_name)
        # print('cur_page: ', cur_page, cur_page % 800, cur_page % 801)
        if cur_page % 800 == 0 or cur_page % 801 == 0 % cur_page % 802 == 0:
            page += 1
        cur_name = Name + str(page) + id_name
        print(cur_name)
        # os.rename(str(id), cur_name)
        print('==============latex================')
        print(title, author,  cor_author, aff, email)
        #### title ####
        ###############
        #### author ####
        author_li = re.split(',|and', author)
        new_author = []
        for li in author_li:
            li = li.strip()
            if li == cor_author:
                li = cor_mod.format(li)
            new_author.append(li)
        new_author = ' \and '.join(new_author)
        # print(new_author)
        ################
        #### tocauthor ####
        tocauthor = author
        ####################
        ###### index #######
        indexs = ""
        for li in author_li:
            li = li.strip().split(' ')
            if len(li) == 2:
                idx = "index{{{0}, {1}}}".format(li[1], li[0])
                indexs += idx + '
    '
        ####################
        ###### aff #######
        first_aff = aff.split('
    ')[0]
        ###################
        ###### email ######
        ###################
        print(cur_length)
        cur_latex = latex_mod.format(cur_length, title, 
                                    new_author, tocauthor, 
                                    indexs[:-1], first_aff, email)
        print(cur_latex)
    
        # 更新 页码
        cur_length += length
        all_latexs = all_latexs + cur_latex + '
    '
    
    print(all_latexs)
    # %%
    f.write(all_latexs)
    f.close()
    

    将生成代码复制到LaTeX封面模板中,生成如:

  • 相关阅读:
    linux网络编程 inet_aton(); inet_aton; inet_addr;
    linux网络编程 ntohs, ntohl, htons,htonl inet_aton等详解
    linux C++ scandir 的使用
    linux 多线程编程-读写者问题
    为什么修改头文件make不重新编译
    syslog(),closelog()与openlog()--日志操作函数
    VC:CString用法整理(转载)
    VC6.0实用小技巧
    HTml js 生成图片
    C++中两个类相互包含引用问题
  • 原文地址:https://www.cnblogs.com/douzujun/p/15170756.html
Copyright © 2011-2022 走看看