首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    CoreText实现图文混排

    CoreText实现图文混排 系列文章: CoreText实现图文混排 CoreText实现图文混排之点击事件 CoreText实现图文混排之文字环绕及点击算法 CoreText实现图文混排之尺寸估算及文本选择...---- CoreText 最近公司做了一个项目,需要用到图文混排技术。于是呢就疯狂地在网上搜刮资料。 不过很不幸的是,百度的CoreText资料还是比较少滴,翻来覆去就那几个版本。...---- 老司机对CoreText实现图文混排的一些理解 老司机认为,图文混排中使用到的CoreText只是CoreText庞大体系中一个对富文本的增强的一部分。...---- 图片的代理的设置 /* 事实上,图文混排就是在要插入图片的位置插入一个富文本类型的占位符。...恩,说到这,图文混排的原理已经说完了。 先来绘制文本吧。

    2.2K20

    PPT图文混排三大常用技能

    今天跟大家聊一聊多图型PPT最常用的三大排版技巧 ——半透明遮罩、色块衬底、渐变过渡 图文混排技巧 ▽ 虽然PPT在图文排版方面与专业的修图软件PS比起来 要有些差距 但是排版毕竟是有章可循的创意行为...所有光圈都使用底图中最深的颜色 然后越往左的光圈透明度越大 缓慢过渡 感觉自己把握(看整体页面情况) 一直调整到交界处没有明显的直线过渡痕迹为止 这种技巧适用于半图型图文混排的情况 如果不设置渐变过渡...要么图片会挡文字(图片至于顶层) 要么图片会影响文字显示效果(文字至于图片顶层) 渐变过渡既可以防止图片干扰文字 又能给整个画面营造一种流畅的自然过渡效果 3 色块衬底 这种技巧也是应用于全图型图文混排技巧...色块要填充图片中的某一种背景(深)色 透明度接近50%左右(具体自己把握) 这样才能营造一种图文混排 文字与图片完美交融的气氛

    2.3K60

    文字排版入门—— 排版基础、CoreText和图文混排

    document attributes:整个文档(字符串)的属性,例如说我们常用的属性@{NSDocumentTypeDocumentAttribute:NSHTMLTextDocumentType},说明该字符是HTML...); } }; 4、CTRunDelegate CTRunDelegate是CTRun的delegate,我们可以手动设置CTRun的Ascent、Descent、Width属性,这是图文混排的基础...4、图文混排 图文混排是CTFrame、CTLine、CTRun的综合运用,原理是通过给NSAttributeString中添加一个空白字符,同时设置这个字符宽高为图片的size,最终排版的时候会预留出来一个与图片大小一致的空白区域...Fill灰色,Stroke红色,StrokeWidth=0 图文混排中底部绿色区域 图文混排其实是排版时插入一个特殊的空白字符,并设定字符的宽高为特定size,预留对应size的空白,再算出对应位置的坐标...总结 本文详细介绍了CoreText的基础概念以及实际运用,如果理解完CoreText框架和文字排版、图文混排等知识,那么已经足够支撑做起一个阅读器啦,恭喜你。

    9.1K32

    50行代码实现图文混排案例一

    图文混排在这两块中使用最为常见,我已经做好了demo:图文混排demo。 文中会讲述几点小技巧:图文混排、动态计算文字长度、图片拉伸方法。...以前的做法 在以前做图文混排的时候,经常使用OHAttributedLabel,后来苹果吸取了一些第三方的优点,对NSString做了扩展,作者也不再更新,推荐用系统的方法来实现图文混排。...现在的做法 苹果在iOS7中推出了一个新的类NSTextAttachment,它是做图文混排的利器,本文就是用这个类,只用50行代码实现文字与表情混排,当然也可以实现段落中的图文混排,与CoreText...先上效果图,聊天界面中的图文混排: 要实现这样的效果,code4app上似乎有很多种做法,还有一些奇葩的一个字符一个label,但是今天要讲述的做法,是目前为止我看到的最简单的做法了,只用一个UILabel

    1.5K10

    HarmonyOS 开发实践 —— 基于原生能力实现图文混排

    场景描述应用中基于原生能力实现图文混排效果有多个方案可实现,推荐使用Flex作父容器实现的方案(方案一),此方案优点在于节点数量少,结构简单。...方案一:基于 Flex 作父容器实现图文混排建议基于Flex容器作为父容器实现图文混排,优点在于减少节点数量。内部头像使用Image组件,中间部分使用Text文本组件,右边使用Text文本组件。...5,      top: 2,      bottom: 2    })    .position({ x: 280, y: 2 })}方案二:基于 RelativeContainer 相对布局实现图文混排效果使用此方案...150    })    .padding({      left: 5,      right: 5,      top: 2,      bottom: 2    })}方案三:基于线性布局实现图文混排效果基于线性布局实现图文混排时...StyledString实现图文混排效果,首先得让Text组件与StyledString绑定,绑定后即可使用StyledString设置文本样式以及对文本进行增、删、改、查等操作。

    49720

    精美图文混排卡片:左图标与右文本的完美结合

    图文混排卡片的设计原则 在设计图文混排卡片时,需要遵循以下设计原则: 简洁明了:卡片内容应简洁明了,避免信息过载。 视觉层次:通过大小、颜色、间距等元素建立清晰的视觉层次。...案例分析:图文混排卡片 本案例展示了如何创建一个包含左侧图标和右侧多行文本的卡片组件。...图文混排卡片的布局原理 图文混排卡片的布局基于Row组件的水平排列特性,将图标和文本水平排列在一起。 4.1 水平排列 Row组件默认将子组件水平排列,从左到右依次排列。...图文混排卡片的样式优化 为了提升图文混排卡片的视觉效果和用户体验,我们可以进行以下样式优化: 5.1 卡片容器样式 .padding(16) .backgroundColor(Color.White)...图文混排卡片组件的封装与复用 为了提高代码复用性,可以将图文混排卡片封装为一个独立的组件: @Component export struct IconTextCard { // 可自定义的属性

    97710
    领券