{"id":5631,"date":"2025-06-12T11:07:49","date_gmt":"2025-06-12T03:07:49","guid":{"rendered":"https:\/\/support.fuxinsoft.cn\/?p=5631"},"modified":"2025-07-02T17:26:55","modified_gmt":"2025-07-02T09:26:55","slug":"websdk%e4%b8%ad%e5%a6%82%e4%bd%95%e8%87%aa%e5%ae%9a%e4%b9%89%e6%b3%a8%e9%87%8a%e5%ad%97%e4%bd%93%e5%88%97%e8%a1%a8%e7%9a%84%e6%98%be%e7%a4%ba%e9%a1%ba%e5%ba%8f","status":"publish","type":"post","link":"https:\/\/support.fuxinsoft.cn\/?p=5631","title":{"rendered":"WebSDK\u4e2d\u5982\u4f55\u81ea\u5b9a\u4e49\u6ce8\u91ca\u5b57\u4f53\u5217\u8868\u7684\u663e\u793a\u987a\u5e8f"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"5631\" class=\"elementor elementor-5631\" data-elementor-post-type=\"post\">\n\t\t\t\t<div class=\"elementor-element elementor-element-48db59b9 e-flex e-con-boxed e-con e-parent\" data-id=\"48db59b9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3140f53 elementor-widget elementor-widget-text-editor\" data-id=\"3140f53\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><strong>\u5b9e\u73b0\u6b65\u9aa4<\/strong><\/p>\n<p>1. \u76d1\u542c\u6ce8\u91ca\u53f3\u952e\u4e8b\u4ef6<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-41b26cf9 elementor-widget elementor-widget-text-editor\" data-id=\"41b26cf9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\n<p>\u798f\u6615PDF SDK\uff08Web\uff09\u4e2d\u9996\u5148\u9700\u8981\u76d1\u542c\u6ce8\u91ca\u7684\u53f3\u952e\u6309\u94ae\u70b9\u51fb\u4e8b\u4ef6\u3002\u7cfb\u7edf\u9ed8\u8ba4\u7684\u6ce8\u91ca\u5b57\u4f53\u5217\u8868\u5305\u542b\u591a\u79cd\u5b57\u4f53\u9009\u9879\u3002<\/p>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cdbdfa7 elementor-widget elementor-widget-code-highlight\" data-id=\"cdbdfa7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-default copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-javascript line-numbers\">\n\t\t\t\t<code readonly=\"true\" class=\"language-javascript\">\n\t\t\t\t\t<xmp> pdfui.eventEmitter.on(PDFViewCtrl.constants.ViewerEvents.rightClickAnnotation, rightClickCallback)\r\n        \r\nfunction rightClickCallback(annotRender,e) {   \r\n    \/\/do something\r\n    customizeAnnotMenu();            \r\n}<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dff1ab1 elementor-widget elementor-widget-text-editor\" data-id=\"dff1ab1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>2. \u5224\u65ad\u6ce8\u91ca\u7c7b\u578b\u5e76\u6dfb\u52a0\u83dc\u5355\u9690\u85cf\u76d1\u542c<\/p>\n<p>\u5f53\u53f3\u952e\u83dc\u5355\u663e\u793a\u7684\u662f\u4ee5\u4e0b\u6ce8\u91ca\u7c7b\u578b\u4e4b\u4e00\u65f6\uff1a<\/p>\n<ul>\n<li>\n<p class=\"ds-markdown-paragraph\">\u6253\u5b57\u673a\u6ce8\u91ca<\/p>\n<\/li>\n<li>\n<p class=\"ds-markdown-paragraph\">\u6ce8\u91ca\u6846<\/p>\n<\/li>\n<li>\n<p class=\"ds-markdown-paragraph\">\u6587\u672c\u6846<br \/>\u9700\u8981\u989d\u5916\u6dfb\u52a0\u4e00\u6b21\u76d1\u542c\u83dc\u5355\u9690\u85cf\u4e8b\u4ef6\u3002<\/p>\n<\/li>\n<\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1f4ad2d elementor-widget elementor-widget-code-highlight\" data-id=\"1f4ad2d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-default copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-javascript line-numbers\">\n\t\t\t\t<code readonly=\"true\" class=\"language-javascript\">\n\t\t\t\t\t<xmp>async function customizeAnnotMenu() { \r\n            \/\/ 1. \u83b7\u53d6Web SDK\u7684\u7f16\u8f91\u5668\u6839\u7ec4\u4ef6\uff08\u6d4f\u89c8\u5668\u73af\u5883\u539f\u751fPromise\u652f\u6301\uff09  \r\n            const root = await pdfui.getRootComponent();  \r\n            if (!root) throw new Error(\"Web SDK\u521d\u59cb\u5316\u5931\u8d25\");  \r\n\r\n            \/\/ 2. \u901a\u8fc7\u7ec4\u4ef6\u9009\u62e9\u5668\u5b9a\u4f4d\u6ce8\u91ca\u83dc\u5355\uff08\u57fa\u4e8eWeb Components\u6216\u7c7b\u540d\uff09  \r\n            contextMenu = await root.querySelector('fv--textbox-contextmenu');   \r\n\r\n            \/\/ 3. \u5224\u65ad\u6ce8\u91ca\u83dc\u5355\u7c7b\u578b\u662f\u5426\u662f\u6ce8\u91ca\u6846\u6587\u672c\u6846\u6253\u5b57\u673a\r\n            if (contextMenu) \r\n            {   \r\n                if (!contextMenu.isVisible) \r\n                {\r\n                    contextMenu = await root.querySelector('fv--typewriter-contextmenu');  \r\n                    if(!contextMenu.isVisible)\r\n                    {\r\n                        contextMenu = await root.querySelector('fv--callout-contextmenu');\r\n                        if(!contextMenu.isVisible)\r\n                        {\r\n                            \/\/\u518d\u627e\u4e00\u904dtextbox\u786e\u4fdd\u65e0\u8bef\r\n                            contextMenu = await root.querySelector('fv--textbox-contextmenu');  \r\n                            if(!contextMenu.isVisible)\r\n                            {\r\n                                return;\r\n                            }\r\n                        }                         \r\n                    }\r\n                }\r\n            }\r\n            else{\r\n                return;\r\n            }\r\n\r\n            \/\/ 4. \u6dfb\u52a0\u4e00\u6b21\u76d1\u542c\u9690\u85cf\u83dc\u5355\u4e8b\u4ef6\r\n            contextMenu.once(UIExtension.UIConsts.COMPONENT_EVENTS.HIDDEN,async function(){\r\n                    setTimeout(async() =&gt; {\r\n                        await setfontlist()\r\n                        console.log(\"\u7b49\u5f85\u65f6\u95f4\u7ed3\u675f\");\r\n                    }, 1000); \r\n            })\r\n\r\n            \/\/ 5. \u79fb\u9664\u53f3\u952e\u5c5e\u6027\u76d1\u542c\u4e8b\u4ef6\r\n            pdfui.eventEmitter.removeListener(PDFViewCtrl.constants.ViewerEvents.rightClickAnnotation, rightClickCallback)\r\n        }<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0e9d57f elementor-widget elementor-widget-text-editor\" data-id=\"0e9d57f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>3. \u8c03\u6574\u5b57\u4f53\u987a\u5e8f<\/p>\n<p class=\"ds-markdown-paragraph\">\u5728\u76d1\u542c\u4e8b\u4ef6\u56de\u8c03\u51fd\u6570\u4e2d\uff1a<\/p>\n<ul>\n<li>\n<p class=\"ds-markdown-paragraph\">\u5b9a\u4f4d\u5230\u5b57\u4f53\u4e0b\u62c9\u6846\u7684\u5217\u8868\u5143\u7d20<\/p>\n<\/li>\n<li>\n<p class=\"ds-markdown-paragraph\">\u67e5\u627e\u9700\u8981\u7f6e\u9876\u7684\u5b57\u4f53\u9879<\/p>\n<\/li>\n<li>\n<p class=\"ds-markdown-paragraph\">\u5c06\u8be5\u5b57\u4f53\u9879\u79fb\u52a8\u5230\u5217\u8868\u9996\u4f4d<\/p>\n<\/li>\n<\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3a79c03 elementor-widget elementor-widget-code-highlight\" data-id=\"3a79c03\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-default copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-javascript line-numbers\">\n\t\t\t\t<code readonly=\"true\" class=\"language-javascript\">\n\t\t\t\t\t<xmp>async function setfontlist()\r\n        {   \r\n            \/\/ \u627e\u5230\u4fee\u6539\u5b57\u4f53\u7684\u5143\u7d20\r\n            var d = await document.querySelector('[class=\"input-component font\"]')\r\n                 \r\n           \r\n            if(d)\r\n            {\r\n                \/\/ \u627e\u5230\u4fee\u6539\u5b57\u4f53\u5217\u8868\r\n                var ul =await d.querySelector('[class=\"fv__ui-dropdown-list\"]')\r\n                if(ul)\r\n                {\r\n                    \/\/\u627e\u5230\u9700\u8981\u4fee\u6539\u7684\u5b57\u4f53\r\n                    var shsv = await ul.querySelector('[aria-label=\"Noto Sans CJK TC Thin\"]')\r\n                    ul.removeChild(shsv);\r\n                    \/\/ \u5c06\u5143\u7d20\u6dfb\u52a0\u5230\u5217\u8868\u7684\u5f00\u5934\r\n                    ul.insertBefore(shsv, ul.firstElementChild);\r\n                }\r\n                else{\r\n                    console.log('\u5b57\u4f53\u5217\u8868\u672a\u627e\u5230')\r\n                }\r\n            }\r\n            else{\r\n                    console.log('\u5b57\u4f53\u5143\u7d20\u672a\u627e\u5230')\r\n            }    \r\n            \r\n        }<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5af3c3d elementor-widget elementor-widget-text-editor\" data-id=\"5af3c3d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>\u4fee\u6539\u524d\u5b57\u4f53\u987a\u5e8f\uff1a<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-035691e elementor-widget elementor-widget-image\" data-id=\"035691e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"682\" height=\"506\" src=\"https:\/\/support.fuxinsoft.cn\/wp-content\/uploads\/2025\/06\/\u5b57\u4f53\u5217\u8868\u4fee\u6539\u524d.png\" class=\"attachment-large size-large wp-image-5640\" alt=\"\" srcset=\"https:\/\/support.fuxinsoft.cn\/wp-content\/uploads\/2025\/06\/\u5b57\u4f53\u5217\u8868\u4fee\u6539\u524d.png 682w, https:\/\/support.fuxinsoft.cn\/wp-content\/uploads\/2025\/06\/\u5b57\u4f53\u5217\u8868\u4fee\u6539\u524d-300x223.png 300w\" sizes=\"(max-width: 682px) 100vw, 682px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9eb599c elementor-widget elementor-widget-text-editor\" data-id=\"9eb599c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>\u4fee\u6539\u540e\u5b57\u4f53\u987a\u5e8f\uff1a<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35a45e4 elementor-widget elementor-widget-image\" data-id=\"35a45e4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"695\" height=\"564\" src=\"https:\/\/support.fuxinsoft.cn\/wp-content\/uploads\/2025\/06\/\u4fee\u6539\u5b57\u4f53\u5217\u8868\u540e.png\" class=\"attachment-large size-large wp-image-5642\" alt=\"\" srcset=\"https:\/\/support.fuxinsoft.cn\/wp-content\/uploads\/2025\/06\/\u4fee\u6539\u5b57\u4f53\u5217\u8868\u540e.png 695w, https:\/\/support.fuxinsoft.cn\/wp-content\/uploads\/2025\/06\/\u4fee\u6539\u5b57\u4f53\u5217\u8868\u540e-300x243.png 300w\" sizes=\"(max-width: 695px) 100vw, 695px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5ea4e77 elementor-widget elementor-widget-text-editor\" data-id=\"5ea4e77\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><strong>\u7cfb\u7edf\u5b57\u4f53\u5217\u8868<\/strong><\/p>\n<p>\u5f53\u524dWebSDK\u652f\u6301\u7684\u5b8c\u6574\u5b57\u4f53\u540d\u79f0\u5982\u4e0b\uff1a<\/p>\n<p>ZapfDingbats<br \/>Symbol<br \/>Courier BoldOblique<br \/>Courier Oblique<br \/>Courier Bold<br \/>Courier<br \/>Helvetica BoldOblique<br \/>Helvetica Oblique<br \/>Helvetica Bold<br \/>Helvetica<br \/>Times BoldItalic<br \/>Times Italic<br \/>Times Bold<br \/>Times Roman<br \/>Noto Sans CJK JP DemiLight<br \/>Noto Sans Mono CJK JP Regular<br \/>Noto Sans Mongolian<br \/>Noto Naskh Arabic<br \/>Noto Sans Mono CJK TC Regular<br \/>Noto Sans Mono CJK SC Regular<br \/>Noto Sans CJK JP Light<br \/>Noto Sans CJK SC DemiLight<br \/>Noto Sans CJK KR<br \/>Noto Sans CJK KR Thin<br \/>Noto Sans CJK KR Light<br \/>Noto Sans CJK TC Light<br \/>Noto Serif Khmer<br \/>Noto Sans Ethiopic<br \/>Noto Sans CJK TC DemiLight<br \/>Noto Sans Sinhala<br \/>Noto Sans Gujarati<br \/>Noto Sans Tamil<br \/>Noto Sans Lao<br \/>Noto Sans SC Black<br \/>Noto Sans CJK JP Medium<br \/>Noto Sans Hebrew<br \/>Noto Serif Thai<br \/>Noto Sans Syriac Eastern<br \/>Noto Sans Khmer<br \/>Noto Sans Canadian Aboriginal<br \/>Noto Sans Yi<br \/>Noto Sans Telugu<br \/>Noto Sans Phags Pa<br \/>Noto Sans TC Light<br \/>Noto Serif Lao<br \/>Noto Sans CJK KR Medium<br \/>Noto Sans SC Medium<br \/>Noto Sans SC Light<br \/>Noto Sans Thaana<br \/>Noto Sans Tai Le<br \/>Noto Sans SC Thin<br \/>Noto Sans CJK TC Thin<br \/>Noto Sans CJK JP Thin<br \/>Noto Sans CJK JP Regular<br \/>Noto Sans Cherokee<br \/>Noto Sans Thai<br \/>Noto Sans CJK KR DemiLight<br \/>Noto Sans Mono CJK KR Regular<br \/>Noto Sans CJK TC Medium<br \/>Noto Sans Tibetan<br \/>Noto Sans<br \/>Noto Sans SC Regular<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u5b9e\u73b0\u6b65\u9aa4 1. \u76d1\u542c\u6ce8\u91ca\u53f3\u952e\u4e8b\u4ef6 \u798f\u6615PDF SDK\uff08Web\uff09\u4e2d\u9996\u5148\u9700\u8981\u76d1\u542c\u6ce8\u91ca\u7684\u53f3\u952e\u6309\u94ae\u70b9\u51fb\u4e8b\u4ef6\u3002\u7cfb\u7edf\u9ed8\u8ba4\u7684 [&hellip;]<\/p>\n","protected":false},"author":33,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[67],"tags":[715,212,595,714,709,713,711,710,712],"class_list":["post-5631","post","type-post","status-publish","format-standard","hentry","category-websdk","tag-dom","tag-javascript","tag-websdk","tag-714","tag-709","tag-713","tag-711","tag-710","tag-712"],"pp_statuses_selecting_workflow":false,"pp_workflow_action":"current","pp_status_selection":"publish","_links":{"self":[{"href":"https:\/\/support.fuxinsoft.cn\/index.php?rest_route=\/wp\/v2\/posts\/5631","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/support.fuxinsoft.cn\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/support.fuxinsoft.cn\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/support.fuxinsoft.cn\/index.php?rest_route=\/wp\/v2\/users\/33"}],"replies":[{"embeddable":true,"href":"https:\/\/support.fuxinsoft.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5631"}],"version-history":[{"count":30,"href":"https:\/\/support.fuxinsoft.cn\/index.php?rest_route=\/wp\/v2\/posts\/5631\/revisions"}],"predecessor-version":[{"id":5989,"href":"https:\/\/support.fuxinsoft.cn\/index.php?rest_route=\/wp\/v2\/posts\/5631\/revisions\/5989"}],"wp:attachment":[{"href":"https:\/\/support.fuxinsoft.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5631"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/support.fuxinsoft.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5631"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/support.fuxinsoft.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5631"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}