iOS 富文本

来源:http://www.cnblogs.com/lurenq/archive/2017/08/19/7395680.html
-Advertisement-
Play Games

// NSFontAttributeName 設置字體屬性,預設值:字體:Helvetica(Neue) 字型大小:12 // NSForegroundColorAttributeNam 設置字體顏色,取值為 UIColor對象,預設值為黑色 // NSBackgroundColorAttributeN ...



// NSFontAttributeName 設置字體屬性,預設值:字體:Helvetica(Neue) 字型大小:12 // NSForegroundColorAttributeNam 設置字體顏色,取值為 UIColor對象,預設值為黑色 // NSBackgroundColorAttributeName 設置字體所在區域背景顏色,取值為 UIColor對象,預設值為nil, 透明色 // NSLigatureAttributeName 設置連體屬性,取值為NSNumber 對象(整數),0 表示沒有連體字元,1 表示使用預設的連體字元 // NSKernAttributeName 設定字元間距,取值為 NSNumber 對象(整數),正值間距加寬,負值間距變窄 // NSStrikethroughStyleAttributeName 設置刪除線,取值為 NSNumber 對象(整數) // NSStrikethroughColorAttributeName 設置刪除線顏色,取值為 UIColor 對象,預設值為黑色 // NSUnderlineStyleAttributeName 設置下劃線,取值為 NSNumber 對象(整數),枚舉常量 NSUnderlineStyle中的值,與刪除線類似 // NSUnderlineColorAttributeName 設置下劃線顏色,取值為 UIColor 對象,預設值為黑色 // NSStrokeWidthAttributeName 設置筆畫寬度,取值為 NSNumber 對象(整數),負值填充效果,正值中空效果 // NSStrokeColorAttributeName 填充部分顏色,不是字體顏色,取值為 UIColor 對象 // NSShadowAttributeName 設置陰影屬性,取值為 NSShadow 對象 // NSTextEffectAttributeName 設置文本特殊效果,取值為 NSString 對象,目前只有圖版印刷效果可用: // NSBaselineOffsetAttributeName 設置基線偏移值,取值為 NSNumber (float),正值上偏,負值下偏 // NSObliquenessAttributeName 設置字形傾斜度,取值為 NSNumber (float),正值右傾,負值左傾 // NSExpansionAttributeName 設置文本橫向拉伸屬性,取值為 NSNumber (float),正值橫向拉伸文本,負值橫向壓縮文本 // NSWritingDirectionAttributeName 設置文字書寫方向,從左向右書寫或者從右向左書寫 // NSVerticalGlyphFormAttributeName 設置文字排版方向,取值為 NSNumber 對象(整數),0 表示橫排文本,1 表示豎排文本 // NSLinkAttributeName 設置鏈接屬性,點擊後調用瀏覽器打開指定URL地址 // NSAttachmentAttributeName 設置文本附件,取值為NSTextAttachment對象,常用於文字圖片混排 // NSParagraphStyleAttributeName 設置文本段落排版格式,取值為 NSParagraphStyle 對象
    [objc] view plain copy
  1. // 建一個小文本用來測試  
  2. UILabel * label = [[UILabel alloc] initWithFrame:[UIScreen mainScreen].bounds];  
  3. label.font = [UIFont systemFontOfSize:30];  
  4. label.textAlignment = NSTextAlignmentCenter;  
  5. label.numberOfLines = 0;  
