CN116737667A - 导入可携带文档格式文件的方法及终端设备 - Google Patents

导入可携带文档格式文件的方法及终端设备 Download PDF

Info

Publication number
CN116737667A
CN116737667A CN202211467952.5A CN202211467952A CN116737667A CN 116737667 A CN116737667 A CN 116737667A CN 202211467952 A CN202211467952 A CN 202211467952A CN 116737667 A CN116737667 A CN 116737667A
Authority
CN
China
Prior art keywords
picture
user
pdf file
note
importing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211467952.5A
Other languages
English (en)
Inventor
李�浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Honor Device Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202211467952.5A priority Critical patent/CN116737667A/zh
Publication of CN116737667A publication Critical patent/CN116737667A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text

Abstract

本申请提供了一种导入可携带文档格式文件的方法及终端设备,有利于在同一篇笔记中实现PDF文件和文本混排。该方法包括:响应于用户在备忘录应用中的笔记中导入PDF文件的操作,获取PDF文件,PDF文件包括至少一个页面;根据PDF文件得到至少一张图片,该至少一张图片与PDF文件的该至少一个页面一一对应;在笔记的编辑区域中显示该至少一张图片。

Description

导入可携带文档格式文件的方法及终端设备
技术领域
本申请涉及终端技术领域,尤其涉及一种导入可携带文档格式文件的方法及终端设备。
背景技术
当前,终端设备上可以安装各种类型的应用,为用户提供各种不同的功能。备忘录应用是一款用户可以随时记录生活、工作等事件的应用,在一些备忘录中可以记录多种笔记格式,例如,可携带文档格式(portable document format,PDF)笔记和富文本笔记。其中,PDF笔记是独立的一种笔记格式,富文本笔记是由富文本编辑器进行解析渲染的一种笔记格式,数据格式是第5代版本的层次数据格式(hierarchical data format,H5)的,因此也可以成为H5格式富文本笔记。
然而,由于PDF笔记和富文本笔记是两种不同格式的笔记,因此,PDF笔记和富文本笔记无法同时在一篇笔记中编辑。
因此,如何使得PDF笔记和富文本笔记在同一篇笔记中编辑,从而实现PDF文件和文本混排成为一个亟待解决的问题。
发明内容
本申请提供一种导入PDF文件的方法及终端设备,有利于在同一篇笔记中实现PDF文件和文本混排。
第一方面,本申请提供一种导入PDF文件的方法,该方法包括:响应于用户在备忘录应用中的笔记中导入PDF文件的操作,获取PDF文件,PDF文件包括至少一个页面;根据PDF文件得到至少一张图片,所述至少一张图片与PDF文件的所述至少一个页面一一对应;在笔记的编辑区域中显示该至少一张图片。
基于本申请的技术方案,终端设备响应于用户在一篇笔记中导入PDF文件的操作,将PDF文件转换为至少一张图片并在编辑区域显示所述至少一张图片。其中,该篇笔记可以为一个新建的空白笔记,也可以为用户已创建的编辑有文本或图片的笔记。在将PDF文件转换为该至少一张图片之后,终端设备便可以利用富文本编辑器的图文混排机制,在同一篇笔记中实现PDF文件和文本的混排效果。
结合第一方面,在第一方面的某些实现方式中,在笔记的编辑区域中显示该至少一张图片之后,该方法还包括:响应于用户在该至少一张图片中的任意一张图片的上方或下方编辑文本的操作,在用户编辑的位置显示用户编辑的文本。
基于本申请的技术方案,终端设备利用富文本编辑器的图文混排机制,可以在包括该至少一张图片的编辑区域编辑文本,实现PDF文件和文本的混排效果。
结合第一方面,在第一方面的某些实现方式中,在笔记的编辑区域中显示该至少一张图片之后,该方法还包括:响应于用户在编辑区域中对第一目标图片的删除操作,在编辑区域删除第一目标图片,第一目标图片包括该至少一张图片中的一张或多张;和/或,响应于用户在编辑区域中对第二目标图片的拖动操作,在编辑区域调整第二目标图片的位置。
基于本申请的技术方案,终端设备可以响应于用户的操作对由PDF文件转换后的至少一张图片进行编辑操作,包括删除第一目标图片,或者拖动第二目标图片以调整第二目标图片的位置。其中,至少一张图片包括第二目标图片。
结合第一方面,在第一方面的某些实现方式中,在响应于用户在备忘录应用中的笔记中导入PDF文件的操作,获取PDF文件之前,该方法还包括:接收用户在笔记中导入文件的操作;确定操作为导入PDF文件的操作。
结合第一方面,在第一方面的某些实现方式中,根据PDF文件得到至少一张图片,包括:将PDF文件的每个页面转换为一张图片,得到该至少一张图片。
结合第一方面,在第一方面的某些实现方式中,在笔记的编辑区域中显示该至少一张图片之前,该方法还包括:在笔记的编辑区域中确定选区;根据选区,确定该至少一张图片在数据结构中的插入位置;在插入位置插入该至少一张图片;记录数据结构的变化,数据结构的变化包括在插入位置插入该至少一张图片;在笔记的编辑区域中显示该至少一张图片,包括:根据数据结构的变化,在笔记的编辑区域中显示该至少一张图片。
结合第一方面,在第一方面的某些实现方式中,在笔记的编辑区域中显示该至少一张图片之后,该方法还包括:提示用户已完成导入PDF文件。
结合第一方面,在第一方面的某些实现方式中,提示用户已完成导入PDF文件,包括:突出显示用于导入文件的控件,以提示用户已完成导入PDF文件。
结合第一方面,在第一方面的某些实现方式中,提示用户已完成导入PDF文件,包括:通过文字来提示用户已完成导入PDF文件。
第二方面,本申请提供一种终端设备,终端设备也可以称为终端(terminal)、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。终端设备可以是手机(mobile phone)、个人计算机(personal computer,PC)、智能电视、穿戴式设备、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrialcontrol)中的无线终端、无人驾驶(self-driving)中的无线终端、远程手术(remotemedical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。
该终端设备包括:包括:处理器和存储器;存储器存储计算机执行指令;处理器执行存储器存储的计算机执行指令,使得终端设备执行如第一方面的方法。
第三方面,本申请提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序。计算机程序被处理器执行时实现如第一方面的方法。
第四方面,本申请提供一种计算机程序产品,计算机程序产品包括计算机程序,当计算机程序被运行时,使得计算机执行如第一方面的方法。
第五方面,本申请提供了一种芯片,芯片包括处理器,处理器用于调用存储器中的计算机程序,以执行如第一方面所述的方法。
应当理解的是,本申请的第二方面至第五方面与本申请的第一方面的技术方案相对应,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
附图说明
图1是本申请实施例适用的一种终端设备的结构示意图;
图2至图5是本申请实施例提供的备忘录的界面示意图;
图6是本申请实施例提供的一种导入PDF文件的框架示意图;
图7是本申请实施例提供的另一种导入PDF文件的框架示意图;
图8是本申请实施例提供的一种PDF文件和文本混排的方法的示意性流程图;
图9是本申请实施例提供的一种导入PDF文件的方法的示意性流程图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
为了便于清楚描述本申请实施例的技术方案,以下对本申请实施例中所涉及的部分术语进行简单介绍:
在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
需要说明的是,本申请中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
此外,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a、b和c中的至少一项(个),可以表示:a,或b,或c,或a和b,或a和c,或b和c,或a、b和c,其中a,b,c可以是单个,也可以是多个。
需要说明的是,本申请实施例中的“在……时”,可以为在某种情况发生的瞬时,也可以为在某种情况发生后的一段时间内,本申请实施例对此不作具体限定。此外,本申请实施例提供的显示界面仅作为示例,显示界面还可以包括更多或更少的内容。
图1是本申请实施例适用的一种终端设备的结构示意图。如图1所示,该终端设备100可以包括:处理器110,外部存储器接口120,内部存储器121,USB接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriberidentification module,SIM)卡接口195等。可以理解的是,本实施例示意的结构并不构成对终端设备100的具体限定。在本申请另一些实施例中,终端设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件,或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,显示处理单元(displayprocess unit,DPU),和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。在一些实施例中,终端设备100也可以包括一个或多个处理器110。其中,处理器可以是终端设备100的神经中枢和指挥中心。处理器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。这就避免了重复存取,减少了处理器110的等待时间,因而提高了终端设备100的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或USB接口等。其中,USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,MicroUSB接口,USB Type C接口等。USB接口130可以用于连接充电器为终端设备100充电,也可以用于终端设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。
可以理解的是,本申请实施例示意的各模块间的接口连接关系为示意性说明,并不构成对终端设备100的结构限定。在本申请另一些实施例中,终端设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
终端设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。天线1和天线2用于发射和接收电磁波信号。终端设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在终端设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在终端设备100上的包括无线局域网(wirelesslocal area networks,WLAN),蓝牙,全球导航卫星系统(global navigation satellitesystem,GNSS),调频(frequency modulation,FM),NFC,红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,终端设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得终端设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括GSM,GPRS,CDMA,WCDMA,TD-SCDMA,LTE,GNSS,WLAN,NFC,FM,和/或IR技术等。上述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidou navigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
终端设备100通过GPU、显示屏194以及应用处理器等可以实现显示功能。应用处理器可以包括NPU和/或DPU。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行指令以生成或改变显示信息。NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现终端设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。DPU也称为显示子系统(display sub-system,DSS),DPU用于对显示屏194的色彩进行调整,DPU可以通过颜色三维(3dimensions,3D)查找表(look up table,LUT)对显示屏的色彩进行调整。DPU还可以对画面进行缩放、降噪、对比度增强、背光亮度管理、hdr处理、显示器参数Gamma调整等处理。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD)、有机发光二极管(organic light-emittingdiode,OLED)、有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode,AMOLED)、柔性发光二极管(flex light-emittingdiode,FLED)、Miniled、MicroLed、Micro-oLed或量子点发光二极管(quantum dot lightemitting diodes,QLED)。在一些实施例中,终端设备100可以包括1个或N个显示屏194,N为大于1的正整数。
终端设备100可以通过ISP,一个或多个摄像头193,视频编解码器,GPU,一个或多个显示屏194以及应用处理器等实现拍摄功能。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展终端设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐、照片、视频等数据文件保存在外部存储卡中。
内部存储器121可以用于存储一个或多个计算机程序,该一个或多个计算机程序包括指令。处理器110可以通过运行存储在内部存储器121的上述指令,从而使得终端设备100执行各种功能应用以及数据处理等。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统;该存储程序区还可以存储一个或多个应用程序(比如图库、联系人等)等。存储数据区可存储终端设备100使用过程中所创建的数据(比如照片,联系人等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flashstorage,UFS)等。在一些实施例中,处理器110可以通过运行存储在内部存储器121的指令,和/或存储在设置于处理器110中的存储器的指令,来使得终端设备100执行各种功能应用及数据处理。
终端设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放、录音等。其中,音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。终端设备100可以通过扬声器170A收听音乐,或收听免提通话。受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当终端设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。麦克风170C,也称“话筒”或“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。终端设备100可以设置至少一个麦克风170C。在另一些实施例中,终端设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,终端设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动终端设备平台(open mobile terminal platform,OMTP)标准接口,还可以是美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
上述终端设备100的应用层包括备忘录应用,备忘录应用是一款让用户可以随时记录生活、工作等事件的应用,在一些备忘录中可以记录多种笔记格式,例如,PDF笔记和富文本笔记。其中,PDF笔记是独立的一种笔记格式,富文本笔记是由富文本编辑器进行解析渲染的一种笔记格式,数据格式是H5的,因此也可以称为H5格式富文本笔记。下面结合与2至与图5介绍本申请实施例提供的备忘录的界面示意图。
图2以PC端的备忘录的界面为例进行介绍,备忘录的界面可分为多个区域,包括文件夹列表区域、笔记列表区域、用户事件响应区域以及富文本编辑器的编辑区域。
当用户点击笔记列表中的某篇笔记之后,在编辑区域会显示该篇笔记的内容。图2中用户选择打开的是一篇新建的笔记,用户还没有输入任何内容,因此该篇笔记暂时还无标题。用户可以针对该篇笔记执行编辑行为。
示例性地,编辑行为可以包括添加文本、添加图片、导入PDF文件、设置粗体、设置斜体、设置字号、设置颜色等。
当用户期望在一篇笔记中导入PDF文件时,用户可以点击如图2中所示的控件01,响应于用户点击控件01的操作,如图3所示,在用户事件响应区域示出“导入”的字样。当用户选择“导入”之后,如图4所示,PC上弹出文件选择窗口,提示用户进行PDF文件的选择。当用户选择一个PDF文件之后,如图5所示,在编辑区域显示用户选择的PDF文件的内容。
在一些场景下,用户可能期望在同一篇笔记中实现PDF文件和文本的混排。例如图5所示,用户在一篇笔记中导入了PDF文件,在阅读PDF文件时,用户可能希望一边阅读,一边在该篇笔记上输入文本记录阅读心得。
然而,由于PDF笔记和富文本笔记是两种不同格式的笔记,因此,PDF笔记和富文本笔记无法同时在一篇笔记中编辑。也就是说,如果一篇笔记中已经导入了PDF文件,那么用户便无法在这篇笔记中编辑文本;反之,如果一篇笔记中已经有编辑的文本,那么用户便无法在这篇笔记中导入PDF文件。因此,用户可能需要新建一篇笔记单独记录阅读心得,这样需要用户在两篇笔记之间频繁切换,为用户带来很大的不便,不利于用户操作,降低用户的使用体验。
有鉴于此,本申请实施例提供一种导入PDF文件的方法,当终端设备确定用户操作为导入PDF文件的操作,也就是导入的文件为PDF文件时,终端设备将PDF文件的每一页转换为单独的图片显示在笔记的编辑区域中,以此完成PDF文件的导入。进而终端设备基于图文混排机制,便可以在包括由PDF文件转换后的图片的编辑区域中显示用户编辑的文本,实现PDF文件和文本的混排。
图6是本申请实施例提供的一种导入PDF文件的框架示意图。图6中以安卓(Android)端的备忘录为例,安卓端的备忘录包括原生(native)层和网页视图(WebView)层。
其中,在native层使用安卓原生应用程序编程接口(application programminginterface,API)和用户界面(user interface,UI)框架来实现UI渲染,并通过对UI层的事件的监听来获取用户意图,并将监听到的事件通过javascript(JS)和Android的通信接口(JS接口)传递到native层。
WebView层用于承接接口层和富文本编辑器,包含借口层和富文本编辑器两层设计。其中,接口层用于渲染除了编辑器之外的组件,并且承载JS和安卓的通信接口。
富文本编辑器是实现用户对富文本内容进行编辑的框架,包括渲染机制、历史记录、插件机制、行为、数据模型五大模块。
数据模型可以将数据格式按照标签构建树状结构,并利用Web特性,通过路径(path)和偏移量(offset)将光标和选区与数据结构相对应。光标的定位由一个路径和偏移量确定,路径的数值代表从文档的数据模型的根部到光标所在文本界面的路径;偏移量表示光标在文本界面上的偏移量。
行为可以将对数据模型中数据的操作定义为九种行为,包括:插入节点、拆分节点、插入选区、移动节点、插入文本、合并节点、设置属性、移除节点、移除文本。这九种类型的操作可用于历史回溯和协同编辑场景。
插件机制可以基于上述九种行为与界面渲染出来的元素(文本、图片、表格等元素)进行结合。可将数据和行为相结合,实现不同的功能。富文本编辑器中的不同格式的数据在插件机制中实现,例如:清单、有序列表、无序列表等。
历史记录用于记录用户的每一次行为。
渲染机制依赖于开源UI框架和Web能力以将数据结构中的元素渲染到界面上。
图7是本申请实施例提供的另一种导入PDF文件的框架示意图。图7中以PC端的备忘录应用为例,PC端的备忘录应用基于Web框架实现编辑器功能,备忘录应用包括UI渲染层、用户事件处理服务、指令服务和富文本编辑器。UI渲染层包括react组件、超文本标记语言(hypertext mark-up language,HTML)布局以及层叠样式表(cascading style sheets,CSS)样式。
UI渲染层可以将用户的点击事件传递给用户事件处理服务。用户事件处理服务根据事件识别用户意图,并调用指令服务匹配与用户意图对应的指令。示例性地,用户意图可以包括设置粗体、设置斜体、添加图片、添加颜色、设置字号等。通过一系列的指令订阅、指令匹配、指令分发等操作,将指令传递至富文本编辑器,富文本编辑器基于指令实现用户期望的编辑行为。
与安卓的整体设计思路类似,富文本编辑器包括渲染机制、历史记录、插件机制、行为、数据模型五大模块。对每个模块的描述可参照上文针对图6中的描述,此处不再赘述。
下面结合图8,对终端设备通过内部交互实现PDF文件和文本混排的方法的进行描述。
图8是本申请实施例提供的一种PDF文件和文本混排的方法800的示意性流程图。方法800可以由终端设备的内部模块交互执行,该终端设备包括备忘录应用,备忘录应用包括富文本编辑器,富文本编辑器可以集成在Android平台(如图6所示),或者windows平台(如图7所示)。
图8所示的终端设备包括UI渲染层、用户事件处理服务、指令服务和富文本编辑器。其中,富文本编辑器包括渲染机制、历史记录、插件机制、行为、数据模型五大模块。
方法800包括S801至S844,具体步骤如下:
S801,UI渲染层响应于用户启动备忘录应用的操作,渲染备忘录的UI界面。渲染后的UI界面可如图2所示。
S802,UI渲染层向渲染机制发送初始化指令,指示初始化富文本编辑器。相应地,渲染机制接收初始化指令。
S803,渲染机制基于初始化指令,初始化富文本编辑器的组件,加载数据模型,初始化数据结构。如果存在数据,则将数据加载到数据模型中,如果数据为空,则创建空的数据模型对象。
S804,UI渲染层向指令服务发送启动指令,并注册当前支持的功能指令。相应地,指令服务接收启动指令。
示例性地,功能指令可以包括添加PDF文件指令、字体加粗指令、字体斜体指令、字体高亮指令、添加图片指令等。
S805,UI渲染层接收用户导入文件的事件,将事件发送给用户事件处理服务。相应地,用户事件处理服务接收该事件。
S806,用户事件处理服务基于该事件,识别用户意图。在步骤中,用户意图为导入PDF文件。
S807,用户事件处理服务向指令服务发送用户意图。相应地,指令服务接收用户意图。
S808,指令服务根据用户意图识别S804中已注册的功能指令,如果匹配到是添加PDF文件指令,则执行S809;如果未匹配到功能指令,则停止。
S809,指令服务向插件机制发送与用户意图匹配的功能指令。相应地,插件机制接收与用户意图匹配的功能指令。
S810,插件机制识别与用户意图匹配的功能指令,确定用户期望导入PDF文件。因此,插件机制获取PDF文件,将PDF文件进行拆分,将PDF文件的每一页转换为一张图片,得到至少一张图片。
S811,插件机制确定执行添加图片的业务逻辑。
S812,插件机制向数据模型发送识别选区的指令。相应地,数据模型接收识别选区的指令。此处的选区包括光标,光标是一种起点和终点相同的选区。
S813,数据模型在笔记的编辑区域识别选区。
S814,数据模型向插件机制发送完成识别的消息。相应地,插件机制接收完成识别的消息。
S815,插件机制向行为发送对添加图片的操作进行抽象的指令。相应地,行为接收对添加图片的操作进行抽象的指令。
S816,行为基于对添加图片的操作进行抽象的指令,将添加图像的操作抽象为上文所描述的九种行为中的插入节点。
S817,行为向数据模型发送更新数据结构的指令,携带抽象后的行为(即插入节点)。相应地,数据模型接收更新数据结构的指令。
S818,数据模型根据抽象后的行为,确定是要执行在数据结构中插入图片的操作,并根据S813中识别的选区,定位由PDF文件转换后得到的至少一张图片在数据结构中的插入位置。
S819,数据模型根据插入位置,更新数据模型。更新数据模型包括在插入位置插入该至少一张图片。
S820,数据模型向历史记录发送添加行为的指令,携带数据结构的变化。相应地,历史记录接收添加行为的指令。
其中,数据结构的变化包括在插入位置插入该至少一张图片,即数据结构中的图像数据发生了变化。
S821,历史记录在历史堆栈中添加用户行为,记录数据结构的变化。
S822,历史记录向渲染机制发送数据结构的变化。相应地,渲染机制接收数据结构的变化。
S823,渲染机制将数据结构的变化更新到UI界面上,在UI界面上显示该至少一张图片。
S824,渲染机制向UI渲染层发送更新成功的消息。相应地,UI渲染层接收更新成功的消息。
可选地,方法800还包括S825,UI渲染层提示用户已完成导入PDF文件。
在一种可能的实现中,UI渲染层突出显示(例如,高亮、加粗)用于导入文件的控件(例如,图3中的控件01)。
在另一种可能的实现中,UI渲染层通过文字提示用户已完成导入PDF文件。
在上述导入PDF文件完成之后,由于PDF文件已经被转换为至少一张图片,用户可以在编辑区域对该至少一张图片进行处理,例如,删除其中的第一目标图片,第一目标图片包括该至少一张图片中的一张图片或多张图片;例如,拖动该至少一张图片中第二目标图片以改变该至少一张图片的排序,第二目标图片包括该至少一张图片中的一张图片或多张图片。
通过执行以上步骤,终端设备可以在一篇笔记中显示由PDF文件转换得到的至少一张图片,这样用户便可以在包括至少一张图片的编辑区域执行后续的编辑行为,例如,编辑文本、插入图片、继续导入PDF文件等操作。应理解,在继续导入PDF文件的过程中,终端设备仍是将PDF文件拆分为图片以在编辑区域显示。
下面的步骤以导入PDF文件完成之后,用户在编辑区域编辑文字为例,介绍终端设备内部添加文本的交互过程。
UI渲染层接收用户编辑文本的事件,将事件发送给用户事件处理服务。S826至S830与上文中描述的S805至S809类似,区别在于用户事件处理服务识别的用户意图为编辑文本,后续匹配并传递至插件机制的功能指令为编辑文本指令。
S831中,插件机制识别功能指令为编辑文本指令之后,进入编辑文本的业务逻辑。
S832至S844与上文中描述的S812至S824类似,区别在于行为将编辑文本的操作抽象为九种行为中的插入文本,数据模型根据抽象后的行为,确定是要执行在数据结构中插入文本的操作,并根据S833中识别的选区,定位文本在数据结构中的插入位置,并根据插入位置更新数据模型。在S841中,历史记录添加的行为是插入文本,数据结构的变化包括在定位的插入位置插入文本。在S843中,渲染机制将数据结构的变化更新到UI界面,在UI界面上添加用户编辑的文本。
在本申请实施例中,在用户最初打开的笔记中导入PDF文件之前,该篇笔记中可以包括用户编辑的文本或者插入的图片等信息,也可以不包括任何用户编辑或插入的内容,本申请实施例对此不作限定。
综上,图9是本申请实施例提供的一种导入PDF文件的方法900的示意性流程图。
方法900包括S901至S903,具体步骤如下:
S901,响应于用户在备忘录应用中的笔记中导入PDF文件的操作,获取PDF文件,PDF文件包括至少一个页面。
可选地,用户打开的这篇笔记可以包括用户编辑的文本或者插入的图片,也可以是用户新建的一个空白笔记,本申请实施例对此不作限定。
S902,根据PDF文件得到至少一张图片,所述至少一张图片与PDF文件的所述至少一个页面一一对应。
在本步骤中,终端设备将PDF文件的每个页面转换为一张图片,得到该至少一张图片。
S903,在笔记的编辑区域中显示该至少一张图片。
应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本申请实施例提供的导入PDF文件的方法,可以应用在具备通信功能的终端设备中。终端设备的具体设备形态等可以参照上述相关说明,此处不再赘述。
本申请实施例提供一种终端设备,该终端设备包括:包括:处理器和存储器;存储器存储计算机执行指令;处理器执行存储器存储的计算机执行指令,使得终端设备执行上述方法。
本申请实施例提供一种芯片。芯片包括处理器,处理器用于调用存储器中的计算机程序,以执行上述实施例中的技术方案。其实现原理和技术效果与上述相关实施例类似,此处不再赘述。
本申请实施例还提供了一种计算机可读存储介质。计算机可读存储介质存储有计算机程序。计算机程序被处理器执行时实现上述方法。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。如果在软件中实现,则功能可以作为一个或多个指令或代码存储在计算机可读介质上或者在计算机可读介质上传输。计算机可读介质可以包括计算机存储介质和通信介质,还可以包括任何可以将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任何目标介质。
一种可能的实现方式中,计算机可读介质可以包括随机存取存储器(randomaccess memory,RAM),只读存储器(read-only memory,ROM),只读光盘(compact discread-only memory,CD-ROM)或其它光盘存储器,磁盘存储器或其它磁存储设备,或目标于承载的任何其它介质或以指令或数据结构的形式存储所需的程序代码,并且可由计算机访问。而且,任何连接被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,数字用户线(digital subscriber line,DSL)或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,DSL或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘,激光盘,光盘,数字通用光盘(digital versatile disc,DVD),软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。上述的组合也应包括在计算机可读介质的范围内。
本申请实施例提供一种计算机程序产品,计算机程序产品包括计算机程序,当计算机程序被运行时,使得计算机执行上述方法。
本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程设备的处理单元以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
以上的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请的保护范围之内。

