iOS/macOS(Objective-C)[v1.7.5.0]
PanoRtcWhiteboard.h
浏览该文件的文档.
1
2//
3// PanoRtcWhiteboard.h
4// PanoRtc
5//
6// Copyright © 2020 Pano. All rights reserved.
7//
8
9#import <Foundation/Foundation.h>
10#import "PanoEnumerates.h"
11#import "PanoObjects.h"
12
13NS_ASSUME_NONNULL_BEGIN
14
15#pragma mark - PanoRtcWhiteboardDelegate
16
25@protocol PanoRtcWhiteboardDelegate <NSObject>
26@optional
27
28#pragma mark Core Delegate Methods
29
36- (void)onStatusSynced;
47- (void)onPageNumberChanged:(PanoWBPageNumber)curPage
48 withTotalPages:(UInt32)totalPages;
49
60- (void)onImageStateChanged:(PanoWBImageState)state
61 withUrl:(NSString * _Nonnull)url;
62
75- (void)onHtmlStateChanged:(PanoWBHtmlState)state
76 withUrl:(NSString * _Nonnull)url
77 file:(NSString * _Nonnull)fileId;
78
87- (void)onViewScaleChanged:(Float32)scale;
88
97- (void)onRoleTypeChanged:(PanoWBRoleType)newRole;
98
105- (void)onContentUpdated;
106
117- (void)onSnapshotComplete:(PanoResult)result
118 name:(NSString* _Nonnull)filename;
119
128- (void)onUndoStatusChanged:(BOOL)canUndo;
129
138- (void)onRedoStatusChanged:(BOOL)canRedo;
139
148- (void)onDrawEvent:(PanoWBDrawEvent*)event;
149
150#pragma mark Message Delegate Methods
151
162- (void)onMessageReceived:(NSData * _Nonnull)message
163 fromUser:(UInt64)userId;
164
165#pragma mark Doc Delegate Methods
166
177- (void)onAddBackgroundImages:(PanoResult)result
178 file:(NSString* _Nonnull)fileId;
179
190- (void) onAddH5File:(PanoResult)result
191 file:(NSString* _Nonnull)fileId;
192
207- (void)onDocTranscodeStatus:(PanoResult)result
208 file:(NSString* _Nonnull)fileId
209 progress:(UInt32)progress
210 pageCount:(UInt32)count;
211
222- (void)onDocCreate:(PanoResult)result
223 file:(NSString* _Nonnull)fileId;
224
235- (void)onDocDelete:(PanoResult)result
236 file:(NSString* _Nonnull)fileId;
237
248- (void)onDocSwitch:(PanoResult)result
249 file:(NSString* _Nonnull)fileId;
250
263- (void)onDocSave:(PanoResult)result
264 file:(NSString* _Nonnull)fileId
265 path:(NSString* _Nonnull)outputDir;
266
279- (void)onDocThumbnailReady:(NSString* _Nonnull)fileId
280 thumbs:(NSArray<NSString *> * _Nonnull)urls;
281
292- (void)onExternalHtmlMessageReceived:(NSString* _Nonnull)msg
293 fileId:(NSString* _Nonnull)fileId;
294
295#pragma mark Vision Delegate Methods
296
305- (void)onVisionShareStarted:(UInt64)userId;
306
315- (void)onVisionShareStopped:(UInt64)userId;
316
317#pragma mark User Delegate Methods
318
329- (void)onUserJoined:(UInt64)userId
330 withName:(NSString * _Nullable)userName;
331
340- (void)onUserLeft:(UInt64)userId;
341
342@end
343
344
345#pragma mark - PanoRtcWhiteboard
346
355__attribute__((visibility("default"))) @interface PanoRtcWhiteboard : NSObject
356
358+ (instancetype)new NS_UNAVAILABLE;
359
361- (instancetype)init NS_UNAVAILABLE;
362
363#pragma mark Core Service
364
379- (PanoResult)setDelegate:(id<PanoRtcWhiteboardDelegate> _Nullable)delegate;
380
395- (PanoResult)open:(PanoView * _Nonnull)view;
409
423
439
454- (PanoResult)importFrom:(NSString * _Nonnull)filename;
469- (PanoResult)exportTo:(NSString * _Nonnull)filename;
470
481- (NSString * _Nullable)getCurrentWhiteboardId;
482
497- (PanoResult)setRoleType:(PanoWBRoleType)type;
498
513- (PanoResult)setToolType:(PanoWBToolType)type;
539- (PanoResult)setLineWidth:(UInt32)width;
554- (PanoResult)setFillType:(PanoWBFillType)type;
571- (PanoResult)setFillColor:(PanoWBColor * _Nonnull)color;
586- (PanoResult)setForegroundColor:(PanoWBColor * _Nonnull)color;
601- (PanoResult)setBackgroundColor:(PanoWBColor * _Nonnull)color;
616- (PanoResult)setFontStyle:(PanoWBFontStyle)style;
631- (PanoResult)setFontSize:(UInt32)size;
646- (PanoResult)addStamp:(PanoWBStamp * _Nonnull)stamp;
661- (PanoResult)setStamp:(NSString * _Nonnull)stampId;
662
677- (PanoResult)setBackgroundImageScalingMode:(PanoWBImageScalingMode)mode;
692- (PanoResult)setBackgroundImage:(NSString * _Nonnull)imageUrl;
709- (PanoResult)setBackgroundImage:(NSString * _Nonnull)imageUrl
710 withPageNumber:(PanoWBPageNumber)pageNo;
711
733- (UInt32)getTotalNumberOfPages;
748- (PanoResult)addPage:(BOOL)autoSwitch;
765- (PanoResult)insertPage:(PanoWBPageNumber)pageNo
766 autoSwitch:(BOOL)autoSwitch;
781- (PanoResult)removePage:(PanoWBPageNumber)pageNo;
801- (PanoResult)removePage:(PanoWBPageNumber)pageNo switchNext:(BOOL)switchNext;
816- (PanoResult)gotoPage:(PanoWBPageNumber)pageNo;
883- (PanoResult)addImageFile:(NSString * _Nonnull)imageUrl;
898- (PanoResult)addAudioFile:(NSString * _Nonnull)mediaUrl;
913- (PanoResult)addVideoFile:(NSString * _Nonnull)mediaUrl;
928- (NSString * _Nullable)addBackgroundImages:(NSArray<NSString *> * _Nonnull)urls;
945- (NSString * _Nullable)addH5File:(NSString * _Nonnull)url download:(NSString * _Nullable)downloadUrl;
960- (NSString * _Nullable)addDoc:(PanoWBDocContents *)contents;
975- (NSString * _Nullable)addDocWithExtHtml:(PanoWBDocExtHtml *)extHtml;
990- (NSString * _Nullable)addDocWithExternal:(PanoWBDocExtContents *)contents;
991
1006- (NSString * _Nullable)createDocWithImages:(NSArray<NSString *> * _Nonnull)urls;
1023- (NSString * _Nullable)createDocWithFilePath:(NSString * _Nonnull)filePath;
1042- (NSString * _Nullable)createDocWithFilePath:(NSString * _Nonnull)filePath convertParam:(PanoWBConvertConfig*)config;
1059- (PanoResult)deleteDoc:(NSString * _Nonnull)fileId;
1074- (PanoResult)switchDoc:(NSString * _Nonnull)fileId;
1095- (PanoResult)saveDocToImages:(NSString * _Nonnull)fileId
1096 path:(NSString * _Nonnull)outputDir;
1105- (NSMutableArray<NSString*> * _Nullable)enumerateFiles;
1116- (NSString * _Nullable)getCurrentFileId;
1132- (PanoWBDocInfo * _Nullable)getFileInfo:(NSString * _Nonnull)fileId;
1153- (PanoResult)sendToExternalHtml:(NSString* _Nonnull)fileId
1154 message:(NSString* _Nonnull)msg;
1173- (PanoResult)clearContents:(BOOL)curPage withType:(PanoWbClearType)type;
1194- (PanoResult)clearUserContents:(UInt64)userId
1195 currentPage:(BOOL)curPage
1196 withType:(PanoWbClearType)type;
1215- (PanoResult)clearDocContents:(NSString* _Nonnull)fileId
1216 withType:(PanoWbClearType)type;
1217
1230- (PanoResult)undo;
1243- (PanoResult)redo;
1244
1253- (Float32)getCurrentScaleFactor;
1254
1269- (PanoResult)setCurrentScaleFactor:(Float32)scale;
1270
1279- (Float32)getCurrentMinScaleFactor;
1288- (Float32)getCurrentMaxScaleFactor;
1289
1308- (PanoResult)snapshot:(PanoWBSnapshotMode)mode
1309 path:(NSString * _Nonnull)outputDir;
1310
1323- (PanoResult)initVision:(PanoWBVisionConfig*)config;
1402
1403#pragma mark Message Methods
1404
1421- (PanoResult)sendMessage:(NSData * _Nonnull)message
1422 toUser:(UInt64)userId;
1437- (PanoResult)broadcastMessage:(NSData * _Nonnull)message;
1438
1439#pragma mark Option Methods
1440
1457- (PanoResult)setOption:(NSObject * _Nullable)option
1458 forType:(PanoWBOptionType)type;
1459
1460@end
1461
1462NS_ASSUME_NONNULL_END
PanoWBImageScalingMode
白板图片缩放模式。
Definition: PanoEnumerates.h:344
PanoWBRoleType
白板角色类型。
Definition: PanoEnumerates.h:276
PanoWBImageState
白板图片状态码。
Definition: PanoEnumerates.h:364
PanoWBOptionType
白板可选项类型。
Definition: PanoEnumerates.h:446
PanoWbClearType
白板清除类型。
Definition: PanoEnumerates.h:412
PanoWBToolType
白板工具类型。
Definition: PanoEnumerates.h:286
PanoWBHtmlState
白板HTML状态码。
Definition: PanoEnumerates.h:374
PanoWBFontStyle
白板字体样式。
Definition: PanoEnumerates.h:332
PanoWBFillType
白板填充类型。
Definition: PanoEnumerates.h:324
PanoWBSnapshotMode
白板快照模式。
Definition: PanoEnumerates.h:422
PanoResult
返回。
Definition: PanoEnumerates.h:19
UIView PanoView
PANO视图类。
Definition: PanoObjects.h:22
UInt32 PanoWBPageNumber
白板页码类。
Definition: PanoObjects.h:677
PanoRtcWhiteboard 接口类对应用程序提供了所有的白板相关方法。
Definition: PanoRtcWhiteboard.h:356
instancetype init()
此方法不可用。
PanoResult redo()
重做白板的上一次被撤销操作。
PanoWBPageNumber getCurrentPageNumber()
获取当前白板页码。
Float32 getCurrentMaxScaleFactor()
获取当前白板视图的最大缩放比例
NSString *_Nullable getCurrentFileId()
获取当前白板文件ID
NSMutableArray< NSString * > *_Nullable enumerateFiles()
枚举白板文件
NSString *_Nullable getCurrentWhiteboardId()
获取当前白板Id
PanoResult startFollowVision()
开始跟随视角
PanoResult nextPage()
切换到下一页。
PanoResult close()
关闭白板。
PanoResult stopShareVision()
停止共享视角
PanoResult leave()
leave白板
PanoResult stopFollowVision()
停止跟随视角
PanoResult stop()
停止白板
PanoResult resetVision()
重置当前页视角
UInt32 getTotalNumberOfPages()
获取总白板页码数。
instancetype new()
此方法不可用。
PanoResult startShareVision()
开始共享视角
PanoResult prevStep()
执行H5文件上一步
Float32 getCurrentMinScaleFactor()
获取当前白板视图的最小缩放比例
PanoResult syncVision()
同步当前页视角
Float32 getCurrentScaleFactor()
获取当前白板视图的缩放比例。
PanoResult nextStep()
执行H5文件下一步
PanoResult prevPage()
切换到前一页。
PanoWBToolType getToolType()
获取工具类型
PanoResult undo()
撤销白板上一次操作。
白板颜色类。
Definition: PanoObjects.h:532
白板文件转码配置类。
Definition: PanoObjects.h:631
白板文件内容类。
Definition: PanoObjects.h:579
白板文件外部内容。
Definition: PanoObjects.h:619
白板文件外部Html内容。
Definition: PanoObjects.h:602
白板文件信息类。
Definition: PanoObjects.h:647
白板绘制相关信息。
Definition: PanoObjects.h:672
白板图章类。
Definition: PanoObjects.h:558
白板视口配置。
Definition: PanoObjects.h:662
PanoRtcEngineDelegate 协议启用对应用程序的回调。
Definition: PanoRtcWhiteboard.h:25
void onContentUpdated()
白板内容更新通知。
void onStatusSynced()
白板数据同步完成通知