当前位置: 首页 > news >正文

自己做网站能赚钱么网站设计制作公司推荐

自己做网站能赚钱么,网站设计制作公司推荐,找别人做的网站怎样修改,挣钱网站一小时两百文章目录 简单的案例找到要修改的元素修改幻灯片中的文本代码使用示例 修改幻灯片的图片代码使用示例 删除幻灯片代码使用示例 获取PPT中所有的文本内容获取PPT中所有的图片总结 在上一篇中我们已经学会了如何从零开始生成PPT文件#xff0c;从零开始生成较为复杂的PPT是非常消… 文章目录 简单的案例找到要修改的元素修改幻灯片中的文本代码使用示例 修改幻灯片的图片代码使用示例 删除幻灯片代码使用示例 获取PPT中所有的文本内容获取PPT中所有的图片总结 在上一篇中我们已经学会了如何从零开始生成PPT文件从零开始生成较为复杂的PPT是非常消耗精力的一件事各种shape位置的摆放坐标填写过于繁琐而且很多样式诸如添加入场动画、特殊字体指定等功能原有的python-pptx框架并不支持 所以这一篇来了解如何修改一个已经设计好的PPT模板文件 简单的案例 我们先通过一个简单的案例来讲解基本的PPT操作 这里已经设计好了一张奖状样式的PPT模板只需要修改特定的文字这种重复劳动交给python-pptx就好 PPT模板如下 修改单张幻灯片 prs Presentation(G:/simple_ppt/奖状模板.pptx) slide_index 0 slide prs.slides[slide_index] for shape in slide.shapes:print(shape, shape.name)if shape.name student_name:shape.text 孙悟空if shape.name student_school:shape.text 花果山水帘洞if shape.name cert_date:current_date datetime.now()date_string current_date.strftime(%Y年%m月%d日)shape.text date_stringsave_ppt G:/simple_ppt/test/blog_test_template.pptx prs.save(save_ppt)执行后的效果 可以发现原来的占位内容已经被替换为我们指定的文本内容了 找到要修改的元素 要修改幻灯片中的内容那么首先就需要找到对应的shape控件大多数方案是根据匹配字符串内容来查找但这样的方案无法满足图片、视频等的查找还可能出现字符串冲突所以推荐使用“选择窗格”里的ID来查找 上面代码中的“student_name”、“student_school”、“cert_date”就是占位符用来定位要修改内容的地方相当于一个唯一标识 那么如何设置shape的ID呢 以WPS为例打开选择窗格的方式点击开始 - 选择 - 选择窗格如下所示 此时就会在右侧栏目中出现选择窗格显示当前幻灯片中所有对象元素的ID点击对应对象ID即可进行修改 在代码中通过shape.name进行匹配查找即可找到我们需要的shape 修改幻灯片中的文本 代码 上面例子中是通过shape.text的方式来修改文本的但这种方法有一个弊端就是PPT中原有的文本框格式被擦除所以这里推荐使用run文本段的方式修改文本 def replace_text(shape, content):if not shape.has_text_frame: # 判断是否有文本框returntf shape.text_framefor paragraph in tf.paragraphs:is_first_run Truefor run in paragraph.runs:if is_first_run:run.text contentis_first_run Falseelse:run.text 这个方法传入一个shape和文本内容再通过has_text_frame判断shape中是否存在文本框存在则进行更改文本操作同时规避了有的文本框中存在多个词组run的问题一个文本框中若存在多个词组只需修改第一个词组即可后续词组置空 使用示例 修改上例中的代码使用replace_text方法修改文本 prs Presentation(G:/simple_ppt/奖状模板.pptx) slide_index 0 slide prs.slides[slide_index] for shape in slide.shapes:print(shape, shape.name)if shape.name student_name:replace_text(shape, 孙悟空)if shape.name student_school:replace_text(shape, 花果山水帘洞)if shape.name cert_date:current_date datetime.now()date_string current_date.strftime(%Y年%m月%d日)replace_text(shape, date_string)save_ppt G:/simple_ppt/test/blog_test_template.pptx prs.save(save_ppt)生成的效果如下 可以很明显的看到时间那一栏已经和原始的模板字体效果一模一样了 修改幻灯片的图片 代码 通过以下代码可以替换幻灯片中的图片 def replace_picture(shape, slide, slide_index, img_path):sp_tree slide.shapes._spTreesp_tree.remove(shape._element)new_shape slide.shapes.add_picture(img_path, shape.left, shape.top, shape.width, shape.height)sp_tree.insert(slide_index, new_shape._element)代码中通过删除原有shape中的图片然后添加一个和原有shape大小位置一样的shape来指定图片最后通过insert将新图片的shape元素插入到老图片shape的元素中这样做是为了防止新添加的图片破坏层级关系导致新添加的图片覆盖掉幻灯片中原来的元素 使用示例 比如我们想替换掉背景可以先给模板中的背景图片指定ID为“slide_bg”然后调用replace_picture方法注意slide_index是当前要操作的幻灯片索引 if shape.name slide_bg:img_path G:/simple_ppt/res/picture_bg.pngreplace_picture(shape, slide, slide_index, img_path)效果如下 删除幻灯片 代码 通过以下代码可以删除一张幻灯片 def delete_slide(prs, slide_index):slides list(prs.slides._sldIdLst)prs.slides._sldIdLst.remove(slides[slide_index])传入一个Presentation对象和指定第几张幻灯片第一张索引从0开始 使用示例 prs Presentation(G:/simple_ppt/奖状模板.pptx) delete_slide(prs, 0) # 删除第一张幻灯片 save_ppt G:/simple_ppt/test/blog_test_template.pptx prs.save(save_ppt)注意事项删除幻灯片之后再通过add的方式添加幻灯片会报错因为原有的幻灯片列表总数已经改变所以删除幻灯片的操作最好是在pptx文件中所有其它操作都做完了再进行 获取PPT中所有的文本内容 有时候我们想取出PPT中所有的文本内容比如一些教学课件类的PPT里面的内容要一个一个手动拷贝可就太麻烦了这个也可以交给python-pptx来做 通过以下代码指定要读取的pptx文件路径打印ppt中含有的所有文本 prs Presentation(G:/simple_ppt/test/blog_test_template.pptx) text_content [] for slide in prs.slides:for shape in slide.shapes:if not shape.has_text_frame:continuefor paragraph in shape.text_frame.paragraphs:for run in paragraph.runs:text_content.append(run.text) print(全部文字, text_content)得到的结果 全部文字 [在2023-2024学年度第二学期期末考试中成绩优异特发此状以资鼓励。, 同学, , 学校, 2023年11月16日, , , , 孙悟空, 花果山水帘洞]获取PPT中所有的图片 通过python-pptx也可以获取PPT中全部的图片通过与获取全部文本同样的遍历方法找到所有图片类型的shape 可以通过shape.shape_type来判断当前的shape是否是图片类型 获取PPT中全部图片的代码 from pptx.enum.shapes import MSO_SHAPE_TYPEprs Presentation(G:/simple_ppt/test/blog_test_template.pptx) save_dir G:/simple_ppt/test/images for slide_no, slide in enumerate(prs.slides):for shape_no, shape in enumerate(slide.shapes):if shape.shape_type MSO_SHAPE_TYPE.PICTURE: # 查找图片类型image shape.imageimage_bytes image.blobimage_filename f{save_dir}/slide_{slide_no}_image_{shape_no}.pngwith open(image_filename, wb) as img_file:img_file.write(image_bytes)上面的代码中将会把PPT中所有图片保存到save_dir目录下 由于我们的模板文件中只有一张图片所有获取到的也就是一张 这里还有另一个方法如果只是想单纯的获取一个PPT文件的图片可以将文件的.pptx后缀改成.zip然后解压找到\ppt\media目录里面就是所有的图片文件 总结 通过阅读本篇文章可以掌握如何通过ID找到对应的shape控件了解了如何正确的修改幻灯片中的文本内容和图片资源以及操作删除幻灯片的方法还掌握了如何方便的取出PPT文件中所有的文本内容和图片资源 至此通过python-pptx框架从零开始生成PPT和操作已有PPT的功能都已介绍完毕后续文章将介绍使用python-pptx来做一些框架本身没有提供API进行支持的功能该如何实现
http://www.zqtcl.cn/news/942060/

