洋葱海外仓加盟sinaAPP最新版什么地方下载?

问说网手机版
躺着 站着 跪着轻松访问
问说网 / 蜀ICP备号
感谢您对问说网的支持,提出您在使用过程中遇到的问题或宝贵建议,您的反馈对我们产品的完善有很大帮助。
您的反馈我们已收到!
感谢您提供的宝贵意见,我们会在1-2个工作日,通过您留下的联系方式将处理结果反馈给您!最近由于项目需要,要用到把markdown转换成pdf文件下载下来,最开始的时候想到的是先把markdown转成html,用到的是Parsedown;然后再将html转成pdf,用到了html2pdf,这是两个php的类库,安装起来十分简单,只需要用composer安装即可。
"require": {
  "spipu/html2pdf": "^4.6",
  "erusev/parsedown": "^1.6"
将这两句加入到composer.json中,运行composer install。这样在vendor中会多处三个文件夹:erusev,spipu,tecnickcom。
下面是php的部分代码:
    $result = Parsedown::instance()-&parse($comtent);//$content是从数据库取出的markdown的东西
$html2pdf = new HTML2PDF('P', 'A4', 'fr', true, 'UTF-8', 3);
$html2pdf-&SetDefaultFont('droidsansfallback');//设置字体,这个字体需要自己去添加,因为html2pdf本身是不支持中文的,会出现乱码,你需要把droidsansfallback.php、droidsansfallback.z以及droidsansfallback.ctg.z(可以百度到的)这三个文件复制到 TCPDF\fonts 下面即可。      //html2pdf中文支持底层是TCPDF实现的,在执行composer install的时候会自动安装上tcpdf.
$html2pdf-&writeHTML($result);
$html2pdf-&Output('a.pdf');输出a.pdf文件,直接下载了。
这样试一试真的可以下载pdf文件了。。。但是,你会发现中文都没有换行。这是一个大坑,我在网上找了好多资料都没有好的解决办法;
暂时不提这个,接着我们还有个需求就是需要批量下载,这是我遇到的第二个坑,html2pdf没有生成pdf文件,而是直接通过header()函数发送到浏览器(这个你可以查看$html2pdf-&Output()这个函数源码),所以批量下载也会有很多麻烦。
其次当你的md中有代码的时候,也就是转化的html有这样的标签,&pre&&code&测试&/code&&/pre&,中文就会出现乱码,这个即便你已经设置了中文字体也会出现。
经历了这些,我果断放弃了这种方法。但是,总会有其他的办法的,于是我找到了pandoc。
我简单介绍一下这个东西,它被称作是一款神器
它可以把markdown、 reStructuredText、 textile、 HTML、或者LaTeX转换成:
HTML格式: XHTML, HTML5, 以及HTML幻灯片Slidy, S5,或者DZSlides.
文字处理软件格式: Microsoft Word docx, OpenOffice/LibreOffice ODT, OpenDocument XML
电子书: EPUB
文档格式: DocBook, GNU TexInfo, Groff man pages
TeX格式: LaTeX, ConTeXt, LaTeX Beamer slides
PDF via LaTeX
轻量级标记语言格式: Markdown, reStructuredText, AsciiDoc, MediaWiki markup, Emacs Org-Mode, Textile。
我的是mac环境,所以安装pandoc:
brew install pandoc
pandoc 在生成pdf时需要借助laTex排版引擎,不建议安装精简版的,因为这样还需要安装各种依赖包;我直接安装了mactex(挺大的大概两个多GB),这时候我们就可以借助命令行生成生成pdf了,是不是有点小激动呢~
pandoc --latex-engine=xelatex -V mainfont='STSong' --template=pandoc/pm-template a.md -o a.pdf
//STSong是mac中的一种中文字体,这个字体一定要保证你的电脑上有才行
$stream = fopen(a.md, "w+");//生成a.md文件
fwrite($stream,$content);//将md内容写到该文件中
exec('pandoc --latex-engine=xelatex -V mainfont=\'STSong\' --template=my a.md -o a.pdf',$output,$return_val);//执行转化命令,--latex-engine=xelatex 指定排版引擎为 xelatex ,为什么?因为默认的排版引擎不支持中文.
以下是我提供的my.latex模版
\documentclass[$if(fontsize)$$fontsize$,$endif$$if(lang)$$lang$,$endif$$if(papersize)$$papersize$,$endif$]{$documentclass$}
\usepackage{geometry}
% 設定邊界
\geometry{
inner=1in,
outer=1in,
bottom=1in,
headheight=3ex,
headsep=2ex
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{amssymb,amsmath}
\usepackage{ifxetex,ifluatex}
\usepackage{fixltx2e} % provides \textsubscript
% use upquote if available, for straight quotes in verbatim environments
\IfFileExists{upquote.sty}{\usepackage{upquote}}{}
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
\usepackage[utf8]{inputenc}
$if(euro)$
\usepackage{eurosym}
\else % if luatex or xelatex
\usepackage{fontspec}
% 允許設定字體
\usepackage{xeCJK}
% 分開設置中英文字型
\setCJKmainfont{STSong}
% 設定中文字型
\setmainfont{Georgia}
% 設定英文字型
\setromanfont{Georgia}
\setmonofont{Courier New}
\linespread{1.2}\selectfont
\XeTeXlinebreaklocale "zh"
% 針對中文自動換行
\XeTeXlinebreakskip = 0pt plus 1pt % 字與字之間加入0pt至1pt的間距,確保左右對整齊
\parindent 0em
% 段落縮進
\setlength{\parskip}{20pt}
% 段落之間的距離
\usepackage{xltxtra,xunicode}
\defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
\newcommand{\euro}{&}
$if(mainfont)$
\setmainfont{$mainfont$}
$if(sansfont)$
\setsansfont{$sansfont$}
$if(monofont)$
\setmonofont{$monofont$}
$if(mathfont)$
\setmathfont{$mathfont$}
% use microtype if available
\IfFileExists{microtype.sty}{\usepackage{microtype}}{}
$if(geometry)$
\usepackage[$for(geometry)$$geometry$$sep$,$endfor$]{geometry}
$if(natbib)$
\usepackage{natbib}
\bibliographystyle{plainnat}
$if(biblatex)$
\usepackage{biblatex}
$if(biblio-files)$
\bibliography{$biblio-files$}
$if(listings)$
\usepackage{listings}&
\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{}
$if(highlighting-macros)$
$highlighting-macros$
$if(verbatim-in-note)$
\usepackage{fancyvrb}
$if(tables)$
\usepackage{longtable}
$if(graphics)$
\usepackage{graphicx}
% We will generate all images so they have a width \maxwidth. This means
% that they will get their normal width if they fit onto the page, but
% are scaled down if they would overflow the margins.
\makeatletter
\def\maxwidth{\ifdim\Gin@nat@width&\linewidth\linewidth
\else\Gin@nat@width\fi}
\makeatother
\let\Oldincludegraphics\includegraphics
\renewcommand{\includegraphics}[1]{\Oldincludegraphics[width=\maxwidth]{#1}}
\usepackage[setpagesize=false, % page size defined by xetex
unicode=false, % unicode breaks when used with xetex
xetex]{hyperref}
\usepackage[unicode=true]{hyperref}
\hypersetup{breaklinks=true,
bookmarks=true,
pdfauthor={$author-meta$},
pdftitle={$title-meta$},
colorlinks=true,
urlcolor=$if(urlcolor)$$urlcolor$$else$blue$endif$,
linkcolor=$if(linkcolor)$$linkcolor$$else$magenta$endif$,
pdfborder={0 0 0}}
\urlstyle{same}
% don't use monospace font for urls
$if(links-as-notes)$
% Make links footnotes instead of hotlinks:
\renewcommand{\href}[2]{#2\footnote{\url{#1}}}
$if(strikeout)$
\usepackage[normalem]{ulem}
% avoid problems with \sout in headers with hyperref:
\pdfstringdefDisableCommands{\renewcommand{\sout}{}}
\setlength{\parindent}{0pt}
%\setlength{\parskip}{6pt plus 2pt minus 1pt}
\setlength{\emergencystretch}{3em}
% prevent overfull lines
\title{\huge 在OSX平台上的XeLaTeX中文測試} % 設置標題,使用巨大字體
% 設置作者
\date{February 2013}
% 設置日期
\usepackage{titling}
\setlength{\droptitle}{-8em}
% 將標題移動至頁面的上面
\usepackage{fancyhdr}
\usepackage{lastpage}
\pagestyle{fancyplain}
$if(numbersections)$
\setcounter{secnumdepth}{5}
\setcounter{secnumdepth}{0}
$if(verbatim-in-note)$
\VerbatimFootnotes % allows verbatim text in footnotes
$if(lang)$
\usepackage{polyglossia}
\setmainlanguage{$mainlang$}
\usepackage[$lang$]{babel}
$for(header-includes)$
$header-includes$
$if(title)$
\title{$title$}
\author{$for(author)$$author$$sep$ \and $endfor$}
\date{$date$}
\begin{document}
$if(title)$
\maketitle
$for(include-before)$
$include-before$
\hypersetup{linkcolor=black}
\setcounter{tocdepth}{$toc-depth$}
\tableofcontents
$if(natbib)$
$if(biblio-files)$
$if(biblio-title)$
$if(book-class)$
\renewcommand\bibname{$biblio-title$}
\renewcommand\refname{$biblio-title$}
\bibliography{$biblio-files$}
$if(biblatex)$
\printbibliography$if(biblio-title)$[title=$biblio-title$]$endif$
$for(include-after)$
$include-after$
\end{document}
阅读(...) 评论()markdown 转html 格式java 解析类
你好,想跟你请教个问题:markdown 转html 格式java 解析类
使用方法。现在还看不懂 &源代码。。。。。有没有简单的例子 谢谢。The page is temporarily unavailable
nginx error!
The page you are looking for is temporarily unavailable.
Please try again later.
Website Administrator
Something has triggered an error on your
This is the default error page for
nginx that is distributed with
It is located
/usr/share/nginx/html/50x.html
You should customize this error page for your own
site or edit the error_page directive in
the nginx configuration file
/etc/nginx/nginx.conf.

我要回帖

更多关于 洋葱海外仓app 的文章

 

随机推荐