C#巧用Excel模版变成把Table打印出来

转载:http://blog.csdn.net/gwblue/article/details/38865525

将一个做好的Excel模版,通过程序填上数据然后打印出来这个需求有两种方法一种是通过代码打开Excel模版然后填入数据然后再打印。

第二种方法就是我将要介绍的

1、将Excel设置好格式另存为HTML页将Excel转化为HTML的Table

2、将HTML用记事本打开把这个HTML页将<style></style>和<table></table>标签中的内容粘贴出来。

3、在程序中写入打印代码。

[java] view plaincopy

using System;  
using System.Collections.Generic;  
 
using System.Web;  
using System.Web.UI;  
using System.Web.UI.WebControls;  
using System.Text;  
using System.IO;  
using BLL;  
using Model;  
using System.Data;  
 
public partial class WebUI_Order_OutExcel : System.Web.UI.Page  
{  
    BT_XDMgr XDMgr = new BT_XDMgr();  
    DataTable dtOrderMainInfo = new DataTable();  
    DataTable dtOrderCongInfo = new DataTable();  
 protected void Page_Load(object sender, EventArgs e)  
    {  
 
 if (Request.QueryString["OrderID"] != null && Request.QueryString["CKFromID"] != null)  
                {  
 int OrderID =Convert.ToInt32( Request.QueryString["OrderID"].ToString().Trim());  
 int CKFromID = Convert.ToInt32(Request.QueryString["CKFromID"].ToString().Trim());  
                    string strWhere = " and T_DLS_Order_CKFrom.OrderID=" + OrderID;  
                    dtOrderMainInfo = XDMgr.CKList(strWhere);  
                    dtOrderCongInfo = XDMgr.QueryCKCongInfobyCKFromID(CKFromID);  
 
                    string strText = getExcelContent(dtOrderMainInfo,dtOrderCongInfo);  
                    ExportExcel(this, "出库单表", strText);  
                }  
 
    }  
 
 
 
 
 
