Swift页面添加水印

本文主要讨论的是给图片或者视图添加全屏水印。比较常见的是添加单个水印,这个比较好处理,网络上也有很多参考的方法。本文实现的是铺满的全屏水印,具体参考效果如下:

实现思路:

1、根据水印文本以及相应样式生成水印图片,水印图大小根据文本计算而来

2、生成需要铺满水印图片或视图 的空白底图

3、采用贴地砖的方式将水印图从左至右,从上至下贴在底图上

具体实现参考代码如下:

/// 创建全铺图片水印/// - Parameters:///   - strTxt: 水印文本///   - fsize: 全铺的尺寸///   - corners: 圆角信息(可选)///   - r: 圆角值(可选)/// - Returns: UIImagefunc createWatermarkFor(Text strTxt:String,andFullSize fsize:CGSize,andCorners corners:UIRectCorner? = nil,withRadius r:CGFloat? = nil) -> UIImage {//[S] 1、设置水印样式let paragraphStyle:NSMutableParagraphStyle = NSMutableParagraphStyle()paragraphStyle.lin

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/75389.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot【基础篇】

一、快速上手 按照要求,左侧选择web,然后在中间选择Spring Web即可,选完右侧就出现了新的内容项,这就表示勾选成功了 关注:此处选择的SpringBoot的版本使用默认的就可以了,需要说一点,SpringBo…

PHPWord 模板输出checkbox复选框和checked已勾选状态,以及 模板替换时数据如何分行

PHPWord 模板输出checkbox复选框和checked已勾选状态,以及 模板替换时数据如何分行 期望目标 和 模板配置复选框代码数据分行显示在使用PHPWORD模板替换时,经常会有 动态渲染选择项 和 选择项需要被勾选的要求,以及动态数据分行显示等要求。 本文根据 空复选框、勾选复选框…

vim 替换命令 “:s“

vim 替换命令 ":s" 1. 替换光标所在行的第一个匹配串2. 替换光标所在行全部匹配项3. 替换两行之间每行的第一个匹配项4. 替换两行之间的全部匹配项5. 替换整个文件中的每个匹配串6. 查找整个文件中的每个匹配串并询问是否替换 1. 替换光标所在行的第一个匹配串 命令…

[Linux 基础] linux基础指令(1)

文章目录 1、Linux下基本指令1.ls指令2.pwd指令3.cd指令4.touch指令5.mkdir指令6.rmdir指令 && rm指令7.man指令8.cp指令9.mv指令10.cat指令11.more指令12.less指令 Linux学习笔记从今天开始不断更新了。第一篇我们从基础指令开始学起。 1、Linux下基本指令 好多人都说…

创建开机自启的脚本

在启动许多ros节点时有多种方式,我推荐使用launch来启动所有的节点,这也是一种规范的方式。以后会慢慢向这个方向靠。 除此之外还可以通过创建的脚本来启动: 脚本位置不限,只需要: sudo gedit xxx.sh在里面添加相应的…

Jetsonnano B01 笔记2:GPIO库-Pycharm远程调试-点灯

今日继续我的Jetsonnano 学习之路,今日主要学习使用Pycharm远程调试Jetsonnano以及驱动使用Jetsonnano的GPIO库,最终尝试使用jetson点亮第一个LED。 本文搬运成分较多,因为Jetsonnano资料比较少,做这些笔记方便自己以及大家查阅。 目录 一…

第13章_瑞萨MCU零基础入门系列教程之Common SPI

本教程基于韦东山百问网出的 DShanMCU-RA6M5开发板 进行编写,需要的同学可以在这里获取: https://item.taobao.com/item.htm?id728461040949 配套资料获取:https://renesas-docs.100ask.net 瑞萨MCU零基础入门系列教程汇总: ht…

QT(9.4)tcp通信,数据库,opencv,

作业&#xff1a; 1.服务器 头文件&#xff1a; #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTcpSocket>//客户端头文件 #include <QMessageBox>//消息对话框头文件 #include <QTcpServer>//服务器头文件 #include <list>…

Linux修复损坏的文件系统

如何判断文件系统是否损坏 当文件系统受损时&#xff0c;将会出现一些明显的迹象。例如&#xff0c;文件或文件夹无法访问、文件大小异常、系统启动慢或无法启动等。此外&#xff0c;系统也可能发出一些错误信息&#xff0c;如"Input/output error"、"Filesyst…

