Exemplo n.º 1
0
        ///// <summary>
        ///// 文件夹操作
        ///// </summary>
        ///// <param name="dt"></param>
        ///// <param name="printername"></param>
        ///// <param name="hMenu"></param>
        ///// <param name="strDefault"></param>
        ///// <param name="processor"></param>
        ///// <param name="dtNew"></param>
        //private void OperatorFile(DataTable dt, string printername, ref IntPtr hMenu, string strDefault, PDFProcessor processor, DataTable dtNew, TreeNode tn, int StartPageNo)
        //{
        //    dtNew = GetFileTabelByCheck(dt, tn);
        //    if (dtNew != null)
        //    {
        //        MyCommon.DeleteAndCreateEmptyDirectory(Globals.PDFTemp + "\\", false);
        //        MyCommon.DeleteAndCreateEmptyDirectory(Globals.PDFTemp + "\\", true);
        //        string mpath = MergerFileToTemp(dtNew, processor, tn.Tag.ToString(), "1");
        //        DataTable dtMNew = CreateNewTable(mpath);
        //        AddText(dtMNew.Rows[0]["filed"].ToString(), processor, dtMNew.Rows[0]["filed"].ToString(), StartPageNo);
        //        hMenu = PrintFile(dtMNew, printername, hMenu, strDefault);
        //    }
        //}
        ///// <summary>
        ///// 模板打印操作
        ///// </summary>
        ///// <param name="dt"></param>
        ///// <param name="printername"></param>
        ///// <param name="hMenu"></param>
        ///// <param name="strDefault"></param>
        ///// <param name="processor"></param>
        ///// <param name="dtNew"></param>
        ///// <returns></returns>
        //private IntPtr OperatorTem(DataTable dt, string printername, IntPtr hMenu, string strDefault, PDFProcessor processor, DataTable dtNew, int StartPageNo)
        //{
        //    dtNew.Rows.Add(new object[] { "", addPageCount(dt.Rows[0]["filed"].ToString(), processor, StartPageNo) });
        //    //dtNew.Rows.Add(new object[] { "", dt.Rows[0]["filed"].ToString() });
        //    hMenu = PrintFile(dtNew, printername, hMenu, strDefault);
        //    return hMenu;
        //}
        ///// <summary>
        ///// 合并要组卷的文件到临时目录
        ///// </summary>
        ///// <param name="dt"></param>
        ///// <returns></returns>
        //private string MergerFileToTemp(DataTable dt, PDFProcessor processor, string id)
        //{
        //    string[] filename = new string[dt.Rows.Count];
        //    for (int i = 0; i < dt.Rows.Count; i++)
        //    {
        //        filename[i] = Globals.MPDFPath + "\\" + dt.Rows[i]["filed"].ToString();
        //    }
        //    processor.MergeBatch(filename, Globals.PDFTemp + "\\" + id + ".pdf");
        //    return Globals.PDFTemp + "\\" + id + ".pdf";
        //}
        ///// <summary>
        ///// 合并要组卷的文件到临时目录 数据库查询数据
        ///// </summary>
        ///// <param name="dt"></param>
        ///// <returns></returns>
        //private string MergerFileToTemp(DataTable dt, PDFProcessor processor, string id, string flg)
        //{
        //    string[] filename = new string[dt.Rows.Count];
        //    for (int i = 0; i < dt.Rows.Count; i++)
        //    {
        //        filename[i] = Globals.ProjectPath + "\\" + dt.Rows[i]["filepath"].ToString();
        //    }
        //    processor.MergeBatch(filename, Globals.PDFTemp + "\\" + id + ".pdf");
        //    return Globals.PDFTemp + "\\" + id + ".pdf";
        //}
        ///// <summary>
        ///// 添加页码
        ///// </summary>
        ///// <param name="filepath">文件路径</param>
        ///// <param name="processor"></param>
        ///// <returns>转换后的文件路径</returns>
        //private string addPageCount(string filepath, PDFProcessor processor, int StartPageNo)
        //{
        //    if (System.IO.File.Exists(filepath))
        //    {
        //        filepath = CopyFileToTemp(filepath, processor, StartPageNo);
        //    }
        //    return filepath;
        //}
        ///// <summary>
        ///// 创建文件到临时目录
        ///// </summary>
        ///// <param name="filepath">文件路径</param>
        ///// <param name="processor"></param>
        ///// <returns>复制到临时目录的文件路径</returns>
        //private string CopyFileToTemp(string filepath, PDFProcessor processor, int StartPageNo)
        //{
        //    MyCommon.DeleteAndCreateEmptyDirectory(Globals.PDFTemp + "\\", false);
        //    MyCommon.DeleteAndCreateEmptyDirectory(Globals.PDFTemp + "\\", true);
        //    if (System.IO.File.Exists(filepath))
        //    {
        //        string OutFileName = Globals.PDFTemp + "\\" + filepath.Substring(filepath.LastIndexOf("\\") + 1);
        //        System.IO.File.Copy(filepath, OutFileName, true);
        //        return AddText(filepath, processor, OutFileName, StartPageNo);
        //    }
        //    else
        //    {
        //        return null;
        //    }
        //}
        ///// <summary>
        ///// 添加PDF文本
        ///// </summary>
        ///// <param name="filepath"></param>
        ///// <param name="processor"></param>
        ///// <param name="OutFileName"></param>
        ///// <param name="StartPageNo">起始页码</param>
        ///// <returns></returns>
        //private string AddText(string filepath, PDFProcessor processor, string OutFileName, int StartPageNo)
        //{
        //    if (Globals.IsPageNo.Equals("1"))
        //    {
        //        if (!System.IO.Directory.Exists(Globals.PDFTemp + "\\printTemp" + "\\"))
        //            MyCommon.DeleteAndCreateEmptyDirectory(Globals.PDFTemp + "\\printTemp" + "\\");

        //        string tempPDF = Globals.PDFTemp + "\\printTemp" + "\\temp.pdf";
        //        System.IO.File.Copy(filepath, tempPDF, true);

        //        int count = processor.GetPageCount(filepath, "");
        //        uint cor = (uint)System.Drawing.ColorTranslator.ToOle(Color.FromArgb(0, 0, 0));
        //        double pageW = 0;
        //        double pageH = 0;
        //        if (StartPageNo == 0)
        //        {
        //            for (int i = 0; i < count; i++)
        //            {
        //                processor.GetPageSize(OutFileName, i, out pageW, out pageH);
        //                processor.AddPDFText(OutFileName, tempPDF, i, i, pageW - Globals.PageNoLocationX, pageH - Globals.PageNoLocationY, "", Globals.PageNoLocationSize, prcDefaultFont.PRC_DEFFONT_HELVETICA, cor);
        //            }
        //        }
        //        else
        //        {
        //            for (int i = 0; i < count; i++)
        //            {
        //                processor.GetPageSize(OutFileName, i, out pageW, out pageH);
        //                processor.AddPDFText(OutFileName, tempPDF, i, i, pageW - Globals.PageNoLocationX, pageH - Globals.PageNoLocationY, "", Globals.PageNoLocationSize, prcDefaultFont.PRC_DEFFONT_HELVETICA, cor);
        //            }
        //        }
        //    }
        //    return OutFileName;
        //}
        /// <summary>
        /// 根据所选文件夹和模板生成组卷文件列表
        /// </summary>
        /// <param name="dt"></param>
        /// <returns></returns>
        private DataTable GetFileTabelByCheck(DataTable dt, TreeNode node)
        {
            string Sqlwhere = GetSql(dt, node.Tag.ToString());

            CBLL.FinalArchive cbll = new ERM.CBLL.FinalArchive();
            DataSet           dd   = cbll.GetgFinal_archivePDFByCheck(Sqlwhere, Globals.ProjectNO);

            if (dd != null && dd.Tables[0].Rows.Count > 0)
            {
                return(dd.Tables[0]);
            }
            return(null);
        }
Exemplo n.º 2
0
        /// <summary>
        /// 取开始页数
        /// </summary>
        /// <param name="dt"></param>
        /// <returns></returns>
        private int GetStartPageNo(DataTable dt, TreeNode node)
        {
            CBLL.FinalArchive cbll = new ERM.CBLL.FinalArchive();;
            int    count           = 0;
            string Sqlwhere        = null;

            if (node.ImageIndex == 1)
            {
                Sqlwhere = GetSql(dt, node.Tag.ToString());
                count    = cbll.GetgFinal_archivePDFByCheckStartPageNo(Sqlwhere, Globals.ProjectNO, node.Tag.ToString());
            }
            if (node.ImageIndex == 2)
            {
                Sqlwhere = GetSql(dt, node.Parent.Tag.ToString());
                count    = cbll.GetgFinal_archivePDFByCheckStartPageNo(Sqlwhere, Globals.ProjectNO, node.Parent.Tag.ToString());
            }
            return(count);
        }