相关文章:

  • 龙岩网站建设较好的公司做网站销售的换工作
  • 潞城建设局网站建设网站服务器自营方式的特点
  • 西安网站seo公司东莞市专注网站建设怎么样
  • dede游戏网站模板如何做盆栽蔬菜网站
  • 江都建设网站网站开发技术介绍
  • 网站介绍视频怎么做网站建设优化服务
  • 可以左右滑动的网站有口碑的盐城网站建设
  • 360报危险网站注册界面设计
  • 不用淘宝客api如何做网站北京移动官网网站建设
  • 手表哪个网站做的好河北网站备案流程
  • 凡科做的网站推效果网站做seo第一步
  • 建设在线观看视频网站免费企业网站建设免费
  • 网站开发需要后台吗哪家建站公司好
  • 个人建设网站论文网站视频怎么做的
  • 不同类型的购物网站汉川网站建设
  • 网站开发需求文档范文广州公司网站托管
  • 网站制作公司官网首页撸撸撸做最好的导航网站
  • 网站建设毕业设计综述centos 安装wordpress lnmp
  • 济宁专业做网站网站建设中 html
  • 中国排名高的购物网站最新发布的手机2022
  • 备案的网站名与公司名称出国用哪个地图app好
  • 网站建设工作室图片文章资讯类网站
  • 深圳自助建站系统网站题目有哪些
  • 郑州做网站kuihuakeji软文发布的平台与板块
  • 一那个网站可以做一建题安全文化企业示范企业评价标准
  • 网站没有关键词收录phpstudy配置网站
  • 返利网站怎么做的做网站推广见客户的话术
  • 两个人看的视频在线观看成都网站seo厂家
  • 做汽车配件出口用什么网站好些微信朋友圈营销技巧
  • 怎样建设传奇网站空间什么做电子书下载网站