Acwing算法心得——现代艺术(统计遍历)

大家好&#xff0c;我是晴天学长&#xff0c;先用两个一维数组维护数据&#xff0c;再统计遍历二维数组&#xff0c;需要的小伙伴请自取哦&#xff01;&#x1f4aa;&#x1f4aa;&#x1f4aa; 1 &#xff09;现代艺术 2) .算法思路 现代艺术 1.两个数组维护行和列 2.遍历数组…

Oracle LiveLabs实验:探索 Oracle 23c 数据库的强大功能 - 架构权限和无锁预留

使用申请地址见这里。 实验帮助见这里。 7小时45分 欢迎来到 Live Labs&#xff0c;我们在这里探索并深入研究 Oracle 数据库管理的迷人领域&#xff01; 在今天的会议中&#xff0c;我们将重点讨论两个有趣的主题&#xff1a;Oracle 架构级权限和无锁列保留。 架构级别权限…

Python-函数

str1 "asdasdasd" str2 "asfgrbbtnyjyuktuyjyder" str3 "adsf3t4tykuikjdrg"def my_len(str):count 0for i in str:count 1print(count)my_len(str1) my_len(str2) my_len(str3) 函数的定义&#xff1a; def 函数名(传入参数)&#xff1a;…

偷录的录音、视频能否成为“呈堂证供”?

很多人都说偷录的录音是无效的&#xff0c;其实是对法条的不及时跟新&#xff0c;因为《最高人民法院关于未经对方当事人同意私自录音取得的资料能否作为证据使用问题的批复》&#xff08;法复〔&#xff11;&#xff19;&#xff19;&#xff15;〕&#xff12;号&#xff09;…

AI在商业领域的多重应用:优化运营与提升客户体验

在商业领域&#xff0c;人工智能&#xff08;AI&#xff09;可以用于多种方式&#xff0c;从优化运营到改进客户体验。以下是一些使用AI的商业用例以及如何在商业环境中有效地使用AI的一些建议&#xff1a; 数据分析和决策支持&#xff1a; 使用AI算法来分析大规模数据集&#…

Spring框架简介

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

简明SQL条件查询指南:掌握WHERE实现数据筛选

条件查询是用于从数据库中根据特定条件筛选数据行的一种方式&#xff0c;它避免了检索整个表中的数据。通常&#xff0c;使用 WHERE 子句来定义过滤条件&#xff0c;只有符合这些条件的数据行才会被返回。 SQL中的运算符有&#xff1a;、!、<、> 等&#xff0c;用于进行…

小程序当前页面栈以及跳转

1.调用页面栈刷新接口 let pages getCurrentPages(); //当前页面栈 if (pages.length > 1) { let beforePage pages[pages.length - 2]; //获取上一个页面实例对象 beforePage.$vm.getActivityLi…

「网页开发|前端开发|Vue」06 公共组件与嵌套路由:让每一个页面都平等地拥有导航栏

本文主要介绍在多个页面存在相同部分时&#xff0c;如何提取公共组件然后在多个页面中导入组件重复使用来减少重复代码。在这基础上介绍了通过嵌套路由的方式来避免页面较多或公共部分较多的情况下&#xff0c;避免不断手动导入公共组件的麻烦&#xff0c;并且加快页面跳转的速…

KT142C-sop16语音芯片ic的串口指令详细说明_默认9600指令可设

3.1 通讯格式 支持异步串口通讯模式,通过串口接受上位机发送的命令 通讯标准:9600 bps --- 可以发送指令修改&#xff0c;并且记忆&#xff0c;详见3.4.5 数据位 :8 停止位 :1 校验位 :none 流控制 :none 格式&#xff1a;$S VER Len CMD Feedback para1 …

PIGOSS BSM:网络大屏展现功能与特色全面解析

导语 PIGOSS BSM是一款强大的IT运维监控工具&#xff0c;提供了丰富的功能和特色。其中的“网络大屏”模块是其核心功能之一&#xff0c;能够以直观、全面的方式展示网络设备的状态信息和各种关键指标。本文将详细介绍PIGOSS BSM网络大屏的功能及特色&#xff0c;让您全面了解其…