Claims (12)

1.一种导入可携带文档格式文件的方法,其特征在于,所述方法包括:
响应于用户在备忘录应用中的笔记中导入可携带文档格式PDF文件的操作,获取所述PDF文件,所述PDF文件包括至少一个页面;
根据所述PDF文件得到至少一张图片,所述至少一张图片与所述PDF文件的所述至少一个页面一一对应;
在所述笔记的编辑区域中显示所述至少一张图片。
2.根据权利要求1所述的方法,其特征在于,在所述笔记的编辑区域中显示所述至少一张图片之后,所述方法还包括:
响应于用户在所述至少一张图片中的任意一张图片的上方或下方编辑文本的操作,在用户编辑的位置显示所述用户编辑的文本。
3.根据权利要求1或2所述的方法,其特征在于,在所述笔记的编辑区域中显示所述至少一张图片之后,所述方法还包括:
响应于用户在所述编辑区域中对第一目标图片的删除操作,在所述编辑区域删除所述第一目标图片,所述第一目标图片包括所述至少一张图片中的一张图片或多张图片;和/或,
响应于用户在所述编辑区域中对第二目标图片的拖动操作,在所述编辑区域调整所述第二目标图片的位置。
4.根据权利要求1至3中任一项所述的方法,其特征在于,在所述响应于用户在备忘录应用中的笔记中导入PDF文件的操作,获取所述PDF文件之前,所述方法还包括:
接收用户在所述笔记中导入文件的操作;
确定所述操作为导入PDF文件的操作。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述根据所述PDF文件得到至少一张图片,包括:
将所述PDF文件的每个页面转换为一张图片,得到所述至少一张图片。
6.根据权利要求1至5中任一项所述的方法,其特征在于,在所述笔记的编辑区域中显示所述至少一张图片之前,所述方法还包括:
在所述笔记的编辑区域中确定选区;
根据所述选区,确定所述至少一张图片在数据结构中的插入位置;
在所述插入位置插入所述至少一张图片;
记录所述数据结构的变化,所述数据结构的变化包括在所述插入位置插入所述至少一张图片;
在所述笔记的编辑区域中显示所述至少一张图片,包括:
根据所述数据结构的变化,在所述笔记的编辑区域中显示所述至少一张图片。
7.根据权利要求1至6中任一项所述的方法,其特征在于,在所述笔记的编辑区域中显示所述至少一张图片之后,所述方法还包括:
提示用户已完成导入所述PDF文件。
8.根据权利要求7所述的方法,其特征在于,所述提示用户已完成导入所述PDF文件,包括:
突出显示用于导入文件的控件,以提示所述用户已完成导入所述PDF文件。
9.根据权利要求7所述的方法,其特征在于,所述提示用户已完成导入所述PDF文件,包括:
通过文字来提示所述用户已完成导入所述PDF文件。
10.一种终端设备,其特征在于,包括:处理器和存储器,其中,
所述存储器用于存储计算机程序;
所述处理器用于调用并执行所述计算机程序,以使所述终端设备执行如权利要求1至9中任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,用于存储计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1至9中任一项所述的方法。
12.一种计算机程序产品,其特征在于,包括计算机程序,当所述计算机程序被运行时,使得计算机执行如权利要求1至9中任一项所述的方法。
CN202211467952.5A 2022-11-22 2022-11-22 导入可携带文档格式文件的方法及终端设备 Pending CN116737667A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211467952.5A CN116737667A (zh) 2022-11-22 2022-11-22 导入可携带文档格式文件的方法及终端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211467952.5A CN116737667A (zh) 2022-11-22 2022-11-22 导入可携带文档格式文件的方法及终端设备

