html程式碼處理(如圖片、字型大小)
對於html原始碼的處理,我是寫在一個NSString的類別中。
過濾html原始碼中的圖片
- (NSArray *)htmlStringFilterImages
{
NSMutableArray *resultArray = [NSMutableArray array];
if (self && 0 < self.length)
{
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"<(img|IMG)(.*?)(/>|></img>|>)" options:NSRegularExpressionAllowCommentsAndWhitespace error:nil];
NSArray *result = [regex matchesInString:self options:NSMatchingReportCompletion range:NSMakeRange(0, self.length)];
for (NSTextCheckingResult *item in result)
{
NSRange range = [item rangeAtIndex:0];
NSString *imgHtml = [self substringWithRange:range];
NSArray *tmpArray = nil;
if ([imgHtml rangeOfString:@"src=\""].location != NSNotFound)
{
tmpArray = [imgHtml componentsSeparatedByString:@"src=\""];
}
else if ([imgHtml rangeOfString:@"src="].location != NSNotFound)
{
tmpArray = [imgHtml componentsSeparatedByString:@"src="];
}
for (NSString *image in tmpArray)
{
if ([image hasPrefix:@"https://"] || [image hasPrefix:@"http://"])
{
NSRange range = [image rangeOfString:@".jpg"];
if (range.location == NSNotFound)
{
range = [image rangeOfString:@".png"];
}
if (range.location != NSNotFound)
{
NSString *url = [image substringToIndex:(range.location + range.length)];
[resultArray addObject:url];
}
}
}
}
}
return resultArray;
}
html原始碼中的圖片大小處理(JS)
/// 修改html中圖片大小的js程式碼
- (NSString *)htmlStringJSImageSizeWidth:(float)width
{
return [NSString stringWithFormat:@"var script = document.createElement('script');script.type = 'text/javascript';script.text = \"function ResizeImages() { var imgs = document.getElementsByTagName('img');for (var i = 0; i < imgs.length; i ++) {var img = imgs[i];img.style.width = %@ ;img.style.height = null;}}\";document.getElementsByTagName('head')[0].appendChild(script);", @(width)];
}
html原始碼中圖片大小自適應螢幕大小(非JS)
- (NSString *)htmlStringImageAutoSize
{
NSString *content = self;
if (content && 0 < content.length)
{
content = [content stringByReplacingOccurrencesOfString:@"<html>" withString:@""];
content = [content stringByReplacingOccurrencesOfString:@"</html>" withString:@""];
content = [content stringByReplacingOccurrencesOfString:@"<head>" withString:@""];
content = [content stringByReplacingOccurrencesOfString:@"</head>" withString:@""];
content = [content stringByReplacingOccurrencesOfString:@"</body>" withString:@""];
content = [content stringByReplacingOccurrencesOfString:@"</body>" withString:@""];
content = [NSString stringWithFormat:@"<html> <head> </head> <body> <script type='text/javascript'> window.onload = function(){ var $img = document.getElementsByTagName('img'); for(var p in $img){ $img[p].style.width = '100%%'; $img[p].style.height ='auto' } } </script>%@</body> </html>",content];
}
return content;
}
修改html原始碼中的字元字型大小
- (NSString *)htmlStringFontSize:(int)fontsize
{
NSString *content = self;
if (content && 0 < content.length)
{
content = [content stringByReplacingOccurrencesOfString:@"<html>" withString:@""];
content = [content stringByReplacingOccurrencesOfString:@"</html>" withString:@""];
content = [content stringByReplacingOccurrencesOfString:@"<head>" withString:@""];
content = [content stringByReplacingOccurrencesOfString:@"</head>" withString:@""];
content = [content stringByReplacingOccurrencesOfString:@"</body>" withString:@""];
content = [content stringByReplacingOccurrencesOfString:@"</body>" withString:@""];
content = [NSString stringWithFormat:@"<html> <head> <style type=\"text/css\"> body {margin:10;font-size: %@;} </style> </head> <body>%@</body> </html>", (self.htmlContantImage ? @(fontsize) : @(fontsize * 1.5)), content];
}
return content;
}
相關文章
- UIImage 圖片處理:截圖,縮放,設定大小,儲存UI
- YYImage 原始碼剖析:圖片處理技巧原始碼
- webpack圖片處理Web
- Thumbnailator處理圖片AI
- iOS 圖片處理iOS
- 圖片上傳及圖片處理
- 圖片尺寸大小自適應程式碼例項
- 按比例縮放圖片大小程式碼例項
- [程式碼片段]javascript檢查圖片大小和格式JavaScript
- Vue富文字帶圖片修改圖片大小自定義選擇項自定義字型Vue自定義字型
- Webpack乾貨系列 | Webpack5 怎麼處理字型圖示、圖片資源Web
- 【YLCircleImageView】圖片處理View
- 002.00 圖片處理
- 圖片處理--羽化特效特效
- SwiftUI Image 圖片處理SwiftUI
- Html 字型大小單位 px em ptHTML
- javascript檢測上傳圖片大小程式碼例項JavaScript
- DDGScreenShot —iOS 圖片處理--多圖片拼接 (swift)iOSSwift
- 處理圖片流資料
- Python批量處理圖片Python
- java 圖片水印處理類Java
- JavaScript WebGL 圖片透明處理JavaScriptWeb
- Golang 圖片處理 — image 庫Golang
- webpack(6)webpack處理圖片Web
- java thumbnailator 做圖片處理JavaAI
- photoshop常用圖片處理技巧
- webpack 圖片處理 loaderWeb
- OpenCv--圖片處理操作OpenCV
- jQuery限制上傳圖片格式和大小程式碼例項jQuery
- SwiftUI圖片處理(縮放、拼圖)SwiftUI
- html中中文字型的程式碼HTML
- android圖片處理,讓圖片變成圓形Android
- 動態等比例調整圖片大小的jQuery程式碼jQuery
- 圖片大小自適應手機螢幕程式碼例項
- jquery獲取圖片的實際尺寸大小程式碼例項jQuery
- 如何處理 Web 圖片優化?Web優化
- 分享一個圖片處理類
- Laravel 使用 Intervention/image 處理圖片Laravel