<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hexo问题 on 随记</title><link>https://blog.liuyi2026.asia/zh/tags/hexo%E9%97%AE%E9%A2%98/</link><description>Recent content in Hexo问题 on 随记</description><generator>Hugo</generator><language>zh</language><lastBuildDate>Tue, 25 Apr 2023 09:31:50 +0000</lastBuildDate><atom:link href="https://blog.liuyi2026.asia/zh/tags/hexo%E9%97%AE%E9%A2%98/index.xml" rel="self" type="application/rss+xml"/><item><title>hexo在线查看pdf</title><link>https://blog.liuyi2026.asia/zh/docs/problem/Hexo/01/</link><pubDate>Tue, 25 Apr 2023 09:31:50 +0000</pubDate><guid>https://blog.liuyi2026.asia/zh/docs/problem/Hexo/01/</guid><description>&lt;h1 id="场景">场景&lt;a class="anchor" href="#%e5%9c%ba%e6%99%af">#&lt;/a>&lt;/h1>
&lt;p>由于在看《mysql是如何运行的》，做md文件笔记时，发现好多都是按pdf一字不漏打出来。所以想着能不能直接&lt;strong>本地编辑pdf&lt;/strong>，然后博客上支持&lt;strong>在线查看&lt;/strong>。&lt;/p>
&lt;blockquote class='book-hint '>
&lt;p>事后觉得这个方式有待斟酌，电脑上/平板上查看没啥问题，手机上查看字有点小，但也还能接受。==&amp;gt;待斟酌&lt;br>
不过下面的方案是可行的。&lt;/p>&lt;/blockquote>&lt;h1 id="准备">准备&lt;a class="anchor" href="#%e5%87%86%e5%a4%87">#&lt;/a>&lt;/h1>
&lt;p>需要到官网下载 pdf.js&lt;/p>
&lt;p>
&lt;a target="_blank" href="https://github.com/mozilla/pdf.js/releases">https://github.com/mozilla/pdf.js/releases&lt;/a> ，这里选择 v3.4.120中的
&lt;a target="_blank" href="https://github.com/mozilla/pdf.js/releases/download/v3.4.120/pdfjs-3.4.120-dist.zip">pdfjs-3.4.120-dist.zip&lt;/a> ，最新版本好像有问题&lt;/p>
&lt;h1 id="操作">操作&lt;a class="anchor" href="#%e6%93%8d%e4%bd%9c">#&lt;/a>&lt;/h1>
&lt;h2 id="pdfjs处理">pdfjs处理&lt;a class="anchor" href="#pdfjs%e5%a4%84%e7%90%86">#&lt;/a>&lt;/h2>
&lt;p>在source/下创建myjs/pdfjs文件夹，并解压到这个文件夹下&lt;br>
&lt;img src="img/ly-20241212141830564.png" alt="ly-20241212141830564" />&lt;/p>
&lt;p>修改pdfjs/web/viewer.js&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-javascript" data-lang="javascript">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">if&lt;/span> (&lt;span style="color:#a6e22e">fileOrigin&lt;/span> &lt;span style="color:#f92672">!==&lt;/span> &lt;span style="color:#a6e22e">viewerOrigin&lt;/span>) {&lt;span style="color:#75715e">//1563行左右
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>	&lt;span style="color:#66d9ef">throw&lt;/span> &lt;span style="color:#66d9ef">new&lt;/span> Error(&lt;span style="color:#e6db74">&amp;#34;file origin does not match viewer&amp;#39;s&amp;#34;&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">//注释掉，为了处理跨域问题，注释掉后允许在线访问其他网站的pdf
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// if (fileOrigin !== viewerOrigin) {
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">//	throw new Error(&amp;#34;file origin does not match viewer&amp;#39;s&amp;#34;);
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">//}
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="hexo配置修改">hexo配置修改&lt;a class="anchor" href="#hexo%e9%85%8d%e7%bd%ae%e4%bf%ae%e6%94%b9">#&lt;/a>&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yml" data-lang="yml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># 找到# Directory下的skip_render项，添加忽略渲染的文件夹&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">skip_render&lt;/span>: [&lt;span style="color:#e6db74">&amp;#39;myjs/pdfjs/**/*&amp;#39;&lt;/span>]&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="清理hexo中public及其他缓存文件">清理hexo中public及其他缓存文件&lt;a class="anchor" href="#%e6%b8%85%e7%90%86hexo%e4%b8%adpublic%e5%8f%8a%e5%85%b6%e4%bb%96%e7%bc%93%e5%ad%98%e6%96%87%e4%bb%b6">#&lt;/a>&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-shell" data-lang="shell">&lt;span style="display:flex;">&lt;span> hexo clean &amp;amp; hexo g&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h1 id="文件预览测试">文件预览测试&lt;a class="anchor" href="#%e6%96%87%e4%bb%b6%e9%a2%84%e8%a7%88%e6%b5%8b%e8%af%95">#&lt;/a>&lt;/h1>
&lt;h2 id="本地文件">本地文件&lt;a class="anchor" href="#%e6%9c%ac%e5%9c%b0%e6%96%87%e4%bb%b6">#&lt;/a>&lt;/h2>
&lt;p>我们在hexo的source文件夹下，放置这样一个文件： source/pdf/my.pdf&lt;br>
&lt;img src="img/ly-20241212141830812.png" alt="ly-20241212141830812" />&lt;/p>
&lt;h3 id="md文件修改">MD文件修改&lt;a class="anchor" href="#md%e6%96%87%e4%bb%b6%e4%bf%ae%e6%94%b9">#&lt;/a>&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-shell" data-lang="shell">&lt;span style="display:flex;">&lt;span>&amp;lt;iframe src&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;/myjs/pdfjs/web/viewer.html?file=/pdf/my.pdf&amp;#39;&lt;/span> style&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#34;padding: 0;width:100%;&amp;#34;&lt;/span> marginwidth&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#34;0&amp;#34;&lt;/span> frameborder&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#34;no&amp;#34;&lt;/span> scrolling&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#34;no&amp;#34;&lt;/span> height&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#34;2000px&amp;#34;&lt;/span>&amp;gt;&amp;lt;/iframe&amp;gt;&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="操作并查看">操作并查看&lt;a class="anchor" href="#%e6%93%8d%e4%bd%9c%e5%b9%b6%e6%9f%a5%e7%9c%8b">#&lt;/a>&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-shell" data-lang="shell">&lt;span style="display:flex;">&lt;span>hexo g &amp;amp; hexo s&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>&lt;img src="img/ly-20241212141831013.png" alt="ly-20241212141831013" />&lt;/p></description></item></channel></rss>