Publications (1)

Publication Number Publication Date
CN116737667A true CN116737667A (zh) 2023-09-12

Family

ID=87915706

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211467952.5A Pending CN116737667A (zh) 2022-11-22 2022-11-22 导入可携带文档格式文件的方法及终端设备

Country Status (1)

Country Link
CN (1) CN116737667A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107656941A (zh) * 2016-07-26 2018-02-02 阿里巴巴集团控股有限公司 文件解析方法、装置及富文本编辑器
CN110457264A (zh) * 2019-08-15 2019-11-15 深圳市威屏科技有限公司 会议文件处理方法、装置、设备及计算机可读存储介质
CN111833917A (zh) * 2020-06-30 2020-10-27 北京印象笔记科技有限公司 信息交互方法、可读存储介质和电子设备
CN112637623A (zh) * 2020-12-11 2021-04-09 创盛视联数码科技(北京)有限公司 直播处理方法、装置及电子设备
CN114548056A (zh) * 2022-03-15 2022-05-27 阿里巴巴(中国)有限公司 富文本编辑方法、装置及设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107656941A (zh) * 2016-07-26 2018-02-02 阿里巴巴集团控股有限公司 文件解析方法、装置及富文本编辑器
CN110457264A (zh) * 2019-08-15 2019-11-15 深圳市威屏科技有限公司 会议文件处理方法、装置、设备及计算机可读存储介质
CN111833917A (zh) * 2020-06-30 2020-10-27 北京印象笔记科技有限公司 信息交互方法、可读存储介质和电子设备
CN112637623A (zh) * 2020-12-11 2021-04-09 创盛视联数码科技(北京)有限公司 直播处理方法、装置及电子设备
CN114548056A (zh) * 2022-03-15 2022-05-27 阿里巴巴(中国)有限公司 富文本编辑方法、装置及设备

