protected internal Tuple <string, MemoryStream> CnabsFile(string fileName, MemoryStream memoryStream, DownloadFileAuthorityType authority) { if (authority == DownloadFileAuthorityType.AllForbidden) { //TODO: throw new NotImplementedException("暂不支持DownloadFileAuthorityType.AllForbidden"); } if (fileName.EndsWith("doc", StringComparison.CurrentCultureIgnoreCase) || fileName.EndsWith("docx", StringComparison.CurrentCultureIgnoreCase)) { if (authority == DownloadFileAuthorityType.Word2PdfWithWatermark) { var waterMark = new WaterMarkMultiText() { BigText = CommUtils.GetWatermarkTitle(), SmallText = "[" + CurrentUserName + "]下载于" + DateTime.Now.ToString() }; var pdfUtil = new PdfUtils(waterMark); pdfUtil.PdfPermission = PdfUtils.PdfPermissionEnum.Printing; var ms = pdfUtil.WordToPdfMemoryStream(memoryStream); ms.Seek(0, SeekOrigin.Begin); var pdfFileName = FileUtils.ConvertFileExtension(fileName, FileType.PDF); return(Tuple.Create(pdfFileName, ms)); } else if (authority == DownloadFileAuthorityType.Word2Pdf) { var pdfUtil = new PdfUtils(); var ms = pdfUtil.WordToPdfMemoryStream(memoryStream); ms.Seek(0, SeekOrigin.Begin); var pdfFileName = FileUtils.ConvertFileExtension(fileName, FileType.PDF); return(Tuple.Create(pdfFileName, ms)); } } return(Tuple.Create(fileName, memoryStream)); }