public CanvasData(CanvasSlim cv) { RgbCPId = cv.RgbColorProfileFileId; CmykCPId = cv.CmykColorProfileFileId; GrayscaleCPId = cv.GrayscaleColorProfileFileId; PreviewCM = cv.PreviewColorManagementEnabled; PrintCM = cv.PrintColorManagementEnabled; PTCS = cv.PreviewTargetColorSpace; WW = cv.WorkspaceWidth; WH = cv.WorkspaceHeight; L = new List <LayerData>(); for (int i = 0; i < cv.Layers.Count; i++) { L.Add(new LayerData(cv.Layers[i])); } Z = cv.Zoom; XDpi = cv.ScreenXDpi; YDpi = cv.ScreenYDpi; TDpi = cv.TargetDpi; MSE = cv.MultipleSelectionEnabled; MMT = cv.MouseMoveTimeout; DS = cv.DisableSmoothing; Tags = cv.Tags; }
public void ApplyState(CanvasSlim cv) { cv.Layers.Clear(); for (int i = 0; i < L.Count; i++) { Layer l = new Layer(); L[i].ApplyState(l); cv.Layers.Add(l); } cv.RgbColorProfileFileId = RgbCPId; cv.CmykColorProfileFileId = CmykCPId; cv.GrayscaleColorProfileFileId = GrayscaleCPId; cv.PrintColorManagementEnabled = PrintCM; cv.PreviewColorManagementEnabled = PreviewCM; cv.PreviewTargetColorSpace = PTCS; cv.WorkspaceHeight = WH; cv.WorkspaceWidth = WW; cv.MultipleSelectionEnabled = MSE; cv.MouseMoveTimeout = MMT; cv.Zoom = Z; cv.TargetDpi = TDpi; cv.ScreenXDpi = XDpi; cv.ScreenYDpi = YDpi; cv.DisableSmoothing = DS; cv.Tags.Clear(); foreach (var key in Tags.Keys) { cv.Tags[key] = Tags[key]; } }
public string UpdateByColorData(string canvasData, string colorData) { using (var canvas = new CanvasSlim { Data = canvasData }) { var serializer = new JsonVOSerializer(canvas.GetColorManagement(true)); var color = serializer.Deserialize <Color>(colorData); return(serializer.Serialize(color)); } }
public string UpdateByPathBoundedTextVObjectData(string canvasData, string vObjectData) { var pathBoundedText = new PathBoundedTextVObject { Data = vObjectData }; using (var canvas = new CanvasSlim { Data = canvasData }) { UpdateTextVObject(pathBoundedText, canvas); return(pathBoundedText.Data); } }
public string UpdateByCurvedTextVObjectData(string canvasData, string vObjectData) { var curvedText = new CurvedTextVObject { Data = vObjectData }; using (var canvas = new CanvasSlim { Data = canvasData }) { UpdateTextVObject(curvedText, canvas); return(curvedText.Data); } }
public string UpdateByAutoScaledTextVObjectData(string canvasData, string vObjectData) { var autoScaledTextVObject = new AutoScaledTextVObject { Data = vObjectData }; using (var canvas = new CanvasSlim { Data = canvasData }) { UpdateTextVObject(autoScaledTextVObject, canvas); return(autoScaledTextVObject.Data); } }
public static ICanvas ParsePsd(PsdReader psdReader, bool skipGroupPrefix = false, ICanvas canvas = null) { if (psdReader == null) { throw new ArgumentNullException("psdReader"); } if (canvas == null) { canvas = new CanvasSlim(); } else { canvas.Layers.Clear(); } canvas.WorkspaceWidth = Common.ConvertPixelsToPoints(psdReader.DpiX, psdReader.Width); canvas.WorkspaceHeight = Common.ConvertPixelsToPoints(psdReader.DpiY, psdReader.Height); var layer = new Layer { Name = "psd" }; foreach (var frame in psdReader.Frames.Reverse().Where(f => f != null)) { var vObject = CreateVObject(frame, skipGroupPrefix); if (vObject == null) { continue; } if (vObject is ImageVObject) { (vObject as ImageVObject).LoadImage(frame); } layer.VObjects.Insert(0, vObject); } canvas.Layers.Add(layer); return(canvas); }