[objc] view plain copy
  1. NSMutableAttributedString * attributedText = [[NSMutableAttributedString alloc] initWithString:@"測試文字:\n改變文字間距\n改變文字大小\n改變文字顏色\n改變文字背景\n添加文字刪除線\n添加文字下劃線\n設置字體傾斜\n設置文本扁平化"];  
  2. // 改變文字間距  
  3. [attributedText setAttributes:@{NSKernAttributeName:@10} range:NSMakeRange(6, 6)];  
  4. // 改變文字大小  
  5. [attributedText setAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:30]} range:NSMakeRange(13, 6)];  
  6. // 改變文字顏色  
  7. [attributedText setAttributes:@{NSForegroundColorAttributeName :[UIColor redColor]} range:NSMakeRange(20, 6)];  
  8. // 改變文字顏色  
  9. [attributedText setAttributes:@{NSBackgroundColorAttributeName: [UIColor yellowColor] } range:NSMakeRange(27, 6)];  
  10. // 添加文字刪除線 (NSUnderlineStyleSingle是個枚舉,詳細的自己試)  
  11. [attributedText setAttributes:@{NSStrikethroughStyleAttributeName:@(NSUnderlineStyleSingle) } range:NSMakeRange(34, 7)];  
  12. // 添加文字下劃線 (NSUnderlineStyleSingle是個枚舉,詳細的自己試)  
  13. [attributedText setAttributes:@{NSUnderlineStyleAttributeName:@(NSUnderlineStyleThick) } range:NSMakeRange(42, 7)];  
  14. // 設置字體傾斜  
  15. [attributedText setAttributes:@{NSObliquenessAttributeName:@0.5} range:NSMakeRange(50, 6)];  
  16. // 設置文本扁平化  
  17. [attributedText setAttributes:@{NSExpansionAttributeName:@0.4} range:NSMakeRange(57, 7)];
  18. // 字體加粗
  19. [attributedText setAttribute:NSExpansionAttributeName value:@(0.5) range:range];
  20. // 更改後的文字賦值  
[objc] view plain copy
  1. label.attributedText = attributedText;  
  2. [self.view addSubview:label];  

官方 API 參考鏈接: https://developer.apple.com/documentation/foundation/nsmutableattributedstring#//apple_ref/doc/uid/TP40003689

載入HTML標簽文本鏈接:

 http://blog.csdn.net/u010330109/article/details/51882122

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 轉載請標明出處:http://blog.csdn.net/zhaoyanjun6/article/details/75578109 本文出自 "【趙彥軍的博客】" 起因 最近在項目中遇到需要在界面上顯示一個本地的 GIF 圖。按照慣例我直接用了 Glide 框架來實現。 Glide 地址: http ...
  • 在瞭解`Masonry`框架之前,有必要先瞭解一下**自動佈局**的概念。在`iOS6`之前,`UI`佈局的方式是通過`frame`屬性和`Autoresizing`來完成的,而在`iOS6`之後,蘋果公司推出了`AutoLayout`的佈局方式,它是一種基於約束性的、描述性的佈局系統,尤其是蘋果的... ...
  • 在 Kotlin1.1.4版本 發佈後,原作者依據 Kotlin 新版本的一系列新特性和讀者的提問對幾個月前寫文章進行更新。這篇是重寫的KAD04。在這篇重寫的文章中,他涵蓋了所有KAE(1.1.4版本前後)可以完成的事情。現在你會喜歡在任何類(不只是activity, fragment 或 vie... ...
  • 1.應用 Assets.xcassets :用來存放圖像資源文件 好處: 自動管理圖片,如@1x,@2x圖片,使用的時候使用Asset 名字即可 管理應用的Icon和Default圖片,這個挺方便的,可以完全拋開以前規範命名如Icon.png,[email protected],Xcode會自動識別尺寸然後匹配 ...
  • Android在layout xml中使用ViewStub完成動態載入 一、Layout XML文件常見的兩種模塊載入方式 1、靜態載入:被載入的模塊和其它模塊載入的時間一樣。 <include layout="@layout/otherLayout"/> 2、動態載入:需要被載入的模塊初始時並沒有 ...
  • Android在layout xml中使用include完成靜態載入 include靜態載入:不僅可以載入佈局,還可以載入控制項(控制項標簽名要在最外層)include標簽中有個layout屬性就是專門用來載入的。 在Android的layout樣式定義中,可以使用xml文件方便的實現,有時候為了模塊的 ...
  • ImageSwitch圖像切換控制項 繼承ViewAnimator所以可以做動畫 繼承ViewGroup所以可以裝別的控制項,所以ImageSwitch裡面裝的就是image,不過要找個ImageView來呈現 所以ImageSwitch用一個圖像工廠來顯示ImageView對象圖片。 我們看setIm ...
  • MTK刷機工具Flash_Tool部分4032錯誤解決辦法 先說明一點,這個辦法不是萬能的,我測試解決了以下兩種情況下的4032: 1、本來正常的開發板,因為一次刷機失敗後就一直變4032了 2、新開發板,第一次刷機就4032(在硬體正常的情況下,如果硬體有問題的話,呵呵,老夫掐之一算,累死也刷不進 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...