pc官网 和手机网站为什么登录不上建设银行网站

张小明 2026/1/10 19:02:26
pc官网 和手机网站,为什么登录不上建设银行网站,网站一般宽度是多少像素,网站的建设时间企业网站后台管理系统Word/微信公众号内容粘贴功能集成方案 一、需求分析与背景 作为贵州某集团企业的项目负责人#xff0c;我们近期在企业网站后台管理系统的升级项目中遇到了一个新的需求#xff1a;需要在现有的文章发布模块中增加Word粘贴、Word文档导入以及微信公众号…企业网站后台管理系统Word/微信公众号内容粘贴功能集成方案一、需求分析与背景作为贵州某集团企业的项目负责人我们近期在企业网站后台管理系统的升级项目中遇到了一个新的需求需要在现有的文章发布模块中增加Word粘贴、Word文档导入以及微信公众号内容粘贴功能。核心需求要点功能要求Web编辑器TinyMCE 4工具栏增加插件Word内容粘贴保留样式图片自动上传Word/Excel/PPT/PDF文档导入微信公众号内容粘贴自动下载图片并上传技术要求前端Vue2 CLI TinyMCE 4后端SpringBoot数据库MySQL服务器华为云ECS OBS信创兼容多种国产OSCPU架构浏览器兼容包括IE8在内的全浏览器支持商务要求预算58万以内一次性买断授权厂商需提供5个以上政府/央企项目案例证明避免后续涨价风险二、市场调研与产品评估1. 调研过程我通过以下渠道进行了市场调研专业B2B平台如CSDN、InfoQ、开源中国行业技术论坛同行推荐现有合作厂商咨询2. 候选产品评估2.1 开源方案评估CKEditor Paste from Word插件优点开源免费社区支持缺点样式保留不完整图片处理需自行开发信创环境兼容性不确定TinyMCE PowerPaste插件优点官方插件与现有编辑器兼容缺点商业授权按年付费部分高级功能需额外付费国产化支持不明确2.2 商业方案评估方案A某国产编辑器厂商报价45万买断授权优点完全国产信创兼容提供源代码已有政府项目案例缺点与TinyMCE集成需定制开发IE8支持需额外测试方案B国际知名编辑器厂商报价60万3年授权优点功能强大成熟稳定缺点超预算续费模式不符合要求信创支持有限方案C专业文档处理中间件报价52万永久授权优点专注文档处理提供SDK和API支持多格式导入导出缺点集成工作量较大学习曲线陡峭3. 方案对比表评估维度开源方案方案A方案B方案C功能完整性★★☆☆☆★★★★☆★★★★★★★★★☆信创兼容性★★☆☆☆★★★★★★★☆☆☆★★★★☆集成便利性★★☆☆☆★★★☆☆★★★★☆★★★☆☆预算符合度★★★★★★★★★★★★☆☆☆★★★★★后续维护★★☆☆☆★★★★☆★★★☆☆★★★★☆厂商资质N/A★★★★★★★★☆☆★★★★☆4. 推荐方案综合考虑后我推荐采用方案A——某国产编辑器厂商的方案原因如下完全符合信创要求买断授权在预算内已有政府项目案例提供源代码自主可控本地化服务支持好三、技术方案设计1. 系统架构[客户端] ├─ Vue2 CLI └─ TinyMCE 4 (集成国产插件) ├─ Word粘贴 ├─ 文档导入 └─ 公众号粘贴 [服务端] ├─ SpringBoot │ ├─ 文件上传服务 │ ├─ 文档解析服务 │ └─ 图片处理服务 └─ 华为云OBS [信创环境] ├─ 多种国产OS └─ 多种国产CPU2. 功能流程图Word粘贴流程是否用户复制Word内容点击粘贴按钮插件解析内容是否包含图片?提取图片并上传OBS直接插入HTML替换图片URL保留样式插入编辑器文档导入流程用户选择文档前端上传文件后端解析文档提取文本和图片上传图片到OBS生成HTML返回前端插入编辑器3. 关键技术点Word样式保留使用专业的文档解析引擎转换Office Open XML格式样式映射到HTML/CSS图片处理二进制流上传异步处理机制上传进度反馈信创兼容多环境测试矩阵国产CPU指令集优化浏览器降级方案四、开发实施1. 前端集成示例// main.js - TinyMCE插件初始化importtinymcefromtinymce/tinymceimporttinymce/themes/modern/themeimporttinymce/plugins/pasteimporttinymce/plugins/link// 引入国产插件importChinesePluginfrom/lib/tinymce/plugins/chinese-doc-importtinymce.init({selector:#editor,plugins:[paste link chinese-doc-import],toolbar:undo redo | styleselect | bold italic | link | chineseDocImport,// 插件配置chinese_doc_import_config:{upload_url:/api/upload/image,doc_import_url:/api/import/doc,wechat_import_url:/api/import/wechat,oss_config:{bucket:your-bucket,region:your-region}}})2. 后端接口示例// FileUploadController.javaRestControllerRequestMapping(/api/upload)publicclassFileUploadController{AutowiredprivateHuaweiOBSServiceobsService;PostMapping(/image)publicResponseEntityuploadImage(RequestParam(file)MultipartFilefile,RequestParam(valuetype,defaultValuenormal)Stringtype){try{// 验证文件类型StringcontentTypefile.getContentType();if(!contentType.startsWith(image/)){thrownewIllegalArgumentException(只支持图片文件上传);}// 上传到华为云OBSStringfileKeyimages/UUID.randomUUID()getFileExtension(file.getOriginalFilename());StringurlobsService.uploadFile(fileKey,file.getInputStream());// 返回结果MapresultnewHashMap();result.put(url,url);result.put(key,fileKey);returnResponseEntity.ok(result);}catch(Exceptione){returnResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(Collections.singletonMap(error,e.getMessage()));}}privateStringgetFileExtension(Stringfilename){returnfilename.substring(filename.lastIndexOf(.));}}3. 文档解析服务// DocParseService.javaServicepublicclassDocParseService{AutowiredprivateHuaweiOBSServiceobsService;publicStringparseWordDocument(InputStreaminputStream)throwsException{// 使用国产文档解析库ChineseDocParserparsernewChineseDocParser();DocumentContentcontentparser.parse(inputStream);// 处理图片for(DocumentImageimage:content.getImages()){StringfileKeydocs/UUID.randomUUID().image.getFormat();StringimageUrlobsService.uploadFile(fileKey,image.getData());content.replaceImagePlaceholder(image.getId(),imageUrl);}// 生成HTMLreturncontent.toHtml();}// Excel/PPT/PDF的类似解析方法...}4. 华为云OBS服务封装// HuaweiOBSService.javaServicepublicclassHuaweiOBSService{privatefinalObsClientobsClient;publicHuaweiOBSService(Value(${huawei.obs.endpoint})Stringendpoint,Value(${huawei.obs.accessKey})StringaccessKey,Value(${huawei.obs.secretKey})StringsecretKey){this.obsClientnewObsClient(accessKey,secretKey,endpoint);}publicStringuploadFile(StringfileKey,InputStreaminputStream)throwsException{StringbucketNamegetBucketName();PutObjectRequestrequestnewPutObjectRequest();request.setBucketName(bucketName);request.setObjectKey(fileKey);request.setInput(inputStream);obsClient.putObject(request);returnString.format(https://%s.%s/%s,bucketName,obsClient.getClientConfiguration().getEndPoint(),fileKey);}privateStringgetBucketName(){// 从配置获取或逻辑判断returnyour-bucket-name;}}五、信创环境适配方案1. 兼容性测试矩阵操作系统x86(Intel)x86(兆芯)ARM(鲲鹏)龙芯(LoongArch)Windows✔️✔️N/AN/A银河麒麟✔️✔️✔️✔️统信UOS✔️✔️✔️✔️中标麒麟✔️✔️✔️✔️2. IE8兼容方案// ie8-compat.jsif(typeofdocument.createElement(canvas).getContextundefined){// IE8及以下浏览器polyfilldocument.write(\/script);document.write(script src/lib/es5-sham.min.js\/script);document.write(script src/lib/respond.min.js\/script);document.write(script src/lib/excanvas.compiled.js\/script);// 加载TinyMCE的IE8专用版本window.tinyMCEPreInit{base:/lib/tinymce-ie8,suffix:.min};}六、项目实施计划1. 时间规划阶段时间交付物厂商产品验证2周验证报告系统集成开发4周集成版本信创环境测试3周测试报告用户验收测试2周UAT报告上线部署1周部署文档2. 风险与应对风险点应对措施国产插件与TinyMCE兼容问题厂商提供定制支持IE8下性能问题优化加载策略使用轻量级组件信创环境字体渲染差异内置常用政府公文字体大文档导入内存溢出分块处理流式解析七、商务与合同建议授权条款永久授权不限项目数量包含3年免费技术支持源代码托管可选付款方式30%预付款40%验收付款30%尾款3个月质保期后验收标准功能验收清单性能指标如支持100MB文档导入信创环境测试报告八、总结与建议经过全面调研和技术评估我建议采用国产编辑器厂商的方案A理由如下完全合规满足信创所有硬指标要求避免项目风险成本可控一次性买断授权在预算范围内长期成本最优自主可控提供源代码避免被厂商锁定服务保障本地化团队支持响应速度快实施过程中需要重点关注与现有TinyMCE编辑器的无缝集成IE8下的用户体验优化多信创环境的充分测试建议立即启动与厂商的技术对接和商务谈判争取在本季度内完成项目实施为后续政府项目投标提供有力的技术支撑。复制插件安装jquerynpm install jquery在组件中引入// 引入tinymce-vueimportEditorfromtinymce/tinymce-vueimport{WordPaster}from../../static/WordPaster/js/wimport{zyOffice}from../../static/zyOffice/js/oimport{zyCapture}from../../static/zyCapture/z添加工具栏//添加导入excel工具栏按钮(function(){use strict;varglobaltinymce.util.Tools.resolve(tinymce.PluginManager);functionselectLocalImages(editor){WordPaster.getInstance().SetEditor(editor).importExcel()}varregister$1function(editor){editor.ui.registry.addButton(excelimport,{text:img src/static/WordPaster/plugin/excel.png/,tooltip:导入Excel文档,onAction:function(){selectLocalImages(editor)}});editor.ui.registry.addMenuItem(excelimport,{text:img src/static/WordPaster/plugin/excel.png/,tooltip:导入Excel文档,onAction:function(){selectLocalImages(editor)}});};varButtons{register:register$1};functionPlugin(){global.add(excelimport,function(editor){Buttons.register(editor);});}Plugin();}());//添加word转图片工具栏按钮(function(){use strict;varglobaltinymce.util.Tools.resolve(tinymce.PluginManager);functionselectLocalImages(editor){WordPaster.getInstance().SetEditor(editor);WordPaster.getInstance().importWordToImg()}varregister$1function(editor){editor.ui.registry.addButton(importwordtoimg,{text:img src/static/WordPaster/plugin/word1.png/,tooltip:Word转图片,onAction:function(){selectLocalImages(editor)}});editor.ui.registry.addMenuItem(importwordtoimg,{text:img src/static/WordPaster/plugin/word1.png/,tooltip:Word转图片,onAction:function(){selectLocalImages(editor)}});};varButtons{register:register$1};functionPlugin(){global.add(importwordtoimg,function(editor){Buttons.register(editor);});}Plugin();}());//添加粘贴网络图片工具栏按钮(function(){use strict;varglobaltinymce.util.Tools.resolve(tinymce.PluginManager);functionselectLocalImages(editor){WordPaster.getInstance().SetEditor(editor);WordPaster.getInstance().UploadNetImg()}varregister$1function(editor){editor.ui.registry.addButton(netpaster,{text:img src/static/WordPaster/plugin/net.png/,tooltip:网络图片一键上传,onAction:function(){selectLocalImages(editor)}});editor.ui.registry.addMenuItem(netpaster,{text:img src/static/WordPaster/plugin/net.png/,tooltip:网络图片一键上传,onAction:function(){selectLocalImages(editor)}});};varButtons{register:register$1};functionPlugin(){global.add(netpaster,function(editor){Buttons.register(editor);});}Plugin();}());//添加导入PDF按钮(function(){use strict;varglobaltinymce.util.Tools.resolve(tinymce.PluginManager);functionselectLocalImages(editor){WordPaster.getInstance().SetEditor(editor);WordPaster.getInstance().ImportPDF()}varregister$1function(editor){editor.ui.registry.addButton(pdfimport,{text:img src/static/WordPaster/plugin/pdf.png/,tooltip:导入pdf文档,onAction:function(){selectLocalImages(editor)}});editor.ui.registry.addMenuItem(pdfimport,{text:img src/static/WordPaster/plugin/pdf.png/,tooltip:导入pdf文档,onAction:function(){selectLocalImages(editor)}});};varButtons{register:register$1};functionPlugin(){global.add(pdfimport,function(editor){Buttons.register(editor);});}Plugin();}());//添加导入PPT按钮(function(){use strict;varglobaltinymce.util.Tools.resolve(tinymce.PluginManager);functionselectLocalImages(editor){WordPaster.getInstance().SetEditor(editor);WordPaster.getInstance().importPPT()}varregister$1function(editor){editor.ui.registry.addButton(pptimport,{text:img src/static/WordPaster/plugin/ppt.png/,tooltip:导入PowerPoint文档,onAction:function(){selectLocalImages(editor)}});editor.ui.registry.addMenuItem(pptimport,{text:img src/static/WordPaster/plugin/ppt.png/,tooltip:导入PowerPoint文档,onAction:function(){selectLocalImages(editor)}});};varButtons{register:register$1};functionPlugin(){global.add(pptimport,function(editor){Buttons.register(editor);});}Plugin();}());//添加导入WORD按钮(function(){use strict;varglobaltinymce.util.Tools.resolve(tinymce.PluginManager);functionselectLocalImages(editor){WordPaster.getInstance().SetEditor(editor).importWord()}varregister$1function(editor){editor.ui.registry.addButton(wordimport,{text:img src/static/WordPaster/plugin/word2.png/,tooltip:导入Word文档,onAction:function(){selectLocalImages(editor)}});editor.ui.registry.addMenuItem(wordimport,{text:img src/static/WordPaster/plugin/word2.png/,tooltip:导入Word文档,onAction:function(){selectLocalImages(editor)}});};varButtons{register:register$1};functionPlugin(){global.add(wordimport,function(editor){Buttons.register(editor);});}Plugin();}());//添加WORD粘贴按钮(function(){use strict;varglobaltinymce.util.Tools.resolve(tinymce.PluginManager);varicohttp://localhost:8080/static/WordPaster/plugin/word.pngfunctionselectLocalImages(editor){WordPaster.getInstance().SetEditor(editor).PasteManual()}varregister$1function(editor){editor.ui.registry.addButton(wordpaster,{text:img src/static/WordPaster/plugin/word.png/,tooltip:Word一键粘贴,onAction:function(){selectLocalImages(editor)}});editor.ui.registry.addMenuItem(wordpaster,{text:img src/static/WordPaster/plugin/word.png/,tooltip:Word一键粘贴,onAction:function(){selectLocalImages(editor)}});};varButtons{register:register$1};functionPlugin(){global.add(wordpaster,function(editor){Buttons.register(editor);});}Plugin();}());在线代码添加插件// 插件plugins:{type:[String,Array],// default: advlist anchor autolink autosave code codesample colorpicker colorpicker contextmenu directionality emoticons fullscreen hr image imagetools importcss insertdatetime link lists media nonbreaking noneditable pagebreak paste preview print save searchreplace spellchecker tabfocus table template textcolor textpattern visualblocks visualcharsdefault:autoresize code autolink autosave image imagetools paste preview table powertables},点击查看在线代码初始化组件// 初始化WordPaster.getInstance({// 上传接口http://www.ncmem.com/doc/view.aspx?idd88b60a2b0204af1ba62fa66288203edPostUrl:http://localhost:8891/upload.aspx,// 为图片地址增加域名http://www.ncmem.com/doc/view.aspx?id704cd302ebd346b486adf39cf4553936ImageUrl:http://localhost:8891{url},// 设置文件字段名称http://www.ncmem.com/doc/view.aspx?idc3ad06c2ae31454cb418ceb2b8da7c45FileFieldName:file,// 提取图片地址http://www.ncmem.com/doc/view.aspx?id07e3f323d22d4571ad213441ab8530d1ImageMatch:})在页面中引入组件templatedivclasshelloh1{{msg}}/h1TinymceEditor/TinymceEditor/div/template功能演示编辑器在编辑器中增加功能按钮导入Word文档,支持doc,docx导入Excel文档,支持xls,xlsx粘贴Word一键粘贴Word内容自动上传Word中的图片保留文字样式。Word转图片一键导入Word文件并将Word文件转换成图片上传到服务器中。导入PDF一键导入PDF文件并将PDF转换成图片上传到服务器中。导入PPT一键导入PPT文件并将PPT转换成图片上传到服务器中。上传网络图片一键自动上传网络图片。下载示例点击下载完整示例
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

