using DocumentFormat.OpenXml.Drawing;
using HTEXLib;
using HTEXLib.Builders;
using HTEXLib.Controller;
using HTEXLib.Helpers.ShapeHelpers;
using HTEXLib.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.NetworkInformation;
using System.Net.Sockets;
using System.Text;
using System.Text.Json;
using System.Text.RegularExpressions;
namespace HTEXTest
{
class Program
{
///
/// 获取本地机器网卡的所有IP地址
///
///
public static List getIPAddress()
{
return NetworkInterface.GetAllNetworkInterfaces()
.SelectMany(i => i.GetIPProperties().UnicastAddresses)
.Select(a => a.Address)
//AddressFamily.InterNetwork 过滤掉IPV6 //过滤127.0.0.1 !IPAddress.IsLoopback(a)
.Where(a => a.AddressFamily == AddressFamily.InterNetwork)
.Select(a => a.ToString()).ToList();
}
public static List getIPAddressE()
{
return NetworkInterface.GetAllNetworkInterfaces()
.SelectMany(i => i.GetIPProperties().UnicastAddresses)
.Select(a => a.Address)
//AddressFamily.InterNetwork 过滤掉IPV6 //过滤127.0.0.1 !IPAddress.IsLoopback(a)
//.Where(a => a.AddressFamily == AddressFamily.InterNetwork)
.ToList();
}
static void Main(string[] args)
{
TimeSpan ts = DateTimeOffset.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
var tim= Convert.ToInt64(ts.TotalMilliseconds).ToString();
string appid = "4E28C6F06EDA495491FA7943C143E534";
string appkey = "3B83808EE00E42DFBBEB7502331CF1D8";
string key = appid + appkey + tim;
var sha = ShaHashHelper.GetSHA1(key).ToUpper() ;
List a = getIPAddressE();
foreach (var ae in a) {
Console.WriteLine(ae);
}
string jsonStr = "{name:计算数据大表名称,num:15,sheet:[{sheetName:不同时期,nums:[23,52,86],special:[准业务,磨合期,老业主,稳定期]},{sheetName:50分制}]}";
string jsonStro = jsonStr.Replace(",", ",");
object res = JsonHelper.ConvertJsonStr(jsonStro);
string s = res.ToString();
var m = Regex.Match(s, "\"[0-9]{1,}\"");
while (m.Success)
{
string testInfo = m.Value;
string newStr = testInfo.Replace("\"", "");
s = s.Replace(testInfo, newStr);
m = m.NextMatch();
}
JsonElement jsonElement= JsonSerializer.Deserialize(s);
//string path = "F:\\PRD-20191015001-template-math.pptx";
string path = "F:\\donghua.pptx";
// string path = "F:\\PRD-20191015001.pptx";
var htexBuilder = new HtexBuilder();
var pptSlides = htexBuilder.GetPPTSlides(path);
double width = htexBuilder.getSlideWidth();
double height = htexBuilder.getSlideHeight();
int slideCounter = 1;
Htex htex= htexBuilder.Htex;
htex.page = pptSlides.Count;
htex.size = new HtexSize { width = width, height = height };
List slides = new List();
foreach (PPTSlide pptSlide in pptSlides)
{
var htexController = new HtexController( pptSlide, slideCounter, pptSlides.Count)
{
SlideWidth = width,
SlideHeight = height
};
Slide slide= htexController.GenerateHtex();
slides.Add(slide);
slideCounter++;
}
htexBuilder.presentationDocument.Close();
GC.Collect();
}
}
}