整合營銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          使用 MDwiki 將 Markdown 發(fā)布成 H

          使用 MDwiki 將 Markdown 發(fā)布成 HTML

          譯自: https://opensource.com/article/18/8/markdown-html-publishing

          作者: Peter Cheer

          譯者: geekpi

          用這個有用工具從 Markdown 文件創(chuàng)建一個基礎(chǔ)的網(wǎng)站。

          有很多理由喜歡 Markdown,這是一門簡單的語言,有易于學(xué)習(xí)的語法,它可以與任何文本編輯器一起使用。使用像 Pandoc 這樣的工具,你可以將 Markdown 文本轉(zhuǎn)換為 各種流行格式 ,包括 HTML。你還可以在 Web 服務(wù)器中自動執(zhí)行轉(zhuǎn)換過程。由 TimoD?rr 創(chuàng)建的名為 MDwiki 的 HTML5 和 JavaScript 應(yīng)用可以將一堆 Markdown 文件在瀏覽器請求它們時轉(zhuǎn)換為網(wǎng)站。MDwiki 網(wǎng)站包含一個操作指南和其他信息可幫助你入門:


          Mdwiki 網(wǎng)站的樣子。



          在 Web 服務(wù)器內(nèi)部,基本的 MDwiki 站點(diǎn)如下所示:


          該站點(diǎn)的 web 服務(wù)器文件夾的樣子



          我將此項目的 MDwiki HTML 文件重命名為 START.HTML。還有一個處理導(dǎo)航的 Markdown 文件和一個 JSON 文件來保存一些配置設(shè)置。其他的都是網(wǎng)站內(nèi)容。

          雖然整個網(wǎng)站設(shè)計被 MDwiki 固定了,但內(nèi)容、樣式和頁面數(shù)量卻沒有。你可以在 MDwiki 站點(diǎn) 查看由 MDwiki 生成的一系列不同站點(diǎn)。公平地說,MDwiki 網(wǎng)站缺乏網(wǎng)頁設(shè)計師可以實(shí)現(xiàn)的視覺吸引力 —— 但它們是功能性的,用戶應(yīng)該平衡其簡單的外觀與創(chuàng)建和編輯它們的速度和簡易性。

          Markdown 有不同的風(fēng)格,可以針對不同的特定目的擴(kuò)展穩(wěn)定的核心功能。MDwiki 使用 GitHub 風(fēng)格 Markdown ,它為流行的編程語言添加了格式化代碼塊和語法高亮等功能,使其非常適合生成程序文檔和教程。

          MDwiki 還支持 “gimmick”,它增加了如嵌入 YouTube 視頻和顯示數(shù)學(xué)公式等額外功能。如果在某些項目中需要它們,這些值得探索。我發(fā)現(xiàn) MDwiki 是創(chuàng)建技術(shù)文檔和教育資源的理想工具。我還發(fā)現(xiàn)了一些可能不會立即顯現(xiàn)出來的技巧和 hack。

          當(dāng)部署在 Web 服務(wù)器中時,MDwiki 可與任何現(xiàn)代 Web 瀏覽器一起使用。但是,如果你使用 Mozilla Firefox 訪問 MDwiki,那么就不需要 Web 服務(wù)器。大多數(shù) MDwiki 用戶會選擇在 Web 服務(wù)器上部署完整的項目,以避免排除潛在用戶,但只需使用文本編輯器和 Firefox 即可完成開發(fā)和測試。任何現(xiàn)代瀏覽器都可以讀取加載到 Moodle 虛擬學(xué)習(xí)環(huán)境(VLE)中的完整的 MDwiki 項目,這在教育環(huán)境中非常有用。 (對于其他 VLE 軟件,這可能也是如此,但你應(yīng)該測試它。)

          MDwiki 的默認(rèn)配色方案并非適用于所有項目,但你可以將其替換為從 Bootswatch.com 下載的其他主題。為此,只需在編輯器中打開 MDwiki HTML 文件,找到 extlib/css/bootstrap-3.0.0.min.css,然后插入下載的 Bootswatch 主題。還有一個 MDwiki gimmick,讓用戶在瀏覽器中載入 MDwiki 后,選擇 Bootswatch 主題來替換默認(rèn)值。我經(jīng)常與有視力障礙的用戶一起工作,他們傾向于喜歡高對比度的主題,在深色背景上使用白色文字。


          MDwiki 頁面使用 Bootswatch Superhero 主題



          MDwiki、Markdown 文件和靜態(tài)圖像可以用于許多目的。但是,你有時可能希望包含 JavaScript 幻燈片或反饋表單。Markdown 文件可以包含 HTML 代碼,但將 Markdown 與 HTML 混合會讓人感到困惑。一種解決方案是在單獨(dú)的 HTML 文件中創(chuàng)建所需的功能,并將其顯示在帶有 iframe 標(biāo)記的 Markdown 文件中。我從 Twine Cookbook 知道了這個想法,它是 Twine 交互式小說引擎的支持站點(diǎn)。Twine Cookbook 實(shí)際上并沒有使用 MDwiki,但結(jié)合 Markdown 和 iframe 標(biāo)簽開辟了廣泛的創(chuàng)作可能性。

          這是一個例子:

          此 HTML 將顯示由 Markdown 文件中的 Twine 交互式小說引擎創(chuàng)建的 HTML 頁面。

          <iframe height="400" src="sugarcube_dungeonmoving_example.html" width="90%"></iframe>

          MDwiki 生成的站點(diǎn)結(jié)果如下所示:



          簡而言之,MDwiki 是一個出色的小應(yīng)用,可以很好地實(shí)現(xiàn)其目的。


          via: https://opensource.com/article/18/8/markdown-html-publishing

          作者: Peter Cheer 選題: lujun9972 譯者: geekpi 校對: wxy

          本文由 LCTT 原創(chuàng)編譯, Linux中國 榮譽(yù)推出

          點(diǎn)擊“了解更多”可訪問文內(nèi)鏈接

          html實(shí)現(xiàn)本地文件的上傳,html實(shí)現(xiàn)文件上傳,html實(shí)現(xiàn)文件上傳解決方案,html實(shí)現(xiàn)文件上傳思路,html實(shí)現(xiàn)文件上傳實(shí)例,html實(shí)現(xiàn)文件上傳源碼,html實(shí)現(xiàn)文件分塊上傳,html實(shí)現(xiàn)文件分片上傳,html實(shí)現(xiàn)文件夾上傳,html實(shí)現(xiàn)文件加密上傳,


          要求操作便利,一次選擇多個文件和文件夾進(jìn)行上傳;

          支持PC端全平臺操作系統(tǒng),Windows,Linux,Mac

          支持文件和文件夾的批量下載,斷點(diǎn)續(xù)傳。刷新頁面后繼續(xù)傳輸。關(guān)閉瀏覽器后保留進(jìn)度信息。

          支持文件夾批量上傳下載,服務(wù)器端保留文件夾層級結(jié)構(gòu),服務(wù)器端文件夾層級結(jié)構(gòu)與本地相同。

          支持大文件批量上傳(20G)和下載,同時需要保證上傳期間用戶電腦不出現(xiàn)卡死等體驗(yàn);

          支持文件夾上傳,文件夾中的文件數(shù)量達(dá)到1萬個以上,且包含層級結(jié)構(gòu)。

          支持?jǐn)帱c(diǎn)續(xù)傳,關(guān)閉瀏覽器或刷新瀏覽器后仍然能夠保留進(jìn)度。

          支持文件夾結(jié)構(gòu)管理,支持新建文件夾,支持文件夾目錄導(dǎo)航

          交互友好,能夠及時反饋上傳的進(jìn)度;

          服務(wù)端的安全性,不因上傳文件功能導(dǎo)致JVM內(nèi)存溢出影響其他功能使用;

          最大限度利用網(wǎng)絡(luò)上行帶寬,提高上傳速度;

          對于大文件的處理,無論是用戶端還是服務(wù)端,如果一次性進(jìn)行讀取發(fā)送、接收都是不可取,很容易導(dǎo)致內(nèi)存問題。所以對于大文件上傳,采用切塊分段上傳

          從上傳的效率來看,利用多線程并發(fā)上傳能夠達(dá)到最大效率。

          文件上傳頁面的前端可以選擇使用一些比較好用的上傳組件,例如百度的開源組件WebUploader,這些組件基本能滿足文件上傳的一些日常所需功能,如異步上傳文件,文件夾,拖拽式上傳,黏貼上傳,上傳進(jìn)度監(jiān)控,文件縮略圖,甚至是大文件斷點(diǎn)續(xù)傳,大文件秒傳。

          在web項目中上傳文件夾現(xiàn)在已經(jīng)成為了一個主流的需求。在OA,或者企業(yè)ERP系統(tǒng)中都有類似的需求。上傳文件夾并且保留層級結(jié)構(gòu)能夠?qū)τ脩粜谐珊芎玫囊龑?dǎo),用戶使用起來也更方便。能夠提供更高級的應(yīng)用支撐。


          1.下載示例

          https://gitee.com/xproer/up6-vue-cli



          將up6組件復(fù)制到項目中

          示例中已經(jīng)包含此目錄



          1.引入up6組件



          2.配置接口地址

          接口地址分別對應(yīng):文件初始化,文件數(shù)據(jù)上傳,文件進(jìn)度,文件上傳完畢,文件刪除,文件夾初始化,文件夾刪除,文件列表

          參考:http://www.ncmem.com/doc/view.aspx?id=e1f49f3e1d4742e19135e00bd41fa3de



          3.處理事件



          啟動測試



          啟動成功



          效果



          數(shù)據(jù)庫



          源碼工程文檔:https://drive.weixin.qq.com/s?k=ACoAYgezAAw1dWofra

          源碼報價單:https://drive.weixin.qq.com/s?k=ACoAYgezAAwoiul8gl


          OEM版報價單:https://drive.weixin.qq.com/s?k=ACoAYgezAAwuzp4W0a

          產(chǎn)品源代碼:https://drive.weixin.qq.com/s?k=ACoAYgezAAwbdKCskc
          授權(quán)碼生成器:https://drive.weixin.qq.com/s?k=ACoAYgezAAwTIcFph1

          text

          官網(wǎng)地址 The Leading PDF Library for Developers | iTextSelect a value to filter the results.QuoteQuoteQuoteQuoteQuoteQuoteQuoteQuoteQuoteQuoteiText pdf on facebookiText pdf on twitteriText pdf on youtubeiText pdf on linkediniText pdf on stackoverflow

          重要說明

          主要依賴

                  <dependency>
                      <!-- 會自動引用 itext 其他庫,kernel,commons,io,forms,layout,svg,styled-xml-parser -->
                      <groupId>com.itextpdf</groupId>
                      <artifactId>html2pdf</artifactId>
                      <version>5.0.2</version>
                  </dependency>

          測試代碼

                  // 獲取 java 版本
                  String version=System.getProperty("java.specification.version");
          
                  // 獲取系統(tǒng)類型
                  String platform=System.getProperty("os.name", "");
                  platform=platform.toLowerCase().contains("window") ? "win" : "linux";
          
                  // 當(dāng)前程序目錄
                  String current=System.getProperty("user.dir");
          
                  System.out.println(String.format("current=%s", current));
          
                  // html 文件路徑
                  File index=Paths.get(current, "..", "index.html").toFile();
                  if (!index.exists()) {
                      System.out.println(String.format("file not exist,file=%s", index.getAbsolutePath()));
                      return;
                  }
          
                  try {
                      // 保存 pdf 文件路徑
                      File file=Paths.get(current, String.format("java%s_%s.pdf", version, platform)).toFile();
          
                      // 轉(zhuǎn)換設(shè)置
                      ConverterProperties options=new ConverterProperties();
          
                      // 設(shè)置根目錄類型
                      String baseUri=Paths.get(current, "..").toUri().toString();
                      options.setBaseUri(baseUri);
          
                      // 設(shè)置字體
                      FontProvider fontProvider=new FontProvider();
                      fontProvider.addStandardPdfFonts();
                      fontProvider.addSystemFonts();
                      options.setFontProvider(fontProvider);
          
                      // 轉(zhuǎn)換 html 文件
                      HtmlConverter.convertToPdf(index, file, options);
                  } catch (IOException e) {
                      throw new RuntimeException(e);
                  }

          效果預(yù)覽

          itext-demo/java1.8_win.pdf · yjihrp/linux-html2pdf-demo - Gitee.com

          itext-demo/java11_linux.pdf · yjihrp/linux-html2pdf-demo - Gitee.com

          測試結(jié)果

          測試結(jié)果

          下一篇 3-LINUX HTML 轉(zhuǎn) OPENPDF


          主站蜘蛛池模板: 中文字幕精品一区二区2021年| 亚洲欧洲∨国产一区二区三区| 成人国产精品一区二区网站| 国产成人一区二区三区电影网站| 亚洲线精品一区二区三区影音先锋| 性色av无码免费一区二区三区| 无码国产精品一区二区免费式芒果 | 精品成人一区二区三区免费视频| 亚洲AV综合色区无码一区| 区三区激情福利综合中文字幕在线一区亚洲视频1 | 国产成人一区二区三区视频免费| 国产伦精品一区二区三区免费下载 | 无码人妻一区二区三区av| 日韩一区二区三区无码影院| 精品日本一区二区三区在线观看| 国模精品一区二区三区视频| 亚洲欧美成人一区二区三区 | 无码精品人妻一区二区三区影院 | 亚洲欧洲一区二区三区| 国产无人区一区二区三区 | 亚洲一区二区三区AV无码| 国产精品主播一区二区| 一区二区高清视频在线观看| 色系一区二区三区四区五区| 精品一区二区三区在线观看l | 中文字幕在线精品视频入口一区 | 国产精品熟女视频一区二区| 国模大胆一区二区三区| 濑亚美莉在线视频一区| 国产裸体舞一区二区三区| 精品乱码一区内射人妻无码| 男人的天堂精品国产一区| 精品女同一区二区三区免费播放| 国产人妖视频一区在线观看| 一区二区三区在线播放| 亚洲日本一区二区三区在线| 亚洲日本一区二区| 一区二区亚洲精品精华液| 国产精品无码一区二区三区在| 影院无码人妻精品一区二区| 岛国无码av不卡一区二区|