From 7b02207537d35bfa1714bf8beafc921f717d100a Mon Sep 17 00:00:00 2001
From: 单军华
Date: Wed, 11 Jul 2018 10:47:42 +0800
Subject: [PATCH] 首次上传

---
 screendisplay/Pods/YYText/YYText/Utility/UIPasteboard+YYText.m |  146 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 146 insertions(+), 0 deletions(-)

diff --git a/screendisplay/Pods/YYText/YYText/Utility/UIPasteboard+YYText.m b/screendisplay/Pods/YYText/YYText/Utility/UIPasteboard+YYText.m
new file mode 100755
index 0000000..29a86f2
--- /dev/null
+++ b/screendisplay/Pods/YYText/YYText/Utility/UIPasteboard+YYText.m
@@ -0,0 +1,146 @@
+//
+//  UIPasteboard+YYText.m
+//  YYText <https://github.com/ibireme/YYText>
+//
+//  Created by ibireme on 15/4/2.
+//  Copyright (c) 2015 ibireme.
+//
+//  This source code is licensed under the MIT-style license found in the
+//  LICENSE file in the root directory of this source tree.
+//
+
+#import "UIPasteboard+YYText.h"
+#import "NSAttributedString+YYText.h"
+#import <MobileCoreServices/MobileCoreServices.h>
+
+
+#if __has_include("YYImage.h")
+#import "YYImage.h"
+#define YYTextAnimatedImageAvailable 1
+#elif __has_include(<YYImage/YYImage.h>)
+#import <YYImage/YYImage.h>
+#define YYTextAnimatedImageAvailable 1
+#elif __has_include(<YYWebImage/YYImage.h>)
+#import <YYWebImage/YYImage.h>
+#define YYTextAnimatedImageAvailable 1
+#else
+#define YYTextAnimatedImageAvailable 0
+#endif
+
+
+// Dummy class for category
+@interface UIPasteboard_YYText : NSObject @end
+@implementation UIPasteboard_YYText @end
+
+
+NSString *const YYTextPasteboardTypeAttributedString = @"com.ibireme.NSAttributedString";
+NSString *const YYTextUTTypeWEBP = @"com.google.webp";
+
+@implementation UIPasteboard (YYText)
+
+
+- (void)setYy_PNGData:(NSData *)PNGData {
+    [self setData:PNGData forPasteboardType:(id)kUTTypePNG];
+}
+
+- (NSData *)yy_PNGData {
+    return [self dataForPasteboardType:(id)kUTTypePNG];
+}
+
+- (void)setYy_JPEGData:(NSData *)JPEGData {
+    [self setData:JPEGData forPasteboardType:(id)kUTTypeJPEG];
+}
+
+- (NSData *)yy_JPEGData {
+    return [self dataForPasteboardType:(id)kUTTypeJPEG];
+}
+
+- (void)setYy_GIFData:(NSData *)GIFData {
+    [self setData:GIFData forPasteboardType:(id)kUTTypeGIF];
+}
+
+- (NSData *)yy_GIFData {
+    return [self dataForPasteboardType:(id)kUTTypeGIF];
+}
+
+- (void)setYy_WEBPData:(NSData *)WEBPData {
+    [self setData:WEBPData forPasteboardType:YYTextUTTypeWEBP];
+}
+
+- (NSData *)yy_WEBPData {
+    return [self dataForPasteboardType:YYTextUTTypeWEBP];
+}
+
+- (void)setYy_ImageData:(NSData *)imageData {
+    [self setData:imageData forPasteboardType:(id)kUTTypeImage];
+}
+
+- (NSData *)yy_ImageData {
+    return [self dataForPasteboardType:(id)kUTTypeImage];
+}
+
+- (void)setYy_AttributedString:(NSAttributedString *)attributedString {
+    self.string = [attributedString yy_plainTextForRange:NSMakeRange(0, attributedString.length)];
+    NSData *data = [attributedString yy_archiveToData];
+    if (data) {
+        NSDictionary *item = @{YYTextPasteboardTypeAttributedString : data};
+        [self addItems:@[item]];
+    }
+    [attributedString enumerateAttribute:YYTextAttachmentAttributeName inRange:NSMakeRange(0, attributedString.length) options:NSAttributedStringEnumerationLongestEffectiveRangeNotRequired usingBlock:^(YYTextAttachment *attachment, NSRange range, BOOL *stop) {
+        
+        // save image
+        UIImage *simpleImage = nil;
+        if ([attachment.content isKindOfClass:[UIImage class]]) {
+            simpleImage = attachment.content;
+        } else if ([attachment.content isKindOfClass:[UIImageView class]]) {
+            simpleImage = ((UIImageView *)attachment.content).image;
+        }
+        if (simpleImage) {
+            NSDictionary *item = @{@"com.apple.uikit.image" : simpleImage};
+            [self addItems:@[item]];
+        }
+        
+#if YYTextAnimatedImageAvailable
+        // save animated image
+        if ([attachment.content isKindOfClass:[UIImageView class]]) {
+            UIImageView *imageView = attachment.content;
+            Class aniImageClass = NSClassFromString(@"YYImage");
+            UIImage *image = imageView.image;
+            if (aniImageClass && [image isKindOfClass:aniImageClass]) {
+                NSData *data = [image valueForKey:@"animatedImageData"];
+                NSNumber *type = [image valueForKey:@"animatedImageType"];
+                if (data) {
+                    switch (type.unsignedIntegerValue) {
+                        case YYImageTypeGIF: {
+                            NSDictionary *item = @{(id)kUTTypeGIF : data};
+                            [self addItems:@[item]];
+                        } break;
+                        case YYImageTypePNG: { // APNG
+                            NSDictionary *item = @{(id)kUTTypePNG : data};
+                            [self addItems:@[item]];
+                        } break;
+                        case YYImageTypeWebP: {
+                            NSDictionary *item = @{(id)YYTextUTTypeWEBP : data};
+                            [self addItems:@[item]];
+                        } break;
+                        default: break;
+                    }
+                }
+            }
+        }
+#endif
+        
+    }];
+}
+
+- (NSAttributedString *)yy_AttributedString {
+    for (NSDictionary *items in self.items) {
+        NSData *data = items[YYTextPasteboardTypeAttributedString];
+        if (data) {
+            return [NSAttributedString yy_unarchiveFromData:data];
+        }
+    }
+    return nil;
+}
+
+@end

--
Gitblit v1.8.0