 /// <summary>  
 /// 导出Excel  
 /// </summary>  
 /// <param name="page">操作页面</param>  
 /// <param name="fileName">导出的文件名称</param>  
 /// <param name="text">要导出的内容</param>  
 public void ExportExcel(Page page, string fileName, string text)  
    {  
        page.EnableViewState = false;  
 try  
        {  
            page.Response.ClearContent();  
            page.Response.Buffer = true;  
            page.Response.Charset = "GB2312";//设置字符集,解决中文乱码问题  
            page.Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");  
            page.Response.Write("<meta http-equiv=Content-Type content=\"text/html;charset=GB2312\">");//解决乱码问题  
 
 ////解决HTTP头中文乱码问题  
 //string strExcelText = fileName;//Excel显示的内容  
 //string strEncode = System.Web.HttpUtility.UrlEncode(strExcelText, System.Text.Encoding.UTF8);//进行编码的格式,用gb2312出错  
 //page.Response.AddHeader("content-disposition", "attachment;filename=\"" + strEncode + ".xls\"");//对保存标题进行编码  
 //page.Response.ContentType = "application/excel";//设置输出格式  
 //page.Response.Write(getStyle());  
            StringWriter sw = new StringWriter();  
            HtmlTextWriter htw = new HtmlTextWriter(sw);  
            htw.WriteLine(text);//将数据输出  
            page.Response.Write(sw.ToString());  
 //page.Response.Write("</body></html>");  
            page.Response.Flush();  
            page.Response.End();  
        }  
 catch  
        {  
 return;  
        }  
 finally  
        {  
 //恢复原来控件内容  
            page.EnableViewState = true;  
        }  
    }  
 
 
 //订单信息  
 private string getExcelContent(DataTable dtMainInfo,DataTable dtCongInfo)  
    {  
        StringBuilder strExcel = new StringBuilder();  
 //Table的样式  
        strExcel.Append(@"<html><head><style>");  
        strExcel.Append(" table{mso-displayed-decimal-separator:'\\.\';mso-displayed-thousand-separator:'\\,\';}");  
        strExcel.Append(" .font56428{color:windowtext;font-size:9.0pt; font-weight:400;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;}");  
        strExcel.Append(" .xl156428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:black;font-size:11.0pt;font-weight:400;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:general;vertical-align:middle;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl676428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:10.0pt;font-weight:700;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:center;vertical-align:middle;border:.5pt solid windowtext;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl686428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:12.0pt;font-weight:400;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:general;vertical-align:bottom;border:.5pt solid windowtext;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl696428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:12.0pt;font-weight:700;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:general;vertical-align:middle;border:.5pt solid windowtext;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl706428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:black;font-size:10.0pt;font-weight:700;font-style:normal;text-decoration:none;font-family:'Times New Roman', serif;mso-font-charset:0;mso-number-format:General;text-align:center;vertical-align:bottom;border:.5pt solid windowtext;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl716428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:12.0pt;font-weight:400;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:general;vertical-align:middle;border:.5pt solid windowtext;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl726428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:black;font-size:14.0pt;font-weight:700;font-style:normal;text-decoration:none;font-family:'Times New Roman', serif;mso-font-charset:0;mso-number-format:General;text-align:general;vertical-align:bottom;border:.5pt solid windowtext;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl736428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:14.0pt;font-weight:700;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:center;vertical-align:middle;border:.5pt solid windowtext;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl746428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:14.0pt;font-weight:700;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:right;vertical-align:middle;border:.5pt solid windowtext;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl756428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:14.0pt;font-weight:700;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:center;vertical-align:middle;border:.5pt solid windowtext;background:white;mso-pattern:black none;white-space:nowrap;}");  
        strExcel.Append(" .xl766428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:14.0pt;font-weight:400;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:center;vertical-align:middle;border:.5pt solid windowtext;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl776428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:18.0pt;font-weight:700;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:center;vertical-align:bottom;border:.5pt solid windowtext;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl786428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:black;font-size:14.0pt;font-weight:700;font-style:normal;text-decoration:none;font-family:'Times New Roman', serif;mso-font-charset:0;mso-number-format:General;text-align:right;vertical-align:middle;border:.5pt solid windowtext;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl796428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:14.0pt;font-weight:700;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:general;vertical-align:middle;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl806428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:14.0pt;font-weight:400;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:general;vertical-align:middle;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl816428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:black;font-size:11.0pt;font-weight:400;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:center;vertical-align:middle;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl826428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:14.0pt;font-weight:400;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:left;vertical-align:bottom;border:.5pt solid windowtext;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl836428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:14.0pt;font-weight:700;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:left;vertical-align:middle;border:.5pt solid windowtext;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl846428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:14.0pt;font-weight:700;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:left;vertical-align:middle;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl856428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:black;font-size:11.0pt;font-weight:400;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:left;vertical-align:middle;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append(" .xl866428{padding-top:1px;padding-right:1px;padding-left:1px;mso-ignore:padding;color:windowtext;font-size:12.0pt;font-weight:400;font-style:normal;text-decoration:none;font-family:宋体;mso-generic-font-family:auto;mso-font-charset:134;mso-number-format:General;text-align:left;vertical-align:middle;border:.5pt solid windowtext;mso-background-source:auto;mso-pattern:auto;white-space:nowrap;}");  
        strExcel.Append("</style>");  
 //Javascript的打印代码  
        strExcel.Append("<script type='text/javascript'>");  
         strExcel.Append("function doPrint() {");  
         strExcel.Append("var htmlcode=window.document.body.innerHTML;");  
         strExcel.Append("var sprnstr='<!--startprint-->';");  
         strExcel.Append("var eprnstr= '<!--endprint-->';");  
         strExcel.Append("var prnhtml=htmlcode.substr(htmlcode.indexOf(sprnstr)+17);");  
         strExcel.Append("prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));");  
         strExcel.Append("window.document.body.innerHTML=prnhtml;");  
         strExcel.Append("window.print();");  
         strExcel.Append("window.document.body.innerHTML=htmlcode;");    
         strExcel.Append("}");  
         strExcel.Append("</script>");  
         strExcel.Append("</head><body ><input id='Button1' type='button' value='打印'  onclick='doPrint()' target='_self'/>");  
       strExcel.Append("<!--startprint--> <center>");  
       strExcel.Append("<table border=0 cellpadding=0 cellspacing=0 width=795 style='border-collapse:");  
          strExcel.Append("collapse;table-layout:fixed;width:598pt'>");  
          strExcel.Append("<col class=xl856428 width=170 style='mso-width-source:userset;mso-width-alt:");  
          strExcel.Append("5440;width:128pt'>");  
         strExcel.Append(" <col width=190 style='mso-width-source:userset;mso-width-alt:6080;width:143pt'>");  
          strExcel.Append("<col width=93 style='mso-width-source:userset;mso-width-alt:2976;width:70pt'>");  
          strExcel.Append("<col width=89 style='mso-width-source:userset;mso-width-alt:2848;width:67pt'>");  
          strExcel.Append("<col width=131 style='mso-width-source:userset;mso-width-alt:4192;width:98pt'>");  
          strExcel.Append("<col width=122 style='mso-width-source:userset;mso-width-alt:3904;width:92pt'>");  
          strExcel.Append("<tr height=30 style='height:22.5pt'>");  
           strExcel.Append("<td colspan=6 height=30 class=xl776428 width=795 style='height:22.5pt;");  
           strExcel.Append("width:598pt'>出库单</td>");  
           strExcel.Append("</tr>");  
           strExcel.Append("<tr height=22 style='mso-height-source:userset;height:16.5pt'>");  
          strExcel.Append("<td height=22 class=xl826428 style='height:16.5pt;border-top:none'> </td>");  
          strExcel.Append("<td class=xl726428 style='border-top:none;border-left:none'> </td>");  
          strExcel.Append("<td class=xl726428 style='border-top:none;border-left:none'> </td>");  
          strExcel.Append("<td class=xl786428 style='border-top:none;border-left:none'>NO.</td>");  
          strExcel.Append("<td colspan=2 class=xl706428 style='border-left:none'> "+dtMainInfo.Rows[0]["OrderCode"].ToString().Trim()+"</td>");  
          strExcel.Append("</tr>");  
        strExcel.Append("<tr height=25 style='height:22pt'>");  
        strExcel.Append("<td height=25 class=xl836428 style='height:22pt;border-top:none'>购货单位</td>");  
         strExcel.Append("<td class=xl676428 style='border-top:none;border-left:none'>"+dtMainInfo.Rows[0]["Company"].ToString().Trim()+"</td>");  
         strExcel.Append("<td class=xl736428 style='border-top:none;border-left:none'>制单日期</td>");  
         strExcel.Append("<td class=xl686428 style='border-top:none;border-left:none; vertical-align:middle;'>" + DateTime.Now.ToShortDateString() + "</td>");  
         strExcel.Append("<td class=xl736428 style='border-top:none;border-left:none'>出库日期</td>");  
         strExcel.Append("<td class=xl696428 style='border-top:none;border-left:none'> </td>");  
         strExcel.Append("</tr>");  
        strExcel.Append("  <tr height=25 style='height:18.75pt'>");  
       strExcel.Append(" <td height=25 class=xl736428 style='height:18.75pt;border-top:none'>物料编码</td>");  
       strExcel.Append(" <td class=xl736428 style='border-top:none;border-left:none'>物料描述</td>");  
       strExcel.Append(" <td class=xl736428 style='border-top:none;border-left:none'>数量</td>");  
       strExcel.Append(" <td class=xl736428 style='border-top:none;border-left:none'>单价</td>");  
       strExcel.Append(" <td class=xl736428 style='border-top:none;border-left:none'>金额</td>");  
       strExcel.Append(" <td class=xl736428 style='border-top:none;border-left:none'>小计</td>");  
       strExcel.Append(" </tr>");  
 if (dtCongInfo.Rows.Count > 0)  
                {  
 for (int i = 0; i < dtCongInfo.Rows.Count; i++)  
                    {  
 
                        strExcel.Append("<tr height=30 style='mso-height-source:userset;height:22.5pt;text-align:center;'>");  
                        strExcel.Append("<td height=30 class=xl866428 style='height:22.5pt;border-top:none;text-align:center;'>" + dtCongInfo.Rows[i]["SJWLBM"].ToString().Trim() + "</td>");  
              strExcel.Append("<td class=xl716428 style='border-top:none;border-left:none'>" + dtCongInfo.Rows[i]["LJMC"].ToString().Trim() + "</td>");  
              strExcel.Append("<td class=xl716428 style='border-top:none;border-left:none'>" + ((dtCongInfo.Rows[i]["SFNumber"] == null) ? "0" : dtCongInfo.Rows[i]["SFNumber"].ToString().Trim()) + "</td>");  
              strExcel.Append("<td class=xl716428 style='border-top:none;border-left:none'>" + ((dtCongInfo.Rows[i]["LJDJ"] == null) ? "0" : dtCongInfo.Rows[i]["LJDJ"].ToString().Trim()) + "</td>");  
              strExcel.Append("<td class=xl716428 style='border-top:none;border-left:none'>" + ((dtCongInfo.Rows[i]["Money"] == null) ? "0" : dtCongInfo.Rows[i]["Money"].ToString().Trim()) + "</td>");  
              strExcel.Append("<td class=xl716428 style='border-top:none;border-left:none'> </td>");  
              strExcel.Append("</tr>");  
                    }  
                }  
        strExcel.Append("<tr height=25 style='height:18.75pt'>");  
         strExcel.Append(" <td colspan=5 height=25 class=xl746428 style='height:18.75pt'>金额合计:</td>");  
         strExcel.Append("<td class=xl716428 style='border-top:none;border-left:none'>" + ((dtMainInfo.Rows[0]["Money"] == null) ? "0" : dtMainInfo.Rows[0]["Money"].ToString().Trim()) + "</td>");  
          strExcel.Append("</tr>");  
          strExcel.Append("<tr class=xl816428 height=25 style='height:18.75pt'>");  
       strExcel.Append("<td height=25 class=xl736428 style='height:18.75pt;border-top:none'>合 同 号</td>");  
       strExcel.Append("<td class=xl766428 style='border-top:none;border-left:none'> </td>");  
       strExcel.Append("<td class=xl736428 style='border-top:none;border-left:none'>移库类型</td>");  
       strExcel.Append("<td class=xl766428 style='border-top:none;border-left:none'> </td>");  
       strExcel.Append("<td class=xl756428 style='border-top:none;border-left:none'>费用化凭证号</td>");  
       strExcel.Append("<td class=xl766428 style='border-top:none;border-left:none'>" + ((dtMainInfo.Rows[0]["FYHPZH"] == null) ? "0" : dtMainInfo.Rows[0]["FYHPZH"].ToString().Trim()) + "</td>");  
      strExcel.Append("</tr>");  
   strExcel.Append("<tr class=xl816428 height=25 style='height:18.75pt'>");  
    strExcel.Append("<td height=25 class=xl836428 style='height:18.75pt;border-top:none'>发货方式</td>");  
    strExcel.Append("<td class=xl756428 style='border-top:none;border-left:none'>转库凭证号</td>");  
    strExcel.Append("<td class=xl766428 style='border-top:none;border-left:none'>" + ((dtMainInfo.Rows[0]["ZKPZH"] == null) ? "0" : dtMainInfo.Rows[0]["ZKPZH"].ToString().Trim()) + "</td>");  
    strExcel.Append("<td class=xl736428 style='border-top:none;border-left:none'>备注</td>");  
    strExcel.Append("<td colspan=2 class=xl766428 style='border-left:none'> </td>");  
    strExcel.Append("</tr>");  
   strExcel.Append("<tr height=25 style='height:18.75pt'>");  
   strExcel.Append("<td height=25 class=xl846428 style='height:18.75pt'>制单:</td>");  
   strExcel.Append("<td class=xl796428>售后审核:</td>");  
   strExcel.Append("<td class=xl796428 colspan=2>储运审核:</td>");  
   strExcel.Append("<td class=xl796428>库管员:</td>");  
   strExcel.Append("<td class=xl806428></td>");  
   strExcel.Append("</tr>");  
         strExcel.Append("</table></center><!--endprint-->");  
         strExcel.Append("</body></html>");  
 
 return strExcel.ToString();  
    }  
 
 
}  

4、打印出来的效果。

总结:

当我们遇到一个问题的时候应该从不同的角度去看待他,这样你就会有不同的解决方法选择一种最快,最容易,自己最擅长的方法去做这样就能提高工作效率。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏儿童编程

一张思维导图看懂《周易》基础要点——参考《易经杂说》

本图对《易经》的基础部分做了归纳总结。主要参考南怀瑾先生的《易经杂说》及不同版本《周易》。

83540
来自专栏儿童编程

什么样的人生才是有意义的人生——没有标准的标准答案

【导读】其实我们可以跳出这个小圈圈去更加科客观地看一下这个世界。在夜晚的时候我们仰望天空,浩瀚的宇宙中整个地球只是一粒浮尘,何况地球上一个小小的人类?在漫长的历...

1.8K50
来自专栏儿童编程

一张图理清《梅花易数》梗概

学《易经》的目的不一定是为了卜卦,但是了解卜卦绝对能够让你更好地了解易学。今天用一张思维导图对《梅花易数》的主要内容进行概括,希望能够给学友们提供帮助。

32540
来自专栏儿童编程

《动物魔法学校》儿童学编程Scratch之“外观”部分

导读:本文通过一个案例《动物魔法学校》来学习Scratch语言的“外观”部分。之后通过一系列其他功能的综合运用对作品功能进行了扩展。

19440
来自专栏儿童编程

儿童创造力教育与编程教育的碰撞——MIT雷斯尼克教授最新理论梗概

儿童编程教育已经在我国各一线二线城市疯狂出现,颇有“烂大街”的趋势。我们不禁要问很多很多问题:

22670
来自专栏儿童编程

天干地支五行八卦的对应关系

19890
来自专栏儿童编程

声音功能让儿童编程更有创造性

导读:Scratch中声音功能非常强大,除了常规的音效,你甚至可以模拟各种乐器的各个发音、设置节拍、休止……如果你愿意,甚至可以用它创作一个交响乐。我们可以引导...

13940
来自专栏儿童编程

儿童编程Scratch之“画笔”基础功能学习总结

Scratch中“画笔”功能能够让使用者模拟画笔在舞台上创作,合理运用能够给作品带来极大的趣味性。

65220
来自专栏儿童编程

一张导图梳理欧洲简史梗概

3.1K30
来自专栏儿童编程

我不是算命先生,却对占卜有了疑惑——如何论证“占卜前提”的正确与否

事出有因,我对《周易》感兴趣了很多年。只是觉得特别有趣,断断续续学习了一些皮毛。这几天又偶然接触到了《梅花易数》,觉得很是精彩,将五行八卦天干地支都串联了起来。...

15710

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励