• 崔永元骚扰范冰冰,怎么成了举报偷税漏税?他自己也不得不承认是在嫉妒之心嘛!(原创首发) 2020-01-17
  • 西部网(陕西新闻网)www.cnwest.com 2020-01-17
  • 统计局:一线城市房价同比持续下降 31个二线城市房价上涨 ——凤凰网房产重庆 2019-12-27
  • 官宣!女排四大功勋球员同时退役 没有两大前国手 2019-12-27
  • 徕卡M10限量版外观曝光-热门标签-华商网数码 2019-12-20
  • 70期:开创了中国人太空“开飞船”历史的刘旺 2019-12-03
  • 经济数字包括成本,经济数字好看,但其效益如何会是经济收入增加没有经济效益,那是成本增加比经济收入增加还多。 2019-11-30
  • 中方有力回击!美国多个行业喊痛:“加征关税就是对美国消费者征税” 2019-11-30
  • Le calendrier deux sessions de Xi Jinping 2019-11-28
  • 北京市房山区区长陈清拟任区委书记 2019-11-23
  • 【理上网来·辉煌十九大】德国北威州经济部长:十九大报告表明中国有能力为世界做出更多贡献 2019-11-23
  • 多座跨江跨海大桥相继建成 粤港澳大湾区城市群将形成一小时经济圈 2019-11-16
  • 光明日报:不存在的补脑保健品,为何总有人趋之若鹜 2019-11-13
  • [微笑]科普:房屋价值的构成中,土地及建安成本只占很小的一部分,真正值钱的是位置,因为位置决定了关联资源的多寡! 2019-11-01
  • 乡贤们,台州发“英雄帖”了 2019-11-01
  • 另港台神算:LaTeX 技巧 959:浮动体环境内部内容居中的设置方法

    最老版特码诗 www.kdltu.tw 这是我们 QQ 群(91940767)管理员 - 23637935 桔子大神的技巧总结,希望对大家有所帮助。作为文章、报告、书籍中常用的浮动体环境,如figure、table 环境,其环境中的内容一般采用居中布置,这项设置通常是在环境中内部通过文本对齐声明实现的,如:

       \begin{table}[htp]
        \centering
        ...
        \end{table}

    如果全文使用大量的图表浮动体,每个浮动体内部写一句\centering也是比较繁琐的,如果再要求表格内容采用小一号的字号\small,每个环境里需要输入的内容就又多了一点,那么有没有什么方法可以在撰写文档的时候省去这一条命令而同时实现内容居中,字体小一号呢?作为最直接的思路,可以定义新环境Figure、Table环境如下:

        \newenvironment{Table}[1][tbp]%
        {\begin{table}[#1]\centering\small}{\end{table}}
        \newenvironment{Figure}[1][tbp]%
        {\begin{figure}[#1]\centering\small}{\end{figure}}

    这种方法的缺点是需要自定义环境,一旦需要复制文本内容到其他文档中,需要把导言区内相应的重定义内容也复制过去,而且重定义的环境容易与\LaTeX 基础环境混淆。因此可以考虑对figure 和table 环境进行修改,最容易想到的方法是利用etoolbox宏包在环境中施加一个钩子,添加\centering\small命令,于是容易想到使用(以下仅以table环境举例,figure 环境类似):

        \usepackage{etoolbox} % in preamble
        \AtBeginEnvironment{table}{\centering\small}

    但是尝试一下,我们会发现实际并没有起任何作用。这是因为在article.cls(其他基础文档类类似,仅以其为例)中对table 的定义是:

        \newenvironment{table}
                       {\@float{table}}
                       {\[email protected]}

    显然,在使用了\AtBeginEnvironment{table}{\centering\small}一句后,table的定义变成了:

        \newenvironment{table}
                       {\centering\small\@float{table}}
                       {\[email protected]}

    \centering 出现太早,导致不能在table 环境中起作用。如果重新定义table(导言区内需要把下面这一句放在\makeatletter 与\makeatother之间):

        \renewenvironment{table}{\@float{table}\centering\small}{\[email protected]}

    或者使用xpatch宏包中的命令:

        \usepackage{xpatch} % in preamble
        \xapptocmd{\table}{\centering\small}{}{}

    来得到同样的效果,则浮动体table 环境自身的可选参数将无法使用,因为\centering\small占据了可选参数的位置,导致\LaTeX 认为使用默认可选参数,并将其后的[hbtp]等认作环境中的文本内容。如果需要保留浮动体参数的作用,则需要对更深层的内部命令进行修改或打补丁,参阅 https://tex.stackexchange.com/questions/95992/centering-all-tables-in-a-document-with-etoolbox/ 后,考虑对内部命令\@floatboxreset 补充如下:

        \usepackage{xpatch}    % in preamble
        \makeatletter
        \xpatchcmd\@floatboxreset{\normalsize}{\centering\small}{}{}
        \makeatother

    这样修改后,所有浮动体默认在环境中都是居中布置了,并且采用小一号的字号。

    分享到:
    未经允许不得转载:LaTeX 技巧 959:浮动体环境内部内容居中的设置方法
    已有 条意见

      最新文章

      加载中...
        本站提供专业LaTeX排版、咨询、定制服务,请点击下图咨询详情


        全国首个精品的LaTeX视频教程,大牛带着你入门,让LaTeX学习不再纠结,请点击下图咨询详情

        热门评论

          联系我们

          交流QQ群:91940767
          本站QQ号:343083553
          邮箱联系[email protected]
          淘宝店铺https://shop240512713.taobao.com/ 提供排版,模板定制,培训,图片处理,视频教程等LaTeX服务。

          关注我们微信公众号

          如果您投稿或者希望加入我们团队,请发送您的简历到[email protected]。
        • 崔永元骚扰范冰冰,怎么成了举报偷税漏税?他自己也不得不承认是在嫉妒之心嘛!(原创首发) 2020-01-17
        • 西部网(陕西新闻网)www.cnwest.com 2020-01-17
        • 统计局:一线城市房价同比持续下降 31个二线城市房价上涨 ——凤凰网房产重庆 2019-12-27
        • 官宣!女排四大功勋球员同时退役 没有两大前国手 2019-12-27
        • 徕卡M10限量版外观曝光-热门标签-华商网数码 2019-12-20
        • 70期:开创了中国人太空“开飞船”历史的刘旺 2019-12-03
        • 经济数字包括成本,经济数字好看,但其效益如何会是经济收入增加没有经济效益,那是成本增加比经济收入增加还多。 2019-11-30
        • 中方有力回击!美国多个行业喊痛:“加征关税就是对美国消费者征税” 2019-11-30
        • Le calendrier deux sessions de Xi Jinping 2019-11-28
        • 北京市房山区区长陈清拟任区委书记 2019-11-23
        • 【理上网来·辉煌十九大】德国北威州经济部长:十九大报告表明中国有能力为世界做出更多贡献 2019-11-23
        • 多座跨江跨海大桥相继建成 粤港澳大湾区城市群将形成一小时经济圈 2019-11-16
        • 光明日报:不存在的补脑保健品,为何总有人趋之若鹜 2019-11-13
        • [微笑]科普:房屋价值的构成中,土地及建安成本只占很小的一部分,真正值钱的是位置,因为位置决定了关联资源的多寡! 2019-11-01
        • 乡贤们,台州发“英雄帖”了 2019-11-01
        • 陕西十一选五玩法 3g体育比分直播中心 鼎汇娱乐网址 北京快三官网开奖结果 36选7最新开奖福建 大庆冠通手游下载 德甲赛程 江苏总进球数稳赚不赔 北单比分直播体育有料 怎么在普通麻将上作弊