兰陵网站建设泉州网站制作哪个好微

AI工具商业模式的终极指南:差异化竞争策略深度解析 【免费下载链接】context7-mcp Context7 MCP Server 项目地址: https://gitcode.com/gh_mirrors/co/context7-mcp 在当今AI工具市场竞争日益激烈的环境下,构建可持续的商业模式成为产品成功的关…

张小明 2026/1/10 18:38:23 网站建设

专业网站建设公司兴田德润信任高网页版网易云游戏

深入图解ESP32-CAM图像处理全流程:从像素采集到网络传输你有没有试过用一块不到30元的开发板,搭出一个能实时推流的无线摄像头?这不是科幻,而是ESP32-CAM每天都在做的事。这块小小的模块,集成了Wi-Fi、摄像头接口、SD卡…

张小明 2026/1/10 15:04:46 网站建设

美食网站开发环境做网站前需要准备什么条件

YOLOv8国内镜像源加速下载方法 在深度学习项目开发中,环境搭建往往比模型训练本身更让人头疼。尤其是当你满怀热情准备上手YOLOv8——这个当前最火的实时目标检测框架之一时,却被卡在第一步:pip install ultralytics 卡住不动、超时断连、下载…

张小明 2026/1/10 17:21:13 网站建设

网站开发与优化课程总结wordpress公司网站插件

西门子200SMART加显控触摸屏水处理程序案例控制系统程序,30吨双级反渗透加EDI工艺。 系统采用成熟、可靠、先进、自动化程度高的二级反渗透EDI除盐水处理工艺,确保处理后的超纯水水质确保处理后出水电阻率达到18.2MΩ.cm,采用PLC触摸屏控制&a…

张小明 2026/1/8 1:05:10 网站建设

简单做动画的网站php个人网站源码带音乐

在 Go 异步编程场景中,并发安全是绕不开的核心问题。传统的解决方案是使用互斥锁(sync.Mutex)、读写锁(sync.RWMutex)等同步原语,但锁机制在高并发场景下容易出现阻塞、死锁、优先级反转等问题,…

张小明 2026/1/9 19:02:24 网站建设

那个网站做的调查准确北京旅游网页设计

OpenAI gpt-oss-20b支持13万token上下文 在大模型越来越“重”的今天,我们却看到一种反向趋势正在悄然兴起:不是谁的参数更多,而是谁能用更少的资源做更多的事。当主流目光还聚焦于千亿级“巨兽”时,OpenAI悄悄推出了一款名为 gpt…

张小明 2026/1/9 11:17:13 网站建设