整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          一個支持將Html頁面轉為PDF的.Net開源項目

          一個支持將Html頁面轉為PDF的.Net開源項目

          是編程樂趣,一個10年.Net開發經驗老程序員,點擊右上方“關注”,每天為你分享開源項目和編程知識。

          推薦一個可以將Html頁面轉為PDF的開源項目。

          01

          項目簡介

          這是一個基于.Net開發的開源項目,本質是用 Webkit 引擎將 HTML 頁面轉換為 PDF,可以用在控制臺、 Web 應用程序和 Web API中。

          02

          使用示例

          1、創建轉化器

          //同步轉化器
          var converter=new BasicConverter(new PdfTools());
          
          
          //異步轉化器
          var converter=new SynchronizedConverter(new PdfTools());

          在多線程程序和 Web 服務器中可以使用異步轉換器,避免轉換任務阻塞其他線程。

          2、定義文檔格式

          var doc=new HtmlToPdfDocument()
          {
              GlobalSettings={
                  ColorMode=ColorMode.Color,
                  Orientation=Orientation.Landscape,
                  PaperSize=PaperKind.A4Plus,
              },
              Objects={
                  new ObjectSettings() {
                      PagesCount=true,
                      HtmlContent=@"<h1>標題1</h1>
                                      內容內容內容內容內容內容內容內容內容內容",
                      WebSettings={ DefaultEncoding="utf-8" },
                      HeaderSettings={ FontSize=9, Right="Page [page] of [toPage]", Line=true, Spacing=2.812 }
                  }
              }
          }

          3、轉換

          byte[] pdf=converter.Convert(doc);
          
          
          if (!Directory.Exists("Files"))
          {
              Directory.CreateDirectory("Files");
          }
          
          
          using (FileStream stream=new FileStream(@"Files\" + DateTime.UtcNow.Ticks.ToString() + ".pdf", FileMode.Create))
          {
              stream.Write(pdf, 0, pdf.Length);
          }

          效果如下:

          03

          項目地址

          https://github.com/rdvojmoc/DinkToPdf

          點贊收藏私信回復:【888】,領取.Net視頻教程。

          - End -

          推薦閱讀

          一個用于操作Excel文件的.NET開源庫

          基于ASP.NET MVC開發的、開源的個人博客系統

          推薦一個Star 1.3K報表.Net開源項目

          .Net開發的跨平臺Word模板引擎
          基于.NetCore開源的Windows的GIF錄屏工具

          SP.NET 是一個使用 HTML、CSS、JavaScript 和服務器腳本創建網頁和網站的開發框架。

          ASP.NET 支持三種不同的開發模式:

          Web Pages(Web 頁面)、MVC(Model View Controller 模型-視圖-控制器)、Web Forms(Web 窗體):

          Web PagesMVCWeb Forms

          從何入手?

          多數開發人員學習一個新技術,是從查看運行實例開始的。


          通過"運行實例"輕松學習

          我們的"運行實例"工具讓 Web Pages 變得更簡單易學。

          它在運行實例的同時顯示 ASP.NET 代碼和 HTML 輸出。

          點擊"運行實例"按鈕來看看它是如何工作的:

          Web Pages 實例

          <html>

          <body>

          <h1>Hello Web Pages</h1>

          <p>The time is @DateTime.Now</p>

          </body>

          </html>

          運行實例 ?


          什么是 Web Pages?

          Web Pages 是三種創建 ASP.NET 網站和 Web 應用程序的編程模式中的一種。

          其他兩種編程模式是 Web Forms 和 MVC(Model View Controller 模型-視圖-控制器)。

          Web Pages 是開發 ASP.NET 網頁最簡單的開發模式。它提供了一種簡單的方式來將 HTML、CSS、JavaScript 和服務器腳本結合起來:

          • 容易學習,容易理解,容易使用

          • 圍繞著單一的網頁創建

          • 與 PHP 和經典 ASP 相似

          • Visual Basic 或者 C# 的服務器腳本

          • 全 HTML、CSS 和 JavaScript 控制

          Web Pages 內置了數據庫、視頻、圖形、社交媒體和其他更多的 Web Helpers,因此很容易擴展。


          Web Pages

          如果您剛接觸 ASP.NET ,建議從 Web Pages 開始學習。

          在我的 Web Pages 中,您將學習到如何使用 VB(Visual Basic) 或者 C#(C sharp) 最新的 Razor 服務器標記語法將 HTML、CSS、JavaScript 和服務器代碼結合起來。

          您也可以學習如何使用具有可編程的 Web Helpers(包括數據庫、視頻、圖形、社交媒體等等)來擴展您的網頁。


          Web Pages 實例

          通過實例學習!

          由于 ASP.NET 代碼是在服務器上執行的,您不能在您的瀏覽器中查看代碼。您只能看到普通的 HTML 頁面輸出。

          每個實例都會把隱藏的 ASP.NET 代碼顯示出來,這將讓您更容易地理解它是如何工作的。

          Web Pages 實例


          Web Pages 參考手冊

          在最后,您將看到一套完整的 ASP.NET 參考手冊,介紹了對象、組件、屬性和方法。

          Web Pages 參考手冊


          使用 WebMatrix

          我們使用了 WebMatrix 。

          WebMatrix 是一個簡單但功能強大的,由微軟專門為 Web Pages 量身定做的,免費的 ASP.NET 開發工具。

          WebMatrix 包含:

          • Web Pages 實例和模板

          • 一種 Web 服務器語言(VB 或者 C# 的 Razor 服務器標記語法)

          • 一種 Web 服務器(IIS Express)

          • 一種數據庫服務器(SQL Server Compact)

          • 一個完整的 Web 開發框架(ASP.NET)

          通過使用 WebMatrix ,您可以從一個空的網站和一個空白頁面開始開發,或者您也可以使用"Web 應用程序庫"中的開源應用程序進行二次開發。PHP 和 ASP.NET 應用程序很多都是開源的,比如 Umbraco、DotNetNuke、Drupal、Joomla、WordPress 等等。WebMatrix 也有內置安全性、搜索引擎優化和網絡出版工具。

          使用 WebMatrix 開發的技術和代碼可以無縫地轉化為完全專業化的 ASP.NET 應用程序。

          如果您想嘗試使用 WebMatrix ,請點擊下面的鏈接進行安裝:

          http://www.microsoft.com/web/gallery/install.aspx?appid=WebMatrix

          需編程,零成本!只需挑選一個主題,經過配置,加入內容即可。

          作者 | Stephen Vinouze

          譯者 | 彎月,責編 | 郭芮

          頭圖 | CSDN 下載自東方IC

          出品 | CSDN(ID:CSDNnews)

          以下為譯文:

          創建一個網站的工作量不容小覷。即便你擁有編程背景,也有可能在網絡上迷失方向,究竟從何處下手呢?

          我可以在此承諾,讀完本文,你的收獲包括:

          • 一個免費的優雅網站,甚至無需托管。

          • 一個評論框,讓讀者與你互動。

          • 一個郵件訂閱列表,用于通知用戶你新發布的內容。

          • 使用分析工具來跟蹤讀者的行為。

          • 以及其他高級的主題。

          首先給你看一下我最近構建的網站(https://www.stephenvinouze.com/),很酷吧?

          我花了大量時間整理和研究有關靜態網站生成器的文章。本文匯總了我獲取的所有信息,希望能為你呈現一份完整的指南。

          下面,我們開始吧!

          前提條件

          剛才我曾說構建新網站不需要花費1分錢,這要感謝GitHub Pages(https://pages.github.com/)。

          你只需創建一個GitHub賬號,即可免費托管你的網站。版本管理與部署的工作可以全權委托給Github。非常方便!

          你甚至不需要懂得HTML或CSS,盡管了解這些更好。GitHub Pages使用Jekyll將Markdown文件轉換成HTML,所以你只需要關注內容即可。

          所以前提條件是:

          1. 擁有GitHub賬號。

          2. 了解Git的基本知識。不需要是專家,甚至可以直接在GitHub的Web界面上操作。

          3. 了解怎樣書寫Markdown,通過官方的速查表(https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet)分分鐘就能學會。

          如果這些都沒問題,那么我們就來看看最激動人心的部分吧!

          選擇主題

          這是本文最重要的部分!你可以慢慢選擇最適合需要的模板。

          你可以找到一大堆免費的主題。這些主題都有詳盡的文檔,適用于各種情況,不論你想建立個人博客,還是建立個人主頁。當然你也可以花錢選擇付費主題。

          例如,我的博客選擇了Mediumish主題。感謝WowThemes免費提供了這個優秀的主題。

          瀏覽這些主題,點擊“Live Demo”按鈕可以看到實時的預覽。找到你想要的那個!

          部署網站

          假設你已經建好了GitHub賬號。仔細看看GitHub Pages的文檔就會知道(https://pages.github.com/),你應該建立一個Git倉庫,取名為your_username.github.io。

          我們跳過這些設置的步驟。畢竟,我們選擇主題的目的就是為了跳過這些設置步驟。你可不想在設置上花費一整天。

          根據你選擇的模板的Git倉庫建立分叉。模板頁面上應該有一個鏈接,點擊后就能創建一個復制的Git倉庫,你可以在這個倉庫中寫入內容。

          分叉之后,你需要將這個倉庫的名字改成your_username.github.io。點擊“Settings”,然后重命名倉庫:

          試試看!你的網站應該已經可以使用了!在瀏覽器中打開一個新的頁面,輸入URL:http://your_username.github.io/ (將your_username替換為你的用戶名)。

          如果還有疑問,可以比較一下你和我的代碼庫。

          https://github.com/StephenVinouze/stephenvinouze.github.io

          準備自己的版本

          GitHub會從master分支部署網站。記住,推送到master上的任何修改都會導致網站重新部署。

          所以在開始之前,我建議你先創建一個develop分支。在將develop合并到master之前,所有的改變都不會影響網站的內容。

          使用develop分支,你可以嘗試任何東西而不用擔心把網站搞壞。

          測試改動

          你肯定想看看develop分支的改動會對網站產生什么影響。我們可以在本地部署。打開控制臺,在你克隆git倉庫的地方輸入下列命令:

          $ bundle exec jekyll serve -- watch

          然后用瀏覽器打開這個地址:http://localhost:4000/

          你可以一直保留這個終端窗口,網站就會在你自己的機器上一直運行,直到你關閉為止。

          配置網站

          現在你的網站還只是一個空殼,我們來添加一些內容。

          注意:我建議把這篇文章當作一個指南。并非所有主題的配置都一樣。如果你選的主題和我選的不一樣,那么我在文章里寫的并不一定適合你。請仔細閱讀主題本身的文檔。

          首先,我們來看看_config.yml文件,這里有許多神奇的配置。有幾個參數需要按照自己的需要更新。

          你可以自行配置一些東西,例如:

          • 聯系信息

          • 頭像

          • 社交網絡鏈接

          重啟Jekyll進程,然后刷新頁面,就能看到修改的效果。

          需要提醒你,在改變_config.yml文件后,必須重新啟動Jekyll才能看到效果。對于其他文件的改動則只需要刷新頁面即可。

          發布文章

          現在可以將模板上的文章替換為你自己的文章了。

          在開始之前,要理解Jekyll的命名規范。所有文章必須:

          1. 保存在_posts文件夾下

          2. 命名為yyyy-mm-dd-name-of-your-post.md格式

          3. 用Markdown語言編寫(即擴展名.md的含義)

          試試看!在_posts目錄下用適當的名字創建一個文件。然后,刷新瀏覽器就能看到你的文章顯示在網站上。

          “如果我的有些文章已經發表在Medium上,想轉換成Markdown怎么辦?”

          有幾個解決方案。我推薦使用這個十分好用的轉換器(https://medium-to-markdown.now.sh/)。

          需要提醒的是,它無法處理Gist,所以你需要手工提取Gist。但并不復雜,只需右鍵點擊Medium中的Gist然后將其中包含的<script>標簽中的鏈接提取出來即可。

          與讀者互動

          許多主題都支持Disqus(https://disqus.com/)。這個服務可以在你的網頁上添加一個評論區。配置方法如下:

          1. 創建一個Disqus賬號,可以先選擇免費的套餐。

          2. 用網站名作為唯一的ID,輸入網站的URL。

          3. 將_config.yml中的Disqus值替換成你的Disqus網站名。

          下面的截圖中可以看到我的網站Disqus配置。在我的_config.yml文件中,我將Disqus值設置為stephenvinouze:

          你也許注意到我的URL并不是https://stephenvinouze.github.io。我稍后會解釋為什么。現在你應該使用你的GitHub URL。

          還有,你應該注意Disqus永遠不會在你的本地工作,因為你上面指定的是正式網站的地址。

          請記住,你現在修改的還是develop分支。如果你已經提交并推送了你已經完成的修改(你應該這么做),你的網站并不會被重新部署。如果想檢查Disqus是否正常工作,就必須將develop合并到master。然后可以訪問正式網站的URL(網站部署可能需要一些時間)。

          你應該能看到下面的評論區:

          留住訪問者

          網站的第一要務就是存留率。你在與整個互聯網競爭,讓你的聲音能被全世界聽見。怎樣才能讓別人訪問你的網站?或者說,為什么他們會留在你的網站?

          也許你聽說過SEO。不幸的是,我對于這個話題并不熟悉。不過你能找到許多這方面的文章。有一些模板據說是SEO優化過的。不過我不會過于依賴這些模板。

          除了SEO之外,你還可以邀請訪問者繼續關注未來的文章。有幾種機制可以達到這一點。一種方法叫做Mailchimp(https://us18.admin.mailchimp.com/)。就像Disqus一樣,你可以嵌入一個HTML表單,這樣你在發布新文章的時候可以通知用戶。許多主題已經包含了Mailchimp。很方便吧?

          不過,Mailchimp的配置并不是太直觀。我花了很多時間嘗試搞明白他們的儀表板怎么用。

          我的主題要求我添加一個來自Mailchimp的訂閱列表鏈接。我假設你也遇到了同樣的要求,所以我將帶領你配置一下。

          就像Disqus一樣,首先需要創建一個賬號,選擇免費套餐,然后回答一些問題。

          選擇“Audience”。右側面板有一個“Manage Audience”。打開它,然后點擊“Signup forms”。

          選擇第一個叫做“Form builder”的項目。這里你可以收到訂閱表單。用戶點擊網站的“訂閱”按鈕時就會看到這個頁面。你可以進行一些定制。

          Mailchimp可以讓你修改表單的布局,以及你希望用戶填寫的字段。如果你想把用戶嚇跑,就保持表單盡可能簡潔。一個電子郵件字段就足夠了。

          要把表單連接到網站上,只需復制“Signup form URL”中顯示的短鏈接。在瀏覽器中打開,看看表單的實際樣子。你可以將完整的URL復制到你的項目中,完成這個配置。

          如果你還想深入,可以定制一下其他表單。在同一個網頁上,找到頂端的“Signup form”面板。這個下拉列表列出了所有訪問者通過郵件列表與你交流時能夠看到的表單。

          創意的工作就交給你自己了。到這里為止,你的郵件列表訂閱應該可以工作了。別忘了將修改合并到master分支來應用這些修改。

          跟蹤用戶

          跟蹤是用戶看不到的一部分工作,但你絕不能忽視它。

          Google Analytics可以幫你分析用戶的行為。你可以了解用戶如何訪問你的網站,哪篇文章的效果最好。

          絕大多數模板都集成了Google Analytics來跟蹤網頁瀏覽。如果你的模板沒有,可以參考這篇文章:

          https://desiredpersona.com/google-analytics-jekyll/

          你需要指定一個Google Analytics ID。也許這看起來有些無聊,但我們需要重復在Disqus和Mailchimp上進行過的操作。你會被重定向到這個頁面,該頁面上可以找到TrackingID。在下面的截圖上可以看出,我的是UA-166933112-1。將其復制到你的_config.yml文件中,就搞定了。

          同樣,別忘了將修改合并到master。重新部署后,嘗試瀏覽幾篇文章。你應該能在Google Analytics的實時儀表板中看到點擊次數的增加。

          福利:自定義域名

          到這里為止,你的網站就建好了。

          你的網站的地址為http://your_username.github.io/。但是如果能有一個更友好的域名該多好!

          GitHub Pages可以讓你指定自定義域名。對于我的網站來說,所有訪問http://stephenvinouze.github.io/的都會被重定向到https://www.stephenvinouze.com/。

          盡管我承諾這個網站是免費的,但這一步例外。你需要購買一個域名。

          如果你不想花錢, 則可以跳過這一步。但是,擁有自己的域名可以讓訪問者更容易找到你。這是你的網站的品牌。

          如果你想做這一步,你需要一個DNS供應商。我選擇了Google Domains,因為它:

          • 很容易配置

          • 可靠

          • 便宜(每年只需十幾歐元)

          購買域名之后,你需要將自定義域名關聯到你的GitHub賬號上。在本文開頭提到的編輯Git倉庫的同一個頁面上,向下滾動直到你看到這一節:

          用你購買的域名填寫“Custom domain”字段。我推薦勾選Enforce HTTPS。

          保存這些設置,然后進入Google Domain的控制臺。在“DNS”小節中,用你的記錄替換自定義記錄。可以參考這篇文章(https://medium.com/@hossainkhan/using-custom-domain-for-github-pages-86b303d3918a)。

          搞定了!試試看用新的URL訪問網站吧。

          注意新購買的域名可能需要最多一天時間才能訪問。我的花了大概一個小時。

          總結

          恭喜,你成功了!

          通過GitHub Pages可以如此輕松地構建網站,我對此非常驚訝。

          但是,我們不要忘記社區為我們開發了這些預配置的精良模板。為了感謝他們的辛勤工作,請在你的網站內注明模板出處,尤其是當遇到你非常喜歡的免費主題時,這也是支持他們努力的象征。

          原文:https://medium.com/better-programming/how-to-swiftly-launch-a-free-website-with-github-pages-9be6441fce61

          本文為 CSDN 翻譯,轉載請注明來源出處。

          ?劉強東賣光碟,周鴻祎“電腦算命”,馬云賣鮮花,盤點 IT 大佬擺過的地攤

          ?從地攤看云計算:規模產業歷程大揭秘

          ?頭條和百度“大打出手”時,微信搜索去哪兒了?

          ?怒肝 8 個月源碼,我成為了 Spring 開源貢獻者

          ?干貨 | 基于SRS直播平臺的監控系統之實現思路與過程

          ?挖礦仍然有利可圖嗎?


          主站蜘蛛池模板: 久久毛片免费看一区二区三区| 精品人妻无码一区二区三区蜜桃一 | 久久无码一区二区三区少妇| 国产色综合一区二区三区| 色婷婷亚洲一区二区三区| 国产精品一区二区久久不卡| 精品国产亚洲一区二区在线观看| 国产福利无码一区在线| 日本一区二区三区不卡视频 | 3d动漫精品啪啪一区二区中文| 国产一区二区免费在线| 在线视频亚洲一区| 日韩精品一区二三区中文| 日本一区二区三区在线看| 亚洲欧美一区二区三区日产| 精品无码成人片一区二区98| 亚洲国产精品自在线一区二区| 精品一区二区三区免费 | 亚洲高清成人一区二区三区| 亚洲中文字幕丝袜制服一区 | 亚洲变态另类一区二区三区| 日韩AV无码久久一区二区| 五十路熟女人妻一区二区| 91在线看片一区国产| 国产精品日本一区二区不卡视频| 三上悠亚日韩精品一区在线| 一区二区不卡久久精品| 果冻传媒董小宛一区二区| 熟女性饥渴一区二区三区| 国产一区二区三区在线免费 | 精品国产一区二区三区AV性色 | 亚洲国产系列一区二区三区| 国产亚洲福利一区二区免费看| 日本一区免费电影| 精品一区二区三区在线视频观看| 精品乱人伦一区二区| 精品一区二区三区免费视频 | 亚洲国产系列一区二区三区| 国产精品揄拍一区二区| 日韩精品一区二区三区老鸭窝| 国产精品视频分类一区|