Similar Documents

Publication Publication Date Title
WO2020238774A1 (zh) 一种通知消息的预览方法及电子设备
CN112187619B (zh) 一种即时通信方法及设备
WO2021023220A1 (zh) 一种内容接续方法、系统及电子设备
CN111382418B (zh) 应用程序权限管理方法、装置、存储介质与电子设备
WO2022078295A1 (zh) 一种设备推荐方法及电子设备
WO2020006711A1 (zh) 一种消息的播放方法及终端
EP4167072A1 (en) Method for opening file, and device
WO2022127670A1 (zh) 一种通话方法、相关设备和系统
CN112328330A (zh) iOS组件的调用方法、装置、中间件、电子设备及介质
WO2023005711A1 (zh) 一种服务的推荐方法及电子设备
US11310177B2 (en) Message display method and terminal
CN116737667A (zh) 导入可携带文档格式文件的方法及终端设备
CN115086888B (zh) 消息通知方法与装置、电子设备
CN116069214A (zh) 跨控件的界面交互方法、电子设备、介质以及程序产品
CN116702715A (zh) 备忘录操作方法、装置及存储介质
CN110737765A (zh) 多轮对话的对话数据处理方法及相关装置
WO2023134525A1 (zh) 一种外观设置方法和电子设备
CN115841099B (zh) 基于数据处理的页面填充词的智能推荐方法
CN116737049A (zh) 音频播放方法及终端设备
US20230247085A1 (en) Terminal device interaction method and apparatus
WO2021227847A9 (zh) 一种文件应用方法及装置
CN117289807A (zh) 通信方法、通信系统和鼠标
CN116708334A (zh) 一种通知消息的显示方法及电子设备
CN117917632A (zh) 一种显示方法、电子设备和系统
CN117692723A (zh) 视频编辑方法和电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination